单片机源程序如下:
- #include<reg51.h> //包含单片机寄存器的头文件
- sbit K1=P3^2; //将K5位定义为P1.4
- /*****************************
- 函数功能:延时一段时间
- *****************************/
- void delay(void)
- {
- unsigned int n;
- for(n=0;n<20000;n++)
- ;
- }
- /*****************************
- 函数功能:主函数
- *****************************/
- void main(void)
- {
- unsigned char i;
- i=0; //将i初始化为0
- while(1)
- {
- if(K1==0) //如果S1键按下
- {
- delay(); //延时一段时间 按键消抖
- if(K1==0) //如果再次检测到S1键按下
- i++; //i自增1
- if(i==9) //如果i=9,重新将其置为1
- i=1;
-
- }
- switch(i) //使用多分支选择语句
- {
- case 1: P2=0xfe; //第一个LED亮
- break;
- case 2: P2=0xfd; //第二个LED亮
- break;
- case 3:P2=0xfb; //第三个LED亮
- break;
- case 4:P2=0xf7; //第四个LED亮
- break;
- case 5:P2=0xef; //第五个LED亮
- break;
- case 6:P2=0xdf; //第六个LED亮
- break;
- case 7:P2=0xbf; //第七个LED亮
- break;
- case 8:P2=0x7f; //第八个LED亮
- break;
- default: //缺省值,关闭所有LED
- P2=0xff;
- }
- }
- }
复制代码
12864显示测试程序
1602显示测试程序
1602液晶汇编语言经典例程
24小时时钟程序
8位LED流水灯,花样灯
LCD12864液晶显示实时时钟和温度
LCD1602,ds1302时钟万年历
LCD1602与4x4按键矩阵模块,按键实验
LCD1602显示温度实验
LCD1602液晶显示的实时时钟
LCD1602液晶显示的简单计算器
LED流水灯循环左移
RS232串口显示实时时钟
RS232串口显示实时时钟,ds1302模块
RS232串口显示实时温度数据,ds18b20模块
RS232串口显示红外遥控器键值,红外模块
swtich语句的控制P2口8位LED的点亮状态
中断INT0
中断INT1
串口调试A
串口调试数码管显示
其他
功能十二:板子功能测试
加计数
右移运算流水点亮P2口8位LED
定时器中断00-99秒计数
定时器中断输出脉冲LED显示
循环移位LED显示
按键加减数码管显示
按键加减数码管显示(2)
按键扫描且有键按下发声
按键控制继电器和蜂鸣器
数码管LED显示动态1
数码管LED显示动态2(0-99计数)
数码管动态显示1234
数码管十六进制显示
数码管显示温度DS18B20,带小数!
数码管显示温度DS18B20,整数!
数码管显示静态
数码管显示静态2
数组控制流水灯-2
无源蜂鸣器实验 (祝你平安)
无源蜂鸣器实验(世上只有妈妈好)
流水灯跑马灯
温度控制继电器
点亮一个发光二极管
用if语句控制P2口8位LED的点亮
用字符型数组控制LED灯
用数组的指针控制LED流水灯
简单计数器实验
精确到00.00秒表
红外线接收实验引用定时器
红外线接收实验引用延时
红外遥控控制继电器(遥控器CH键控制)
自增运算控制LED灯
蜂鸣器实验(有源)
蜂鸣器渐变蜂鸣声(有源)
蜂鸣器简单蜂鸣发声(有源)
超炫 20模式带拖尾LED流水灯
输出方波脉冲
键值数码管显示
键盘按键分别控制蜂鸣器和LED灯
键盘控制LED
随意控制点亮多个LED灯方法1
随意控制点亮多个LED灯方法2
音乐例子 梁祝(无源)
音乐例子 简单音符
LCD1602,ds1302时钟万年历.rar
LCD1602与4x4按键矩阵模块,按键实验.rar
功能十二:板子功能测试.rar
红外遥控控制继电器(遥控器CH键控制).rar
所有资料51hei提供下载:
51C语言例子.zip
(5.52 MB, 下载次数: 56)
|