历史上的今天
返回首页

历史上的今天

今天是:2025年05月16日(星期五)

正在发生

2020年05月16日 | C51 keil v4 流水灯简单代码的编写

2020-05-16 来源:eefocus

#include

#include"intrins.h"

typedef unsigned char u8;/*char 为1字节,8位  */

typedef unsigned int u16;

/*一般情况下用int,因为unsigned char取值范围为0~255;而int为65535;

用u16,u8使代码的可移植性高   */

#define led P0

//sbit led=P0^0;

//两种表示方式

void delay(u16 i)

{

while(i--);

}//运用延时函数达到使led灯闪烁的目的

void main()

{

/*

while(1)

{

led=1;

delay(50000);//i=1时,约等于是10us,所以50000是500ms

led=0;

delay(50000);

}

//这段代码实现一个led灯的闪烁。即亮了0.5秒后,暗0.5秒。但是由于delay函数是不精确的,所以时间不是准确的0.5s

*/

 

 

        /*u8 i;

        led=0x01;//表示16进制,第一个led灯   0000  0001

        delay(50000);  

while(1)

{

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

        {

        led=(0x01<        delay(50000);

        }

}

        //这段代码实现了八个led灯的依次点亮,实现了流水灯的功能

*/

 

         u8 i;

led=0x01;

delay(50000);

while(1)

{

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

                {

                led=_crol_(led,1);

        delay(50000);

        }

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

        {

        led=_cror_(led,1);

        delay(50000);

        }

}

        

 

         /*这段代码实现了走马灯的功能1~8依次亮,接着8~1亮

        因为运用了_cror_(a,b)函数,所以需要引用头文件instrins.h

        至于为什么上一段代码是i<8,这一段是i<7;

        其实是根据具体操作来的,亲故可以自行体验下他的用法

        第二段代码是led=(0x01<        最后一段代码是led=_crol_(led,1);是运用了左移函数,且赋值给了led,所以led每次循环的起始源是不同的。

        值在i=0循环的时候就变成了0010起始,而上一段还是0001起始。    */

}

推荐阅读

史海拾趣

Feller US公司的发展小趣事

在电动汽车领域,技术创新是企业生存和发展的关键。菲斯克一直致力于研发更加先进、更加环保的电动汽车技术。经过多年的努力,公司终于在某项关键技术上取得了重大突破。这一突破不仅提升了电动汽车的性能和续航里程,还为公司赢得了市场的广泛认可。菲斯克凭借这一技术优势,成功推出了一系列备受好评的电动汽车产品,进一步巩固了其在市场中的地位。

Hitano Enterprise Corp公司的发展小趣事

Alpha 3 Manufacturing公司成立于XXXX年,初期面临着资金短缺、市场竞争激烈以及技术瓶颈等多重挑战。然而,创始人凭借对电子行业的深刻理解和敏锐的市场洞察力,看到了电子产品制造领域的巨大潜力。他带领团队攻克技术难关,开发出了一款具有创新性的电子产品,迅速获得了市场的认可,为公司的起步奠定了坚实的基础。

Hi-Light Electronic Co Ltd公司的发展小趣事

Alpha 3 Manufacturing公司成立于XXXX年,初期面临着资金短缺、市场竞争激烈以及技术瓶颈等多重挑战。然而,创始人凭借对电子行业的深刻理解和敏锐的市场洞察力,看到了电子产品制造领域的巨大潜力。他带领团队攻克技术难关,开发出了一款具有创新性的电子产品,迅速获得了市场的认可,为公司的起步奠定了坚实的基础。

Compound Photonics公司的发展小趣事

在公司发展初期,Compound Photonics曾专注于一款微投显示模组的研发。然而,这个项目并未如预期般顺利,最终宣告失败。面对挫折,公司并没有放弃,而是迅速调整战略,转向LCoS方向。这一决策不仅让公司避免了进一步的损失,还为其在LCoS领域的发展打开了新的大门。

BENCENT公司的发展小趣事

随着市场的不断变化和竞争的加剧,BENCENT公司意识到只有不断创新才能在行业中立足。公司加大了研发投入,引进了一批高素质的技术人才,并与其他科研机构展开合作。通过一系列的技术创新,公司成功推出了一系列具有自主知识产权的电子产品,进一步提升了市场竞争力。

EWC Controls公司的发展小趣事

EWC Controls公司非常重视人才培养和团队建设。公司建立了一套完善的人才培养体系,通过内部培训、外部引进等方式吸引和培养了一批高素质的人才。同时,公司还注重团队合作和文化建设,鼓励员工之间的交流和合作,营造了积极向上的工作氛围。这种人才培养和团队建设的策略为公司的发展提供了有力的保障。

问答坊 | AI 解惑

这个板块还缺点什么话题?

现在个人能够想到的就是这些啦,可能还是受到了很多的限制,自己了解的有限,以后也主要是弄这一块的,这个板块你希望还看到什么话题,希望找到什么的,我们会尽量满足,大家提提,还有这么多的版主一定能够解决你的疑问的!…

查看全部问答>

iPod shuffle拆解

看到DIY示波器的礼品是Shuffle,眼馋了好一阵子呢,看到了一篇文章,给大伙看看,实际上,别看外观那么好话,拆解完也没啥(吃不着葡萄说下葡萄酸),嘿嘿 第1页:跟U盘一样大 新iPod shuffle曝光 苹果昨天发布了第三代iPod shuffle超迷你音乐播 ...…

查看全部问答>

滤波器设计资料集锦

滤波器设计资料集锦 …

查看全部问答>

wince6.0 模拟器的问题

自己编了个wince 6.0的模拟器,下载了一个flash播放器,在开发板的真实硬件环境可以跑起来并且运行flash,但是在模拟器上只能运行flash播放器,无法运行flash文件,请问是不是需要什么库或者组件的支持?谢谢!!…

查看全部问答>

驱动程序里可以使用STL吗

我的虚拟打印机里用到gzip压缩算法,现在一个gzip算法代码,用到了STL类:如vector, 我如何把该算法代码编译到驱动程序里?…

查看全部问答>

LM3S8962 评估套件开发板申请

非常期待能够申请到板子。我是深圳清华研究院电子信息研究所的,最近所里有物联网的项目研究,这要是智能家居部分,看看能不能用这块板子作为开发平台 [ 本帖最后由 fqzxw 于 2010-10-18 09:56 编辑 ]…

查看全部问答>

请教单片机和液晶驱动的问题?

问题1。STC单片机的复位键按上后无反应,是不是我电路有错? 问题2。 液晶驱动芯片是HT1621B ,上电后屏微亮,是什么原因呢?电压不够吗?  …

查看全部问答>

:)小弟初次用STM32做的板子,请高人看看如何才能做到8位机的

小弟年前匆匆忙忙帮朋友做的小东西, 当时还没完工时的照片. 请大家看看是否做到了类似配置的8位机的成本:     6 开关量输入    6 继电器接点出    6&n ...…

查看全部问答>