历史上的今天
返回首页

历史上的今天

今天是:2025年08月05日(星期二)

正在发生

2020年08月05日 | TM1650模块单片机源程序(子函数)

2020-08-05 来源:51hei

单片机源程序如下:

#include

#include"tm1650.h"

void Delay_us(uint i) //us延时

{

        for(;i>0;i--)

        {

        _nop_();

//        _nop_();

//        _nop_();

        }

}

void I2CStart(void)        //开始信号

{

        CLK_H;

        DIO_H;

        Delay_us(5);

        DIO_L;

        

}


void I2Cask(void) //ACK信号

{

        uchar timeout = 1;

        CLK_H;

        Delay_us(5);

        CLK_L;

        while((DIO)&&(timeout<=100))

        {

          timeout++;        

        }

        Delay_us(5);

        CLK_L;

}


void I2CStop(void) //停止信号

{

        CLK_H;

        DIO_L;

        Delay_us(5);

        DIO_H;

}


void I2CWrByte(uchar oneByte) //写一个字节高位在前,低位在后

{

        uchar i;

        CLK_L;

        Delay_us(1);

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

        {        

                oneByte = oneByte<<1;

                DIO = CY;

                CLK_L;

                Delay_us(5);

                CLK_H;

                Delay_us(5);

                CLK_L;

        }

}


uchar Scan_Key(void)          // 按键扫描

{

        uchar i;

        uchar rekey;

        I2CStart();

        I2CWrByte(0x49);//读按键命令

        I2Cask();

        //DIO_H;

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

        {

           CLK_H;

           rekey = rekey<<1;

           if(DIO)

           {

                   rekey++;

           }

           Delay_us(5);

           CLK_L;        

        }

        I2Cask();

        I2CStop();

        return(rekey);

}



void TM1650_Set(uchar add,uchar dat) //数码管显示

{

        //写显存必须从高地址开始写

        I2CStart();

        I2CWrByte(add); //第一个显存地址

        I2Cask();

        I2CWrByte(dat);

        I2Cask();

        I2CStop();

}


推荐阅读

史海拾趣

Chip Supply Micro Devices公司的发展小趣事

为了进一步扩大市场份额,Chip Supply Micro Devices制定了国际化战略。公司积极开拓海外市场,通过参加国际电子展会、建立海外销售网络等方式,将产品推向全球。同时,公司还针对不同国家和地区的市场需求,推出了定制化的产品解决方案。这些努力使得Chip Supply Micro Devices在国际市场上获得了良好的口碑和业绩。

安普康(AMPCOM)公司的发展小趣事

对于安普康来说,品质是企业生存和发展的基石。自成立以来,公司始终将产品品质放在首位,从原材料采购到生产流程控制,再到产品测试和包装,每一个环节都严格把关。这种对品质的执着追求使得安普康的产品在市场上赢得了良好的口碑。无论是电信、移动、电力等大型企业,还是智能大厦、家庭用户等终端客户,都对安普康的产品给予了高度评价。

AIRPAX公司的发展小趣事

近年来,随着数字化技术的快速发展,AIRPAX也开始积极探索数字化转型之路。公司加大了对智能化、自动化生产线的投入,提高了生产效率和质量。同时,AIRPAX还积极利用大数据、云计算等先进技术,对客户需求和市场趋势进行深入分析,以更好地满足客户需求并推动创新发展。

这些故事只是AIRPAX发展历程中的一部分,它们展示了AIRPAX如何在技术、市场、环保和创新等多个方面取得了显著成就。然而,随着电子行业的不断发展和竞争的加剧,AIRPAX仍需继续努力,以保持其在电气保护领域的领先地位。

Catalyst公司的发展小趣事

随着电子行业的快速发展,Catalyst公司不断追求技术创新和突破。在某次关键的技术研发中,公司成功攻克了一项行业难题,推出了一款具有划时代意义的新产品。这款产品不仅性能卓越,而且具有极高的性价比,迅速赢得了市场的广泛认可。Catalyst凭借这一技术突破,成功引领了市场潮流,进一步巩固了其在行业内的领先地位。

Compex Corporation公司的发展小趣事

为了进一步扩大市场份额,Compex Corporation开始实施全球化战略。公司积极开拓国际市场,与全球多个国家的客户建立了合作关系。同时,公司还在海外设立了生产基地和研发中心,以便更好地服务当地市场。这一战略的实施使得公司的业务范围不断扩大,国际影响力也逐渐增强。

德崧电子(D-SWITCH)公司的发展小趣事

随着公司业务的不断发展,德崧电子开始积极拓展市场。公司深入分析市场需求和行业趋势,针对不同领域推出了具有针对性的产品和服务。例如,在汽车行业,德崧电子推出了耐高温、耐磨损的汽车专用开关;在家电行业,公司则推出了外观精美、功能丰富的智能开关。这些产品的推出不仅满足了市场的多样化需求,也为公司带来了丰厚的回报。

问答坊 | AI 解惑

IT行业人才前景无可限量

随着市场经济的高速发展,中国IT业步入了一个人才稀缺的时代。作为最被看好的热门专业,其迅猛发展有目共睹,从而导致IT人才的培养速度无法跟上IT行业的发展,每年的人才缺口就达数百万人。为了在激烈的就业竞争中占领一席之地,减小就业压力, ...…

查看全部问答>

wince串口问题。系统忙数据就出错

wince下串口问题,平时数据传输正常,但鼠标反复点击移动有时就会使串口数据错误,或者是界面切换时。我感觉是系统忙了有时会影响串口读取。波特率的57600,不算很高吧?缓冲区我也设置的很大了。数据没有丢失,只是出现错误。例如我发送端发的全是 ...…

查看全部问答>

usb驱动,应用程序能够打开设备,但是发送数据的时候堵在了SubmitUrb

        是什么原因使得发送数据阻塞啊? PURB pUrb = m_Endpoint2OUT.BuildBulkTransfer(                                   &nbs ...…

查看全部问答>

简谈 TI Stellaris M3为啥不"火"?

前些天有朋友和我讨论,\"感觉TI的M3在网上讨论的不多\",下面是我的一些看法: 原来luminary平台比较小,所以当年zlg想把它推广起来,难度肯定是相当大的,这里面不只是技术问题,还涉及到渠道、产能、服务、信任、品牌等诸多因素,而在这方面lum ...…

查看全部问答>

这个程序哪错了?

我承认我很菜,但很无奈 void Send(char val) { U1TXBUF=val;//写数据 while(!(IFG2&UTXIFG1));//等待发送完毕 P1OUT^=0x03; } char Get_Char() { while(!(IFG2&URXIFG1));//等待数据接收 return U1RXBUF; } void Init_Sys ...…

查看全部问答>

求助

用Basic Timer 定时器让P2.0口上的LED每秒闪烁一次,其中中断程序中写道“P2OUT^=BIT0;  //P2.0取反”,这样写的话,执行完中断后,LED是闪烁一次还是一直亮着呢?(我怎么觉得会一直亮着,因为P2.0一直置高呀,还是说P2.0只是在中断时间内置 ...…

查看全部问答>

请问STM32F10X_MD和STM32F10X_MD_VL区别

请问STM32F10X_MD_VL和STM32F10X_MD有什么区别啊,网上查了查,有如下说明   cl:互联型产品,stm32f105/107系列vl:超值型产品,stm32f100系列xl:超高密度产品,stm32f101/103系列ld:低密度产品,FLASH小于64Kmd:中等密度产品,FLASH=64 ...…

查看全部问答>

请问有哪些性能比较好的集成运放呢?

本帖最后由 paulhyde 于 2014-9-15 04:04 编辑 本人是新手,将要参加比赛,请问各位好友有哪些性能比较好的集成运放啊,我之前用过LM324  …

查看全部问答>

在DM8168中通过live555实现rtsp的直播

1、源码     http://live555.com/liveMedia/public/ 2、实现交叉编译     vim config.armlinux     修改: CROSS_COMPILE?=         arm-none-linux-gnueabi-     ./g ...…

查看全部问答>