流水灯编程.docx
- 文档编号:24908271
- 上传时间:2023-06-02
- 格式:DOCX
- 页数:12
- 大小:394.07KB
流水灯编程.docx
《流水灯编程.docx》由会员分享,可在线阅读,更多相关《流水灯编程.docx(12页珍藏版)》请在冰豆网上搜索。
流水灯编程
流水灯编程
一.要求:
流水灯,每次亮两个灯,从左往右循环。
每个周期中,首先LED1、2亮,延时1秒后,LED3、4亮,延时1秒后,LED5、6亮,延时1秒后,开始下一个周期。
2.设计:
1.While
(1){ (循环语句)
L(); (表示前两个灯)
M(); (----中间两个灯)
R(); (-----后两个灯)
}
3.实现
1.在桌面上建立新建文件夹,并在该新建文件夹下建立项目(流水灯)。
2.打开keil
3.Keil下建立一个工程(或者叫项目)
点击工程,再点击打开工程
*建立.c文件(C表示语言编写)
4.打开目录,右键单击打开添加文件中的源代码添加到源代码组
5.
6.严格按以下步骤,编译
1)
voidmain()
{
}
首先输入main()函数
注意:
边输入边用
*看看有没有错误和警告,每一步都要这样做
2)
main()
{
while
(1)
{
}
}
用Tab键控制格式,不用空格键
7.在
A()
{ LED0=0;
LED1=0;
LED2=1;
LED3=1;
LED4=1;
LED5=1;
}
B(){}
C(){}
在ABC大括号里编译其状态
8.
A()
{LED0=0;
LED1=0;
LED2=1;
LED3=1;
LED4=1;
LED5=1;
}
B()
{LED0=1;
LED1=1;
LED2=0;
LED3=0;
LED4=1;
LED5=1;
}
C()
{LED0=1;
LED1=1;
LED2=1;
LED3=1;
LED4=0;
LED5=0;
}
main()
{
while
(1){
A();
B();
C();
}
}
仿真
9.
delay1s() (延时)
{}
main()
{
while
(1) (循环语句)
{
A();
delay1s();
B();
delay1s();
C();
delay1s();
}
}
10.定义单片机端口
#include
sbitLED0=P1^0;
sbitLED1=P1^1;
sbitLED2=P1^2;
sbitLED3=P1^3;
sbitLED4=P1^4;
sbitLED5=P1^5;
A()
{LED0=0;
LED1=0;
11.编译延时语句
delay1s()
{
unsignedintn=1000;
unsignedchari;
while(n--){
for(i=124;i>0;i--);
}
}
12.
#include
sbitLED0=P1^0;
sbitLED1=P1^1;
sbitLED2=P1^2;
sbitLED3=P1^3;
sbitLED4=P1^4;
sbitLED5=P1^5;
voidchen1()
{
LED0=0;
LED1=0;
LED2=1;
LED3=1;
LED4=1;
LED5=1;
}
voidchen2()
{
LED0=1;
LED1=1;
LED2=0;
LED3=0;
LED4=1;
LED5=1;
}
voidchen3()
{
LED0=1;
LED1=1;
LED2=1;
LED3=1;
LED4=0;
LED5=0;
}
delays()
{
unsignedintn=1000;
unsignedchari;
while(n--)
{
for(i=124;i>0;i--);
}
}
void main()
{
while
(1)
{
chen1();
delays();
chen2();
delays();
chen3();
delays();
}
}
13.看程序是否有问题
0个错误,0个警告(有警告程序可以执行)
14.用Keil检测程序
1)
2)
多按几次,看循环效果
3)打开外围设备,再进入1/0-Ports再进p0rt1
看灯的循环状态
4)打开目标1,点击第一项,在输出中看是否产生HEX文件。
再进行一次下序操作,使其产生HEX
15.proteus仿真
打开proteus进行仿真,看仿真效果与程序是否一致
1)D1,D2亮
2)D3,D4亮
3)D4,D5亮
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 流水 编程