欢迎来到天天文库
浏览记录
ID:38713626
大小:147.50 KB
页数:15页
时间:2019-06-18
《家用多功能定时器设计与制作》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、单片机技术课程设计《单片机技术》课程设计报告项目名称:家用多功能定时器设计与制作第一章绪论1.1设计任务及目标本次课程设计的任务如下:1,完成单片机最小系统板设计与制作。2,编程设计家用多路定时控制器目标:1,具有正常数字钟功能,包括时间校正,具有至少三路定时开关控制功能,每路定时时间可以任意设置2,自主创新的功能。第二章系统电路设计2.1系统总体设计框架结构单片机电源及复位,晶振电路LED显示电路数码管显示电路按键电路第15页共6页单片机技术课程设计2.2系统硬件单元电路设计2.2.1时钟电路设计该电路为时钟电路,主要功能
2、为:与单片机内部振荡器构成振荡电路,为单片机工作提供时序。晶体是12MHz,电容选用33pf,时钟周期为1/12us,机器周期为1/12*12=1us2.2.2复位电路设计电阻为10k,电容为0.1uf,由于电容的阻抗对直流而言比较大,当复位开关未按下时,通过电容和电阻分压使得RESET端为低电平,当按下复位键时,通过两个电阻分压在RESET为高电平,从而实现复位.电阻的作用不是限制电流的大小,而是控制复位时间.电容充电时间与RC的值成正比.第15页共6页单片机技术课程设计2.2.3按键电路设计按键电路为2行6列式矩阵键盘,
3、例如,Shift键将Y0与Line1连接起来,当Y0口为低电平时,如果此时检测到Line1为低电平,则唯一说明Shift键按下,此时记录当前按键键值为1.2.3系统硬件总电路系统总体电路图第15页共6页单片机技术课程设计第三章系统软件设计3.1系统软件流程图主程序流程图按键处理子程序刷新显示LED子程序定时时间检测子程序刷新缓冲区子程序主程序初始化参数后进入循环主程序在初始化参数后进入while循环,不断调用子程序进行刷新缓冲区,刷新显示LED,定时时间检测,按键处理等操作。定时器0中断计时子程序流程图:第15页共6页单片机
4、技术课程设计定时器0中断计时子程序流程图定时器0中断主要用于计时,首先设定一次中断所需的时间,这里为50MS,故初始值为TH0=0x3C;TL0=0xB0;检测50ms计数单元是否加满10次,若是,则LED取反闪烁,若不是则跳过。检测50ms计数单元是否加满20次,若是,则秒计数单元+1,若不是则结束。检测秒计数单元是否加满60次,若是,则分计数单元+1,若不是则结束。检测分计数单元是否加满60次,若是,则时计数单元+1,若不是则结束。检测时计数单元是否加满24次,若是,则时计数单元清零,若不是则结束。结束返回主程序开始重装
5、定时器初值LED半秒闪烁判断秒单元+1是否满60秒?YY秒清零是否计数满20次?时单元+1是否满24时?分单元+1是否满60分?Y分清零Y时清零NNNN结束第15页共6页单片机技术课程设计定时器1中断计时子程序流程图开始重装定时器初值判断扫描显示位num点亮第一位数码管2点亮第三位数码管点亮第二位数码管键盘扫描与记录13Num++结束定时器1中断主要用于刷新缓冲区按键扫描记录重装定时器初值后,判断扫描显示位NUM送相应数码管低电平点亮,同时检测P2^1与P2^2是否出现低电平,若有则结合当前数码管低电平列线唯一确定一个按键,
6、并将赋予它的键值记录下来最后NUM++,结束返回主程序。第15页共6页单片机技术课程设计刷新缓冲区子程序流程图:开始判断状态STATE刷新时分显示单元Case2刷新年月日显示单元刷新定时时间显示单元Case1Case3结束根据当前状态STATE判断应刷新哪个缓冲区,例如:Case1:刷新时分显示缓冲区Case2:刷新定时时间显示缓冲区Case3:刷新年月日显示缓冲区这样做的好处是:1,条理清晰,一目了然。2,不用刷新没有变化的缓冲区,如定时时间单元在非定时状态下。3,提高程序效率,为单片机省电。第15页共6页单片机技术课程设
7、计LED显示子程序:开始判断状态STATE时分状态下LED显示Case2年月日状态下LED显示定时状态下LED显示Case1Case3结束根据当前状态选择LED显示方式,例如:Case1:LED1半秒取反,其他不变。Case2:LED2常亮,其他不变。Case3:LED3常亮,其他不变。第15页共6页单片机技术课程设计数码管显示子程序:开始判断状态STATE时分状态下数码管显示Case2年月日状态下数码管显示定时状态下数码管显示Case1Case3结束根据当前状态选择数码管显示方式,例如:Case1:显示时分缓冲区的值。Ca
8、se2:显示定时时间缓冲区的值。Case3:显示年月日缓冲区的值。第15页共6页单片机技术课程设计按键处理子程序:开始判断状态STATE时分状态下按键处理Case2年月日状态下按键处理定时状态下按键处理Case1Case3结束根据当前状态选择按键处理方式,例如:Case1:时分状态下按键处
此文档下载收益归作者所有