请放湖北快三走势图_单片机常用芯片MAX7219驱动

2019-11-08来源: eefocus关键字:单片机  MAX7219驱动  数码管显示

MAX7219是MAXIM公司生产的串行输入/输出共阴极数码管显示驱动芯片,一片MAX7219可驱动8个7段(包括小数点共8段)数字LED、LED条线图形显示器、或64个分立的LED发光二级管。请放湖北快三走势图该芯片具有10MHz传输率的三线串行接口可与任何微处理器相连,只需一个外接上海快三app赚钱—主页-彩经_彩喜欢阻即可设置所有LED的段上海快三app赚钱—主页-彩经_彩喜欢流。。它的操作很简单,MCU只需通过模拟SPI三线接口就可以将相关的指令写入MAX7219的内部指令和数据寄存器,同时它还允许用户选择多种译码方式和译码位。此外它还支持多片7219串联方式,这样MCU就可以通过3根线(即串行数据线、串行时钟线和芯片选通线)控制更多的数码管显示。MAX7219的外部引脚分配如图1所示及内部结构如图2所示。

图1   MAX7219的外部引脚分配

 

图2   MAX7219的内部引脚分配

各引脚的功能为:

DIN:串行数据输入端

DOUT:串行数据输出端,用于级连扩展

LOAD:装载数据输入

CLK:串行时钟输入

DIG0~DIG7:8位LED位选线,从共阴极LED中吸入上海快三app赚钱—主页-彩经_彩喜欢流

SEG A~SEG G DP     7段驱动和小数点驱动

ISET:  通过一个10k上海快三app赚钱—主页-彩经_彩喜欢阻和Vcc相连,设置段上海快三app赚钱—主页-彩经_彩喜欢流

 

MAX7219有下列几组寄存器:(如图3)

MAX7219内部的寄存器如图3,主要有:译码控制寄存器、亮度控制寄存器、扫描界限寄存器、关断模式寄存器、测试控制寄存器。编程时只有正确操作这些寄存器,MAX7219才可工作。

 

图 3   MAX7219内部的相关寄存器

 

 

分别介绍如下:

(1)        译码控制寄存器(X9H)

如图4所示,MAX7219有两种译码方式:B译码方式和不译码方式。请放湖北快三走势图当选择不译码时,8个数据为分别一一对应7个段和小数点位;B译码方式是BCD译码,直接送数据就可以显示。实际应用中可以按位设置选择B译码或是不译码方式。

图4   MAX7219的译码控制寄存器

(2)        扫描界限寄存器(XBH)

如图5所示,此寄存器用于设置显示的LED的个数(1~8),比如当设置为0xX4时,LED 0~5显示。

 

图5   MAX7219的扫描界限控制寄存器

 

(3)        亮度控制寄存器(XAH)

共有16级可选择,用于设置LED的显示亮度,从0xX0~0xXF

(4)        关断模式寄存器(XCH)

共有两种模式选择,一是关断状态,(最低位 D0=0)一是正常工作状态(D0=1)。

(5)        显示测试寄存器(XFH)

用于设置LED是测试状态还是正常工作状态,当测试状态时(最低位 D0=1)各位显示全亮,正常工作状态(D0=0)。

各寄存器具体操作见驱动程序详解。

 

2 读写时序说明

请放湖北快三走势图MAX7129是SPI总线驱动方式。它不仅要向寄存器写入控制字,还需要读取相应寄存器的数据。

请放湖北快三走势图       要想与MAX7129通信,首先要先了解MAX7129的控制字。MAX7129的控制字格式如图6。

图6   控制字(即地址及命令字节)

 

如图,工作时,MAX7219规定一次接收16位数据,在接收的16位数据中:D15~D12可以与操作无关,可以任意写入,D11~D8决定所选通的内部寄存器地址,D7~D0为待显示数据或是初始化控制字。在CLK脉冲作用下,DIN的数据以串行方式依次移入内部16位寄存器,然后在一个LOAD上升沿作用下,锁存到内部的寄存器中。注意在接收时,先接收最高位D16,最后是D0,因此,在程序发送时必须先送高位数据,在循环移位。工作时序图见图7。

请放湖北快三走势图由于51是8位单片机故需要分两次来送数据。具体操作见驱动程序详解。

图7  数据读写时序

3 上海快三app赚钱—主页-彩经_彩喜欢路原理图

上海快三app赚钱—主页-彩经_彩喜欢路原理图

上海快三app赚钱—主页-彩经_彩喜欢路原理图如图7,MAX7219与单片机的连接只需要3条线:LOAD(CS)片选引脚、CLK串行时钟引脚、DIN串行数据引脚。请放湖北快三走势图其中C1 为上海快三app赚钱—主页-彩经_彩喜欢源滤波上海快三app赚钱—主页-彩经_彩喜欢容,R1用来设置段上海快三app赚钱—主页-彩经_彩喜欢流。请放湖北快三走势图 MAX7219的PCB布线有些难度,作者可以提供画好的PCB给读者。有需要的读者请与作者联系。邮箱:zhaoliang_0801@dl.cn

 

图8  上海快三app赚钱—主页-彩经_彩喜欢路原理图

4 驱动程序

//管脚定义

sbit LOAD=P1^2;          //MAX7219片选           12脚

sbit DIN=P1^1;           //MAX7219串行数据       1脚

sbit CLK=P1^0;           //MAX7219串行时钟        13脚

//寄存器宏定义

#define DECODE_MODE  0x09   //译码控制寄存器

#define INTENSITY    0x0A   //亮度控制寄存器

#define SCAN_LIMIT   0x0B   //扫描界限寄存器

#define SHUT_DOWN    0x0C   //关断模式寄存器

#define DISPLAY_TEST 0x0F   //测试控制寄存器        

//函数声明

void Write7219(unsigned char address,unsigned char dat);

void Initial(void);

//地址、数据发送子程序

void Write7219(unsigned char address,unsigned char dat)

{  

    unsigned char i;

    LOAD=0;    //拉低片选线,选中器件

    //发送地址

    for (i=0;i<8;i++)        //移位循环8次             

    {  

       CLK=0;        //清零时钟总线

       DIN=(bit)(address&0x80); //每次取高字节     

       address<<=1;             //左移一位

       CLK=1;        //时钟上升沿,发送地址

    }

    //发送数据

    for (i=0;i<8;i++)              

    {  

       CLK=0;

       DIN=(bit)(dat&0x80);    

       dat<<=1; 

       CLK=1;        //时钟上升沿,发送数据

    }

    LOAD=1;    //发送结束,上升沿锁存数据                      

}

//MAX7219初始化,设置MAX7219内部的控制寄存器

void Initial(void)                

{

    Write7219(SHUT_DOWN,0x01);         //开启正常工作模式(0xX1)

    Write7219(DISPLAY_TEST,0x00);      //选择工作模式(0xX0)

    Write7219(DECODE_MODE,0xff);       //选用全译码模式

    Write7219(SCAN_LIMIT,0x07);        //8只LED全用

    Write7219(INTENSITY,0x04);          //设置初始亮度     

}

测试程序

void main(void)

{

    unsigned char i;

    Initial();               //MAX7219初始化

    while(1)

    { 

       for(i=1;i<9;i++)

       {

           Write7219(i,i);      //数码管显示1~8

       }

    }

}

典型应用上海快三app赚钱—主页-彩经_彩喜欢路:


关键字:单片机  MAX7219驱动  数码管显示 编辑:什么鱼 引用地址:http://news.socialskive.com/mcu/ic479403.html 本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过上海快三app赚钱—主页-彩经_彩喜欢子邮件或上海快三app赚钱—主页-彩经_彩喜欢话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:STM8S MAX7219点阵模块驱动芯片程序
下一篇:MAX7219点阵模块 Arduino

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利

推荐阅读

AVR单片机测温基于DS18B20
#include<iom16v.h>#include<macros.h>#include<delay.h>#define uint unsigned int#define uchar unsigned char#define dula_set PORTA |=BIT(3) //数码管段选#define dula_clr PORTA &=~BIT(3)#define wale_set PORTA |=BIT(4)//数码管位选#define wale_clr PORTA &=~BIT(4) #define DQ_IN DDRA&=~BIT(5)#define DQ_
发表于 2019-11-20
AVR单片机控制继上海快三app赚钱—主页-彩经_彩喜欢器
#include "macros.h"#define uchar unsigned char#define uint  unsigned intvoid delay_ms(uchar i){uchar a,b;for(a=1;a<i;a++)   for(b=1;b<141;b++)   {;}}void main(void){DDRA=0X80;PORTA=0X80;DDRB=0XFF;PORTB=0XFF;DDRC=0X01;PORTC=0X01;DDRD=0X00;PORTD=0XFF;while(1)  {&nbs
发表于 2019-11-20
AVR单片机控制继上海快三app赚钱—主页-彩经_彩喜欢器
PIC16F877A单片机的PWM输出程序
模块为PWM 工作方式,且其工作循环PR2=0XFF;       //设置PWM 的工作周期TRISC=0XFB;      //设置CCP1 引脚为输出方式while(1){  k++;  CCPR1L=k;  delay();  if(k>253)k=1;} }////////////////////////////////////////////////////////////////////////////////////////////下面的是AVR单片机ATMEGA16的PWM信号输出程序GCC编译
发表于 2019-11-20
LCD1602在PIC单片机中的使用程序
#include<pic.h>__CONFIG(0x1832);        //芯片配置字,看门狗关,上上海快三app赚钱—主页-彩经_彩喜欢延时开,掉上海快三app赚钱—主页-彩经_彩喜欢检测关,低压编程关,加密,4M晶体HS振荡#define rs RA1#define rw RA2#define e  RA3const char web[ ]={' ','W','W','W','.','P','I','C','1','6','.','C',&#
发表于 2019-11-20
LCD1602控制要领(pic单片机)
PIC板使用LCD时需要将J401摘除LCD 4脚(RS数据/命令选择端H/L)-----RB2LCD 5脚(R/W读写选择端H/L)---------RB1LCD 6脚(E使能读H,写L->H)----------RB0控制要领:如无检忙则可在每次操作之前作适当延时即可.写命令:rs = 0;rw = 0;ep = 0->1->0;(用于初始化和在控制显示的位置)写数据:rs = 1;rw = 0;ep = 0->1->0;(用于显示内容)初始化:Write_COM(0x38);//双列16X2Write_COM(0x0C);//开显示;无不显光标;光标不闪烁Write_COM(0x06);//写入数
发表于 2019-11-20
PIC单片机在MPLAB-IDE中使用HitechC编译器
PIC单片机的C语言使用(一)在MPLAB-IDE中使用HitechC编译器 一、装入编译器:1、启动MPLAB-IDE,如下图所示选择Project-》Install Language Tool2、在弹出的安装语言工具对话框里“Language Suite”选项现在显示的是Microchip,点击后面的箭头来选择语言。 我使用的工具是HI-TECH PICCME,所以选择为“HI-TECH PICC”。3、接下来在“Tool Name”里选择编译器组件的调用路径,这里有“PICC Compiler”(C编译器)、“PICC Assembler”(汇编器)和“PICC Linker”(链接器)3项都需要设置
发表于 2019-11-20
PIC单片机在MPLAB-IDE中使用HitechC编译器
小广播
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

上海快三app赚钱—主页-彩经_彩喜欢子工程世界版权所有 京ICP证060456号 京ICP备10001474号 上海快三app赚钱—主页-彩经_彩喜欢信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2019 socialskive.com, Inc. All rights reserved