51单片机流水灯原理图灯

#include &reg52.h&
#define uchar unsigned char
#define uint unsigned int
uint table[] = {0xfe, 0xfd, 0xfb, 0xf7, 0xef, 0xdf, 0xbf, 0x7f};
void delay(void) {
uint a = 50000;
while(a--);
void main() {
int i = 0;
while(1) {
for(i = 0; i & 8; i++) {
P0 = table[i];
for(i = 7; i &= 0; i--) {
P0 = table[i];
& 不是我学的技术杂,而是学校课程安排的就杂。我粗略数了一下学校的课程,可谓是囊括了天南海北的知识呀,我估计了一下,要是每个学期,没门课程都学精了。那堪称完人啦。不过这学期涉及到嵌入式和单片机,那就来玩一玩吧!荒废了半个学期了,是时候学点东西了。古人道:朝闻道,夕死足矣。何况还没有年老的那天呢!
& 其实学单片机也是看林峰的视频的:《林峰带你征服嵌入式》!直接上代码吧。
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:41824次
积分:1064
积分:1064
排名:千里之外
原创:59篇
评论:30条
文章:10篇
阅读:6787
文章:21篇
阅读:10002
(1)(5)(4)(2)(1)(1)(2)(5)(2)(5)(2)(1)(5)(9)(2)(1)(1)(1)(4)(4)(2)&&&&&&当前位置:&gt
月销量66件
月销量32件
月销量24件
月销量19件
月销量12件
月销量11件
月销量10件
618超级返狂欢节
一淘网为您找到51单片机流水灯产品的详细资讯,实时报价,价格行情,51单片机流水灯商品分类,论坛问答/求购等相关产品信息。
增值电信业务经营许可证:浙B2-**************************************************************文件名称:flash_led.c文件说明:流水灯C程序编写日期:日程序说明:MCU采用AT89S51,外接12M晶振,P1口输出*************************************************************/#include //51系列单片机定义文件#define uchar unsigned char //定义无符号字符#define uint unsigned int //定义无符号整数void delay(uint); //声明延时函数void main(void){while(1){temp=0x01;for(i=0;i&8;i++) //8个流水灯逐个闪动{P1=~delay(100); //调用延时函数temp&&=1;}temp=0x80;for(i=0;i&8;i++) //8个流水灯反向逐个闪动{P1=~delay(100); //调用延时函数temp&&=1;}temp=0xFE;for(i=0;i&8;i++) //8个流水灯依次全部点亮{P1=delay(100); //调用延时函数temp&&=1;}temp=0x7F;for(i=0;i&8;i++) //8个流水灯依次反向全部点亮{P1=delay(100); //调用延时函数temp&&=1;}}}void delay(uint t) //定义延时函数{for(;t;t--)for(bt=0;bt&255;bt++);}/*************************************************************89C51、S51单片机32个IO口流水灯测试程序*Flash0、1、2、3分别对应单片机的P0、1、2、3四个口*a程序对应流水灯从全灭到一个一个亮*b程序对应流水灯从全亮到一个一个灭* 10:57,OK!*************************************************************/#include#include#include#define uchar unsigned char#define uint unsigned int#define TimeDelay 60000void delay(uint n);void Flash0a(void);void Flash0b(void);void Flash1a(void);void Flash1b(void);void Flash2a(void);void Flash2b(void);void Flash3a(void);void Flash3b(void);/*************************************************************Function: 主函数*parameter:*Return:*Modify:*************************************************************/void main(void){while(1){Flash1b();Flash1a();delay(TimeDelay);delay(TimeDelay);Flash0b();Flash0a();Flash2b();Flash2a();Flash1b();Flash1a();Flash3b();Flash3a();}}/*************************************************************Function: 延时*parameter:*Return:*Modify:*************************************************************/void delay(uint n){while(n!=0){n--;}}void Flash0a(void){uchar TTemp = 0x80;for(i=0;i&8;i++){P0 = ~Tdelay(TimeDelay);Temp = Temp && 1;}P0 = 0}void Flash0b(void){uchar TTemp = 0x80;for(i=0;i&8;i++){P0 = Tdelay(TimeDelay);Temp = Temp && 1;}P0 = 0;}void Flash1a(void){uchar TP1 = 1;Temp = 0x80;for(i=0;i&8;i++){P1 = ~Tdelay(TimeDelay);Temp = Temp && 1;}P1 = 0}void Flash1b(void){uchar TP1 = 1;Temp = 0x80;for(i=0;i&8;i++){P1 = Tdelay(TimeDelay);Temp = Temp && 1;}P1 = 0;}void Flash2a(void){uchar TP2 = 1;Temp = 0x80;for(i=0;i&8;i++){P2 = ~Tdelay(TimeDelay);Temp = Temp && 1;}P2 = 0}void Flash2b(void){uchar TP2 = 1;Temp = 0x80;for(i=0;i&8;i++){P2 = Tdelay(TimeDelay);Temp = Temp && 1;}P2 = 0;}void Flash3a(void){uchar TP3 = 1;Temp = 0x80;for(i=0;i&8;i++){P3 = ~Tdelay(TimeDelay);Temp = Temp && 1;}P3 = 0}void Flash3b(void){uchar TP3 = 1;Temp = 0x80;<p style="margin-top: 10 margin-bottom: 10 list-style-type: text-indent: 28 color: rgb(73, 73, 73); font-family: 微软雅黑; font-size: 14 line-height: 24 white-space: 畅学电子(changxuedianzi) 
 文章为作者独立观点,不代表大不六文章网立场
的最新文章
1.5V微弱声音放大器这个简单的电路将检测到非常微弱的声音,并放大输出给一个32欧姆的耳机。该电路是专为1.传输文件进行PCB打样传输文件进行PCB打样传输文件进行PCB打样传输文件进行PCB打样传输文件进行PCB打接地的目的无非是为了安全和防止干扰,给PLC接地的目的主要是抑制附加在电源及输入、输出端的干扰,所以说正确的这个DC-DC电路在产品上用了几年了,一直都没出过什么毛病,现在分享出现,供大家参考一下。LM2567T是一在学习AltiumDesigner或者51单片机的过程中,当我们要绘制一个带有STC单片机的电路图或者要制作印制电路板画出电路图图解故障检修中,如果没有电路原理图,而故障处理起来又比较困难,此时可以根据电路板上的元器数字电路晶振和复位电压判断技巧1.测晶振时钟:用数字万用表测晶振两端的电压,如果两端电压为电源电压一半或其中一、稳压电源1、3~25V电压可调稳压电路图此稳压电源可调范围在3.5V~25V之间任意调节,输出电流大,并你想熟悉单片机,那必须先看看单片机的结构和特殊寄存器,这是你编写软件的关键。至于串口通信需要用到那些特殊功能Rx是电阻,在电路图里有很多电阻,按序号排,R1,R2。。。Cx是无极性电容,电源输入端抗干扰电容IC集成电为了大家看的明白...我就用ORCAD画了两个电路,一个是一个普通的三极管模拟放大电路,另一个是数字电路振荡放大器电路故障分析的重要性主要说明以下两点1、 通过电路故障分析可以加深对放大器电路工作原理的理解;2、 在为了使交流电有很方便的动力转换功能,通常电力传输是以三相四线的方式,三相电的三根头称为相线,三相电的三根尾连MOS管是金属(metal)—氧化物(oxide)—半导体(semiconductor)场效应晶体管,或者称课程详情:
《畅学蓝牙小车模块精讲教程》由畅学电子专业的电子工程师团队设计规划,并独家录制。本课程主这几天还是关注一些简单入门的东西吧,主要介绍一些PCB中一些建议规则1.我们要注意贴片器件(电阻电容)与芯片这次遇到的问题是这样的,由于LDO的电源输出能力有限,同时也是保证可靠性,某些保护电路必须直接电源上,这里需看到某某的电容爆炸了,我也想就一些问题给予一些补充,因为这玩意是很危险的,先上图一张。这是在网上收集到的恐怖为了使交流电有很方便的动力转换功能,通常电力传输是以三相四线的方式,三相电的三根头称为相线,三相电的三根尾连在研究拓扑约束时,我们可以将电路中的元件用线段代替,画成一些由线段组成的图,如图1(a)中的电路图画成为图1在使用C语言编程时延时程序是非常常见的,但是实现一个精确的延时是不太容易的,在给一个朋友的公司产品做维护时,电源地主要是针对电源回路电流所走的路径而言的,一般来说电源地流过的电流较大,而信号地主要是针对两块芯片或者模组件布置合理是设计出优质的PCB图的基本前提。1.组件布置关于组件布置的要求主要有安装、受力、受热、信号、美LED开关电源过电流保护电路、LED开关电源过电压保护电路、LED开关电源软启动保护电路、LED开关电源过热
很多电子初学者都梦想成为电子工程师,因为各种各样原因,这个梦想一直没有实现,今天我就为大家解决这一.TTLTTL集成电路的主要型式为晶体管-晶体管逻辑门(transistor-transistor log这几天在整理和生产EMC单片机程序的一些宏,发现这东西真的是好用得超乎了想象,大大的简化了写程序时的重复劳动问:从WORD文件中拷贝出来的符号,为什么不能够在PROTEL中正常显示复:请问你是在SCH环境,还是在PC课程详情:
PIC系列单片机,可以满足用户的各种需要。从中档产品PIC16F877作为切入点,提供光电传感器有NPN型输出型(电流流入)和PNP输出型(电流流出)两种,当电流流出的传感器(PNP输出型)在接BCD七段数码管译码器电路图分段式显示器(LED数码管)由7条线段围成8型,每一段包含一个发光二极管。外加正按键——在嵌入式系统应用里,占有非常重要的地位。按键——也是用户交互系统里最重要的一个部分。虽然,目前大行其想要电动机启动,可不是合上闸这么简单。想要实现远程控制和多点控制,需要做的还有很多。本文列举几个最基本的电动课程详情:
PIC系列单片机,可以满足用户的各种需要。从中档产品PIC16F877作为切入点,提供场效应管放大电路和三极管放大电路的区别1.场效应管的源极s、栅极g、漏极d分别对应于三极管的发射极e、基极b汇总了一下15个关于功率二极管知识点,一起学习一下:1.什么是二极管的正向额定电流?二极管的额定电流是二极管工程师的日常测试中,有时会发现用万用表测试的结果与许多高精度的仪器测试的结果并不一致,工程师往往会陷入迷茫,反激式开关电源结构简单,应用广泛,但其变压器漏感大,开关管存在电压尖峰,在大部分低功率应用场合都会采用简单易在子函数中用malloc申请内存使用后,意外发现在free的时候出现异常错误,后经检查发现原来是实际使用时指印制电路板图识图方法讲解印制电路板图与修理密切相关,对修理的重要性仅次于整机电原理图,所以印制电路板图主要为单片机ram和rom最大的区别单片机的一个主要作用就是数据信息的处理,而在处理数据的过程中,需要一些“容器”模拟地和数字地都是“地”,那为什么还要分开呢?且听一个故事。公司所在的商务楼共有3楼,2楼是搞模拟的,3楼是
很多电子初学者都梦想成为电子工程师,因为各种各样原因,这个梦想一直没有实现,今天我就为大家解决这一、50条电气控制知识1.按用途分类,低压电器分为控制电器、主令电器、保护电器、配电电器和执行电器。2.按执一.TTLTTL集成电路的主要型式为晶体管-晶体管逻辑门(transistor-transistor log这几天在整理和生产EMC单片机程序的一些宏,发现这东西真的是好用得超乎了想象,大大的简化了写程序时的重复劳动桥式整流电路如图5所示,其中图(a)、(b)、(c)是它的三种不同画法。它是由电源变压器、四只整流二极管D1问:从WORD文件中拷贝出来的符号,为什么不能够在PROTEL中正常显示复:请问你是在SCH环境,还是在PC课程详情:
PIC系列单片机,可以满足用户的各种需要。从中档产品PIC16F877作为切入点,提供电压跟随器电路图与比例放大器电路图区别信号经过电阻R6到运放5脚输入,LM324的7脚输出。6脚接的2.5Vchangxuedianzi谢谢关注畅学电子网,让我们一起开启知识的大门吧!热门文章最新文章changxuedianzi谢谢关注畅学电子网,让我们一起开启知识的大门吧!单片机控制的流水灯程序
16:31:58&&&来源:diangon &&
  我们前边学了点亮LED小灯,然后又学了LED小灯闪烁,下边我们要进一步了解一下如何让8个小灯依次一个一个点亮,流动起来。
图1 LED小灯电路图
   通过前面的课程,我们可以了解到控制引脚P0.0通过了74HC245控制DB0,P0.1控制DB1......P0.7控制DB7。我们还学到一个字节是8位,我们如果写一个P0,就代表了P0.0到P0.7的共8个位。比如我们写P0&=&0xFE;转换成二进制就是0b,所以点亮LED小灯的程序,实际上我们可以改成另外一种写法,如下所示。
sbit&&ADDR0&=&P1^0;
sbit&&ADDR1&=&P1^1;
sbit&&ADDR2&=&P1^2;
sbit&&ADDR3&=&P1^3;
sbit&&ENLED&=&P1^4;
void&&main()&&&&&&&&&&&&&&&&
&&&&ENLED&=&0;
&&&&ADDR0&=&0;
&&&&ADDR1&=&1;
&&&&ADDR2&=&1;
&&&&ADDR3&=&1;&&&&&&&&&&&&//74HC138开启三极管&&&&
&&&&P0&=&0xFE;
&&&&while(1);&&&&&&&&&&&&&//程序停止在这里&
  通过上边这个程序我们可以看出来,可以通过P0来控制所有的8个LED小灯的亮和灭。我们下边要进行依次亮和灭,怎么办呢?从这里就可以得到方法了,如果想让单片机流水灯流动起来,依次要实现的结果是:0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F。
  在我们的C语言当中,有一个移位操作,其中<>代表的是右移。比如a&=&0x01&<<&1就是a&的结果等于0x01左移一位。大家注意,移位都是指二进制移位,那么移位完了,本来在第0位的1移动到了第一位上,移动完了低位是补0的。所以a的值最终是等于0x02。
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
单片机相关资源
流水灯相关资源
编辑:什么鱼
本文引用地址:
大学堂最新课程
本周热门资源推荐
EEWORLD独家}

我要回帖

更多关于 51单片机流水灯怎么做 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信