《单片机按键控制流水灯》.doc
文本预览下载声明
一 课程设计要求
1. 完成硬件的焊接
2. 完成程序设计
3. 完成课程设计报告
二 设计报告的要求
1.?????? 用实验报告纸
2.?????? 封皮(姓名 学号 班级 指导老师)
3.?????? 设计要求及设计思路
4.?????? 器件清单
5.?????? 硬件电路图
6.?????? 芯片功能介绍
7.?????? 程序设计流程图及源代码
8.?????? 调试心得
9.?????? 总结
三 设计要求:
?? 利用STC12C5410作为处理器,通过对功能选择按键的操作,选择八种彩灯工作模式,实现对彩灯的控制。
1. 彩灯从左至右逐个点亮(已点亮的灯保持亮)
2. 彩灯从右至左逐个点亮
3. 彩灯从中间向两边逐个点亮
4. 彩灯从从两边向中间逐个点亮
5. 先点亮左边4个,再点亮右边四个,最后电量中间八个
6. 彩灯从左至右 逐两个亮(每次只亮两个)
7. 彩灯从中间向左逐两个亮(每次只亮两个,中间两个始终保持亮),然后从中间向右逐两个点亮
8. 所有的灯以频率0.5hz/s闪烁
按下T1键 彩灯从当前工作模式向工作模式8递加
按下T2键 彩灯从当前工作模式向工作模式1递减
每盏灯保持亮的时间为1s
#includeSTC12C5410AD.H#includemath.h#includeINTRINS.H#define uchar unsigned char#define uint unsigned int/******************************************************************//*??????????????????? 定义端口??????????????????????????????????? *//******************************************************************/sbit LED0=P1^7;sbit LED1=P1^6;sbit LED2=P1^5;sbit LED3=P1^4;sbit LED4=P1^3;sbit LED5=P1^2;sbit LED6=P1^1;sbit LED7=P1^0;sbit LED8=P2^7;sbit LED9=P2^6;sbit LED10=P2^5;sbit LED11=P2^4;sbit LED12=P2^3;sbit LED13=P2^2;sbit LED14=P2^1;sbit LED15=P2^0;/******************************************************************//*??????????????????? 全局变量??????????????????????????????????? *//******************************************************************/uchar flag_state,i;uchar tempH,tempL;/******************************************************************//*?????????????????? 函数声明???????????????????????????????????? *//******************************************************************/void? delay(uint i);void? tim(void);void? key1(void);?void? key2(void); /******************************************************************//*??????????????????? 初始化函数????????????????????????????????????? *//******************************************************************/void init(void){??? TMOD=0x00;//定时器0,选择工作模式1??? IE=0x87;//外部0,定时器0,外部1中断开??? T0=1;??? T1=1;??? P2M0=0x00;//P2,P1口设为推挽模式??? P2M1=0xff;??? P1M0=0x00;??? P1M1=0xff;??? P2=
显示全部