- 博客(9)
- 收藏
- 关注
原创 基于51单片机的LCD1602液晶显示模块
/如果忙标志位BF=1,继续循环检测,等待BF=0时才能跳出循环。//写命令时,E应为正脉冲,即正跳变,所以前面先把E置0。//写入命令0x38,即8位数据,两行显示,5*7点阵。//写入命令0x0c,即开整体显示,光标关,无闪烁。#include<intrins.h> //包含_nop_()空函数指令的头文件。//按规定RS=1,RW=0时,才可以写入命令。//写命令时,E应为正脉冲,即正跳变,所以前面先把E置0。//写入命令0x06,即光标右移。//声明显示字符串函数。
2023-06-15 18:25:17
1510
1
原创 基于51单片机的16*16点阵显示字符
扫描过程如下:通过译码器输出选中第一行(R0)送低电平,其他行送高电平,然后由P0和P2口输出对应列码到C0~C15,以此类推,直至译码器输出选中第16行(R15)送低电平,其他行送高电平,然后由P0和P2口输出对应列码到C0~C15,共扫描16次,列码中为高电平的的对应LED点亮,从而实现显示字符的功能。16*16LED点阵显示器(共阳极)的16行行线R0~R15的电平,由P1口的低四位经4线-16线译码器74HC154的16位译码输出来控制。out1=i%16;//汉字"电"的16*16点阵的列码。
2023-06-15 13:26:34
5600
2
原创 基于51单片机的LED数码管动态显示
程序运行后,单片机控制左边第1个LED数码管显示1,其他不显示,延时之后,控制左边第2个LED数码管显示1,其他不显示,直至控制第8个LED数码管显示1,其他不显示,反复循环上述过程。//循环移位函数_crol_(j,1)将j循环左移1位。如下图所示,P0口输出段码,P2口输出位控码,Proteus原理图中数码管型号为7SEG-MPX8-CA-BLUE。//P1口输出位控码。
2023-06-14 13:49:00
2756
原创 51单片机控制LED数码管静态显示
如下图所示,单片机利用P0口和P1口分别控制加到两个LED数码管的段码,两个LED数码管的公共端直接接到+5V,即共阳极数码管。利用P0口和P1口具有的锁存功能,只需向单片机的P0口和P1口分别写入相应的显示字符“2”和“7”的共阳极段码即可。//将数字"2"的段码(共阳极)送到P0口。//将数字"7"的段码(共阳极)送到P1口。《单片机原理及应用》第二版 例5-6。
2023-06-14 12:40:37
1325
原创 基于C51的LED数码管显示字符
如下图所示,用单片机控制一个8段LED数码管(图中型号为7SEG-COM-AN-BLUE),先显示单个偶数:0、2、4、6、8,再显示单个奇数:1、3、5、7、9,如此反复循环显示。//如果段码为0x01,表明一个循环的显示已结束,此时给i置0,为新的循环做准备。void delayms(uint j)//延时函数。
2023-06-13 19:15:44
2034
1
原创 基于51单片机的双开关控制4个LED中单个LED点亮
如下图所示,单片机P1.0和P1.1引脚接有两只开关S0和S1,两只引脚上的高低电平共有4种组合,这4种组合分别控制P2.0~P2.3引脚上的4只LED(D1~D4)点亮或熄灭。//读入P1口的状态,并送入state。switch(state) //判断P1口的低2位状态(0~3)case 0:P2=0x01;//点亮P2.0引脚上的D1。//点亮P2.1引脚上的D2。//点亮P2.2引脚上的D3。//点亮P2.3引脚上的D4。
2023-06-13 17:59:44
2533
1
原创 基于51单片机的开关控制LED亮灭
如下图所示,单片机的P1.4~P1.7接4个开关,P1.0~P1.3接4个发光二极管D1~D4,编写程序,将P1.4~P1.7上的4个开关的状态反映在P1.0~P1.3引脚控制的4个发光二极管上,即开关闭合,对应的发光二极管点亮。例如P1.4引脚上开关的状态由P1.0引脚上的D0显示。//temp的内容右移四位,即P1口高四位按键输入状态移至低四位,用于发光二极管显示控制。//P1口高四位置1,作为输入;//读P1口并屏蔽其低四位,送入temp中。//temp中的数据送P1口输出。uchar temp;
2023-06-13 15:42:42
3892
1
原创 基于51单片机的由上至下,再由下至上反复循环点亮的流水灯
/本方法使用移位运算符"",把送到P1口的显示控制数据进行移位,从而实现发光二极管的依次点亮。//本方法是通过建立1个字符型数组,将控制8个LED显示的8位数据作为数组元素,依次送到P1口来实现。//本方法是通过C51中提供的库函数,即循环左移n位函数和循环右移n位函数,控制发光二极管的点亮规律。//左移移位运算符""是将低位丢弃,高位补0。//方法三:用循环左、右移位函数实现。《单片机原理及应用》第二版例5-2。
2023-06-12 19:04:01
4820
原创 基于51单片机的由上至下点亮的循环流水灯
例5-1 制作一个流水灯,8个发光二极管LED1~LED8经限流电阻分别接至P1口的P1.0~P1.7引脚上,二极管阳极共同接高电平。注意:在Proteus中绘制电路原理图时,单片机最小系统所需的时钟振荡电路、复位电路、EA(上面加横线)引脚与+5V电源的连接均可省略,Proteus已经默认,不影响仿真结果。//函数_crol_(P1,1)把P1中的点亮数据(低电平)循环左移1位。//向P1口送出点亮P1.0,其他不亮的数据。while(1)//循环点亮。
2023-06-11 16:58:20
1960
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅