欢迎来到天天文库
浏览记录
ID:43513866
大小:198.50 KB
页数:5页
时间:2019-10-09
《基于TM1620的数码管驱动电路》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、基于TM1620的数码管驱动电路TM1620是一种带键盘扫描接口的LED(发光二极管显示器)驱动控制专用电路,内部集成有MCU数字接口、数据锁存器、LED高压驱动、键盘扫描等电路。本产品性能优良,质量可靠。主要应用于VCR、VCD、DVD及家庭影院等产品的显示屏驱动。TM1620最大的有点简单好用,硬件电路简单,不需要限流电阻,亮度软件可调,芯片内部自带扫描电路,只需要将要显示的内容写入寄存器,即可稳定显示,非常方面。驱动代码如下:TM1620.c文件#include"TM1620.h"sbitSTB=P2^5;
2、sbitCLK=P2^6;sbitDIO=P2^7;unsignedcharconstdofly[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40};//显示段码值0123456789-staticvoiddelay5us(void)//误差-0.026765046296us{uint8a;for(a=12;a>0;a--);_nop_();//ifKeil,requireuseintrins.h}voidTM16_Wdata(uint8dat){
3、uint8i;CLK=1;DIO=1;for(i=0;i<8;i++){CLK=0;DIO=(bit)(dat&0x01);delay5us();CLK=1;dat>>=1;delay5us();}CLK=1;DIO=1;}voidTM16_Wcmd(uint8cmd){STB=0;TM16_Wdata(cmd);STB=1;delay5us();}voidInit_TM1620(void){TM16_Wcmd(0x02);TM16_Wcmd(0x44);}voidDisplay(uint16num,bitsw,
4、uint8point){uint8i;if(num>9999){for(i=0;i<4;i++){STB=0;TM16_Wdata(0xC0+6-2*i);//计算地址TM16_Wdata(dofly[10]);STB=1;}}else{for(i=0;i<4;i++){STB=0;TM16_Wdata(0xC0+6-2*i);//计算地址if(3-i==point-1){TM16_Wdata(dofly[num%10]
5、0x80);}else{TM16_Wdata(dofly[num%10]);}num/=10
6、;STB=1;}}if(sw){TM16_Wcmd(0x88);}else{TM16_Wcmd(0x80);}}TM1620.h文件#ifndef__TM1620_H_#define__TM1620_H_#include"STC12C5A.h"#defineDIS_MODE_D0#defineDIS_MODE_H1voidInit_TM1620(void);voidDisplay(uint16num,bitsw,uint8point);voidDisplay_limit(uint16num,bitmode,bit
7、flicker);#endif
此文档下载收益归作者所有