26
50
150
中级技术员
使用特权
10
97
313
资深技术员
void TM1650_Start() { SDA(1); CLK(1); Delay_Us(4); SDA(0); Delay_Us(4); CLK(0);//ǯλ×ÜÏß Delay_Us(2); } void TM1650_Stop() { CLK(0); SDA(0); Delay_Us(4); CLK(1); Delay_Us(4); SDA(1); Delay_Us(1); } void TM1650_Ack(void) { SDA(1); Delay_Us(2); CLK(1); Delay_Us(2); CLK(0); Delay_Us(2); } void TM1650_Write(unsigned char data) { unsigned char i=0; CLK(0); for(i=0;i<8;i++) { if((data&0x80)==0x80) SDA(1); else SDA(0); data=data<<1; Delay_Us(2); CLK(1); Delay_Us(2); CLK(0); Delay_Us(2); } }
void TM1650_Display(unsigned int data) { unsigned char i,k[4]; k[0]=data/1000; k[1]=data%1000/100; k[2]=data%100/10; k[3]=data%10; for(i=0;i<3;i++) { if(k[i]==0) k[i]=seg[10]; else k[i]=seg[k[i]]; } TM1650_Start(); TM1650_Write(0x48); TM1650_Ack(); TM1650_Write(0x51); TM1650_Ack(); TM1650_Stop(); TM1650_Start(); TM1650_Write(0x68); TM1650_Ack(); TM1650_Write(k[0]); TM1650_Ack(); TM1650_Stop(); TM1650_Start(); TM1650_Write(0x6A); TM1650_Ack(); TM1650_Write(k[1]); TM1650_Ack(); TM1650_Stop(); TM1650_Start(); TM1650_Write(0x6C); TM1650_Ack(); TM1650_Write(k[2]); TM1650_Ack(); TM1650_Stop(); TM1650_Start(); TM1650_Write(0x6E); TM1650_Ack(); TM1650_Write(k[3]); TM1650_Ack(); TM1650_Stop(); }
const unsigned char Seg[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00};
发表回复 本版积分规则 回帖后跳转到最后一页
人才类勋章
1
扫码关注 21ic 官方微信
扫码关注嵌入式微处理器
扫码关注21ic项目外包
扫码关注21ic视频号
扫码关注21ic抖音号
本站介绍 | 申请友情链接 | 欢迎投稿 | 隐私声明 | 广告业务 | 网站地图 | 联系我们 | 诚聘英才 | 论坛帮助
京公网安备 11010802024343号