按键控制流水灯设计报告
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
按键控制流水灯设计报告
一、项目名称:
按键控制流水灯
二、目的:
通过对按键控制发光二极管项目的改变,设计出自己的方案,来加深对硬件技术的理解,同时锻炼关于硬件的编程技术,掌握keil等软件的使用。
三、硬件原理:
数码管与发光二极管硬件电路图:
芯片引脚电路图:
按键与导航按键:
四、软件原理:
变量Key1,Key2,Key3分别代表第一个、第二个、第三个按键,值为零时表示按下了该按键。那么可以写出一个判断条件,当这三个变量的值分别为1 时,就分别调用三个不同的函数,三个函数分别表示LED灯的三种不同的闪亮方式。
五、软件流程:
首先判断哪一个变量的值为1,即哪一个按键被按下,然后就调用相应的函数。
六、关键代码:
void main()
{
Init();
P0=0x00;
while(1){
//其他两个key通过中断实现
// if(Key3==0)
// {
// G_count=0;
// while(G_count!=200);//延时10ms
// while(!Key3)//等待直到释放按键
// {
// P0=0x33;
// }
// }
if(Key1==0)fun2();
if(Key2==0)fun3();
if(Key3==0)fun4();
}
}
七、操作说明:
当把软件下载到电路板以后,给它插上电源,然后按下不同的按键,可以观察到LED灯亮。
八、存在的问题:
原先的main()函数中只有KEY3,并没有Key1和Key2,所以暂时不清楚如何感应到按键一和按键二什么时候按下。
九、后续设计计划:
可以设计更炫酷的亮灯方式。