TM1637四段数码管模块驱动(.c和.h).docx

上传人:p** 文档编号:1063015 上传时间:2024-06-29 格式:DOCX 页数:6 大小:14.19KB
下载 相关 举报
TM1637四段数码管模块驱动(.c和.h).docx_第1页
第1页 / 共6页
TM1637四段数码管模块驱动(.c和.h).docx_第2页
第2页 / 共6页
TM1637四段数码管模块驱动(.c和.h).docx_第3页
第3页 / 共6页
TM1637四段数码管模块驱动(.c和.h).docx_第4页
第4页 / 共6页
TM1637四段数码管模块驱动(.c和.h).docx_第5页
第5页 / 共6页
TM1637四段数码管模块驱动(.c和.h).docx_第6页
第6页 / 共6页
亲,该文档总共6页,全部预览完了,如果喜欢就下载吧!
资源描述

《TM1637四段数码管模块驱动(.c和.h).docx》由会员分享,可在线阅读,更多相关《TM1637四段数码管模块驱动(.c和.h).docx(6页珍藏版)》请在第壹文秘上搜索。

1、1 .留意事项写地址可以自动加一(0x40),写指定(0x44)OXCO0xc3,分别是4段数码管的地址OXSa开显示,0x80关显示通信方式IIC,但写数据式低位在前别反了.TM1637.CttindudeTM1637.h,Mindudedelay,h1.CDWRlTE模式连续写入数据unsignedcharconstNum()=0x3C0x06,0x5b,04t0xz0x6d,0x7d,0x07.0x7f,06fr0x77z0x40)/01234S6789A-IIC-delay*t*t4*4*t*tx*tt*t*voidIiCJnitOPDJ)DRl=OX0C;PD,CRl=OxFF;PD

2、-CR2=0x;PO,ODR=OxOC;SC1._H;SDA.H;)voidIIC_delay(void)unsignedchari;for(i三0jiSC1.1.;SOA.1.;asm(nopH);asm(nop);asm(nop);/while(SDA,R);SC1.H;asm(nop;asm(*nop);asm(nop);SC1.1.;),写一个字节数据t*KSt*t*JtMtX4*BtKt*4*t*4*lC4tStvoidWriteByte(unsigedcharWriteData)(unsignedchari;SC1._1.;for(i=0;i=l;C.delay();sa_H;II

3、C-delay();SC1.j;C,delay();ackJC();推断芯片发过来的ACK应答信号voidWriteJEDSROM(UnSignedcharaddr,unsignedcharWData)StartJICO;调用起先信号WriteBYte(add。;写起始地址吩附(OCOH),地址OOH单元.WmeByte(WData);给显示寄存器写显示数据,值可依据实参变更Stop-IICO;调用结束信号,一个字节吩时发送完毕,可以发送下一个吩咐voidClear_1.ed(void)SDA_H;SC1._H;StartJICO;圜用起先伯号WrrteByte(OX44);写吩咐40H(数据

4、设汽),stop.HC();词用结束信号,一个字节吩时发送完毕,可以发送下一个吩咐Write_1.EDSRoM(OXCOQX40);最高位wrlte_1.EDSROM(OxCl,Ox40);中间位Write_1.EDSRoM(OXC2,0x40);最低位Wrlte_1.EDSROM(OXe3,0x40);最低位IIJdeIayO;StartJICO;调用起先信号WriteByte(Ch8a);送开屏吩咐.(8BHM亮度可以依据低三位Wi整.;显示亮度0x80,关显示StopJICO;调用结束信号,一个字节吩咐发送完毕,可以发送下一个吩咐voidose-1.ed(vod)SDA_H;SC1.-H

5、;start。);调用起先信号WmeBYte(OX80);送开屏吩咐,,亮度可以依据低三位调整。;显示亮度0x80,关显示stop_IIC(;圜用结束信号,一个字节吩咐发送完毕,可以发送下一个吩咐voidShow-1.ed(intT)(u8NumO,Numl,NUm2,NUm3;unsignedlongH;/T=S80;H=T;H=98HH2;/Num0=(u8KTl0);/Numl=(u8)(T%l0100);/Num2=(u8)(T%10010);/NUm3=(u8)(T%10);Num0=(u8)(H10(M);Numl=(u8)(H%100000000000);Num2=(u8)(H%

6、10001001;Num3=(u8)(H%ll0);SDA_H;SC1._H;StartJICO;两用起先信号Wme8te(0x44);写吩咐40H(数据设汽).stope);调用结束信号,一个字节吩时发送完毕,可以发送下一个吩咐Write_1.EDSRoM(OXCONum(NumO);最高位WrlteJEDSROM(OXCl,NumNuml);中间位Write_1.EDSRoM(OXC2,NUmINiJm2);最低位WrlteJEDSROM(OXC3,NUmNum3);以低位IQdeIaW);StartJiq);调用起先信号WrrteByte(0x8a);送开屏吩咐,(8BH),亮度可以依据

7、低三位圜整.;显示亮度SSPJIC0;调用结束信号,个字节吩咐发送完毕,可以发送下一个吩咐voidShoW_Ied_One(U8Num0,u8NUml,u8Num2,u8NUm3)SDA_H;SC1.H;StartJICO;调用起先信号WriteBYte(OX44);写吩咐40H(数据设咒.stop);两用结束信号,一个字节吩咐发送完毕,可以发送下一个吩咐Wrlte_1.EDSROM(OXC0,NUmNum。);/Ai福位Write_1.EDSRoM(OXC1.Num(Numl);中间位write-1.EDSROM(OxC2,Num(Num2);公低位write.1.EDSROM(OxC3,N

8、um(Num3);最低位IQdeIayO;StartJICO;调用起先信号WriteByte(Ox8a);送开屏吩咐,8BH),亮度可以依据低三位调整。;显示亮度StopJICO;调用结束信号,一个字节吩咐发送完毕,可以发送下一个吩咐TM1637.HMifndef_TM1637_h_Mdefine_TM1637_h_lncludeIostm8sl03f3.hdefineu8unsignedcharNdefineul6unsignedInt/SC1.-PD3MdefineSC1._H(PD,ODR=(13)define$Cl_1.(PD_ODR&=(13)/SDA-PD2什defineSDA_HdefineSDAJ.MefineSDAR(PD_ODR=12)(PD.ODR&=-(l2)PDIDRIDR2函数声明voidIICJnit(void)IIC初始化voidC1ear-1.ed(void);voidShow_1.ed(intT);voidShoW_led_0ne(u8Num0,u8NUmI,u8Num2ru8NUm3);voidose.1.ed(vod);Wendif

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 通信/电子 > 电子电气自动化

copyright@ 2008-2023 1wenmi网站版权所有

经营许可证编号:宁ICP备2022001189号-1

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。第壹文秘仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知第壹文秘网,我们立即给予删除!