历史上的今天
返回首页

历史上的今天

今天是:2025年07月26日(星期六)

正在发生

2021年07月26日 | 51单片机学习笔记【一】——LED灯实验

2021-07-26 来源:eefocus

LED小灯就是一种发光二极管,正向压降是1.6V~2.2V,电流是2~20mA,2~5mA时亮度随电流的增大而增大,超过5mA后亮度不再变化,大于20mA小灯损坏。本实验采用贴片式的LED小灯,通过一个74HC573D芯片(数据手册)控制LED小灯的亮灭。


名称:LED小灯控制

说明:通过实验控制LED小灯产生不同的变化,学习LED小灯的原理和控制方法,用排线将J10与J21连接起来;P2口控制。实验中当给小灯置1时,小灯亮,置0时小灯熄灭。


实验例程如下:

/***********************************************

   > File Name: 点亮LED

   > Author: pengshp

   > Mail: pengshp3@outlook.com

   > Date: 2015年 6 月 27 日

*************************************************/

 

#include

sbit LED0=P2^0;

void main()

{

//P2=0x00;

while(1)

{

LED0=1;//灯亮

//LED0=0; 灯熄

}

}

/***********************************************

   > File Name: 闪烁的LED

   > Author: pengshp

   > Mail: pengshp3@outlook.com

   > Date: 2015年 6 月 27 日

*************************************************/

 

#include

#define uchar unsigned char

#define uint unsigned int

sbit LED=P1^0;

//延时函数

void DelayMS(uint x)

{

uchar i;

while(x--)

{

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

}

}

 

void main()

{

while(1)

{

LED=~LED;

DelayMS(150);

}

}

/***********************************************

   > File Name: 流水灯实验

   > Author: pengshp

   > Mail: pengshp3@outlook.com

   > Date: 2015年 7 月 13 日

*************************************************/

 

#include

 

sbit ADDR0 = P1^0;

sbit ADDR1 = P1^1;

sbit ADDR2 = P1^2;

sbit ADDR3 = P1^3;

sbit ENLED = P1^4;

 

void main()

{

   unsigned char cnt = 0;

   unsigned int i=0;

   ENLED = 0;

   ADDR3 = 1;

   ADDR2 = 1;

   ADDR1 = 1;

   ADDR0 = 0;

 

   while(1)

   {

      P0 = ~(0x01 <      for(i=0; i<30000; i++); //0000 0001   1111 1110

      cnt++;                  //0000 0010   1111 1101

      if(cnt>=8)

      {

          cnt = 0;            //共八个流水灯,大于8时赋值为零,循环

       }

    }

}

/**************************************

  > File Name: 左右流水灯

  > Author: pengshp

  > Mail: pengshp3@outlook.com

  > Date: 2015年 7 月 13 日

***************************************/

#include

 

void delay500ms(void)               //延时0.5s,误差 0us

{

    unsigned char a,b,c;

    for(c=23;c>0;c--)

        for(b=152;b>0;b--)

            for(a=70;a>0;a--);

}

 

void main()

{

unsigned char cnt=0;

P2=0x00;

while(1)

{

for(;cnt<8;cnt++)

{

P2=(0x01< delay500ms();

}

cnt=0;

for(;cnt<8;cnt++)

{

P2=(0x80>>cnt);//1000 0000右移

delay500ms();

}

cnt=0;

}

}

推荐阅读

史海拾趣

G24 Innovations公司的发展小趣事

为了进一步拓展国际市场,远阳公司开始实施国际化布局战略。公司通过设立海外研发中心、生产基地等方式,加强与全球市场的联系和互动。同时,远阳还积极寻求并购整合机会,通过收购同行业优质企业,实现优势互补和资源共享。这些举措不仅增强了远阳的国际竞争力,也为企业的可持续发展注入了新的动力。

BETA Transformer Technology Corp公司的发展小趣事

随着电子行业的快速发展和变革,BETA Transformer Technology Corp公司面临着前所未有的挑战。为了应对这些挑战,公司不断加大研发投入,加强技术创新,推出了一系列符合市场需求的新产品。同时,BETA公司还积极调整生产结构,优化供应链管理,降低成本,提高产品质量。这些举措使得BETA公司在激烈的市场竞争中保持了领先地位。

ELNA(依娜)公司的发展小趣事

在数字化转型和智能化升级的趋势下,ELNA开始积极探索新技术和新模式。公司加强了与互联网和人工智能技术的融合,推动产品和服务的智能化升级。同时,ELNA还加强了对大数据和云计算技术的应用,提升生产效率和管理水平。

以上是对ELNA公司在电子行业中的部分发展历程的概述。您可以根据这些故事的开头进一步扩展和完善内容以满足字数要求。

FCI / Amphenol公司的发展小趣事

FCI公司起源于1988年,当时由Framatome组建,其初衷是作为核能领域外的一个多样化经营项目。然而,随着市场的变化和公司的战略调整,FCI逐渐将重心转向连接器制造。经过20多次的精心收购和策略性扩张,FCI在短短20年内便成长为全球最大的连接器制造公司之一。这一转变不仅展现了FCI对市场敏锐的洞察力,也体现了其卓越的管理能力和执行力。

Glow-Lite Corp公司的发展小趣事

Amphenol公司成立于1932年,最初由Arthur J. Schmitt和Gordon K. Klapmeier共同创办,专注于电磁线缆的制造。然而,随着技术的进步和市场需求的变化,Amphenol公司逐渐将重心转向电缆连接器的制造。凭借高品质的产品和服务,Amphenol公司的电缆连接器在市场上获得了广泛的认可,并逐渐发展成为全球最大的电缆连接器制造商之一。

明波通信(BWAVE)公司的发展小趣事

随着国内市场的日益饱和,明波通信开始将目光投向全球市场。公司先后在日本东京和江苏常州设立了子公司,通过技术合作和市场拓展,进一步巩固了公司在全球通信领域的地位。同时,明波通信也积极参与国际技术交流和合作,不断提升自身的技术水平和创新能力。这一系列的国际化战略举措,为明波通信的未来发展奠定了坚实的基础。

以上五个故事都是基于明波通信在电子行业中的发展历程和公开资料进行的概括性描述。虽然无法涵盖所有细节和具体事件,但希望能够展现出明波通信在创业、技术创新、市场拓展和国际化等方面的努力和成就。

问答坊 | AI 解惑

模块推广应用—DIY综合型防盗报警控制器

模块推广应用—DIY综合型防盗报警控制器…

查看全部问答>

英特尔调转船头:由处理器驶向SoC(一)

全球最大的半导体厂商大举挺进AV产品等主处理器市场。美国英特尔已制定了面向电视、蓝光录像机、机顶盒(STB)等台式AV产品以及路由器等网络设备等各种用途,正式开展SoC(system on a chip)☆业务的方针。 ☆SoC(system on a chip):集成有计 ...…

查看全部问答>

我是人才,探索科学真理,研发!

每次找工作遇到挫折了,我都会在心里慢慢安慰自己“我是人才,我一定会找到一份我适合我的工作的”。      一转眼,一个月过去,我本以为我来深圳之后,在我会很快的进入一家大企业,比如:中兴,华为了。可是现在才知道,当时 ...…

查看全部问答>

用状态机实现键盘消抖

用状态机做键盘消抖,很好用,不必延时等待键盘稳定,当检测到有键按下或弹起时能发出相应的键盘消息, 设置状态机有4种状态,A0,A1,A2,A3 状态转换图如下: 初始时处于A0状态,当扫描发现有键按下时,转入到A1状态。 当处于A1状态时,当扫描 ...…

查看全部问答>

NandFlash第一个Block有Sector坏区

使用K9F1G08烧写Bootloader的时候第一个Block的Sector的第一个字节写进去的跟读出来的不一样,后面几个Sector都有一些数据不一样的。   望遇到过这种情况的朋友指点一下。…

查看全部问答>

2440 加入一个串口驱动导致启动不了,大伙帮忙看看。

按照http://www.hzlitai.com.cn/bbs/viewthread.php?tid=11487&pid=67161&page=1&extra=#pid67161 提示加入,没有想到在系统启动的时候不停的打印 EvaluateEventFlag (eventMask = 0x80) - device was closed EvaluateEventFlag (eventMask ...…

查看全部问答>

44b0的问题:写了下flash,结果板子起不来了

各位:     现在遇到这个问题,44b0的板子我刚拿到,上面的flash是AMD29LV160的,看了下它的datasheet,按通用擦写程序对板子来了次擦写。以前用ZLG的LPC2200也操作过sst的flash,没仔细看操作文档,结果这次在AXD里单步擦了一下后还没 ...…

查看全部问答>

求虚拟光驱编程思路!

我想用MFC编一个虚拟光驱的程序,但是无从下手,哪位高手能介绍一下它的编程思路吗?谢谢了!…

查看全部问答>

UART深入学习中,未完待续

首先必须清楚什么是UART?UART的英文全称是:Universal Asynchronous Receiver/Transmitter,通用异步接收/发送装置,UART是一个并行输入成为串行输出的芯片,通常集成在主板上,多数是16550AFN芯片。UART是一种通用串行数据总线,用于异 ...…

查看全部问答>

RS232问题:三个430的txd和一个430的rxd相连

txd端不会同时发送数据,请问有简单的方法吗? 就是只有发送,没有返回…

查看全部问答>