《单片机原理及应用》课程设计报告专业电子信息工程班级姓名指导老师二0一二年十二月二十五日课程设计任务书一、设计题目:答辩倒计时器二、设计要求设计一个答辩倒计时器,用2位数码管显示剩余分钟,2位数码管显示剩余秒,复位后显示10.00表示设定10分钟,并可加减修改,按开始/取消按钮开始倒计时,再次按开始/取消按钮则复位,时间到则蜂鸣音提示。
总体要求如下:1、方案论证,确定总体电路原理图。
2、元器件选择,设计PCB图(或用万能电路实验板搭线)。
3、绘制程序流程图,编写汇编语言源程序(或C语言源程序)。
4、安装调试,实现倒计时器的基本功能。
三、设计报告内容1、写出设计方案(包括方案对比,方案确定),给出完整的电路原理图和设计程序流程图。
2、对所设计方案的实现进行全面分析。
3、编程调试方法和程序清单。
4、安装调试过程,出现的各种现象,总结经验和体会。
5、进一步完善的设想。
目录一、课程设计目的 (1)二、课程设计题目描述和要求 (1)三、课程设计报告内容 (1)3.2 硬件电路 (3)3.2.1 复位电路 (4)3.2.2 晶振电路 (4)3.2.3 单片机最小系统 (4)3.2.4 硬件流程图 (5)3.3 源程序设计 (5)3.3.1 程序清单 (5)3.3.2 程序流程图 (7)四、设计过程 (7)4.1实践步骤 (7)4.2实践标准 (8)4.3系统调试 (8)4.3.1 硬件调试 (8)4.3.2 软件调试 (9)五、设计报告总结 (10)六、总结经验和体会 (11)七、进一步完善的设想 (12)八、参考书目 (13)附录一:成品效果图 (13)附录二:倒计时器源程序(C语言) (14)一、课程设计目的1、巩固和加深单片机原理课程知识的理解和运用。
2、进一步提高学生单片机应用系统的设计能力。
3、培养学生综合分析问题、发现问题和解决问题的能力。
二、课程设计题目描述和要求设计一个答辩倒计时器,用2位数码管显示剩余分钟,2位数码管显示剩余秒,复位后显示10.00表示设定10分钟,并可加减修改,按开始/取消按钮开始倒计时,再次按开始/取消按钮则复位,时间到则蜂鸣音提示。
总体要求如下:1、方案论证,确定总体电路原理图。
2、元器件选择,设计PCB图(或用万能电路实验板搭线)。
3、绘制程序流程图,编写汇编语言源程序(或C语言源程序)。
4、安装调试,实现倒计时器的基本功能。
三、课程设计报告内容3.1元器件清单及所用仪器设备表1-1 设备清单设备名称单组数量数量功能数字万用表可共用1台5V直流稳压电源可用实验箱代、可共用1台ISP下载线可共用4根装Keil开发软件和ISP51下计算机单片机实验室均可用40台载软件元器件名称规格/型号单组数量金属膜电阻1K、1/4W 1金属膜电阻10K、1/4W 5电阻排200Ω*8(SIP9) 1瓷片电容30pF2独石电容0.1µF/63V3电解电容10µF/16V2蜂鸣器Φ10,直流5V 1三极管90131石英晶振6MHz(矮封装) 1集成电路AT89S51 DIP40 1 7407 DIP14 1IC插座40PIN DIP 1 14PIN DIP 1数码管4位一体、红光、共阴极0.5” 1 接插件IDC10(与ISP下载线接口)DC3-10P 1套按键国产欧姆龙轻触按键 3 万能电路板17cm*22cm 1块导线0.3mm2单股导线4m 焊锡丝 1.0mm 2m 松香表1-2 元器件清单表1-3 工具清单3.2 硬件电路倒计时器硬件电路原理图如下图所示。
EA/VPP31X119X218R ES ET9R D 17WR 16INT012INT113T014T115P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78P0.039P0.138P0.237P0.336P0.435P0.534P0.633P0.732P2.021P2.122P2.223P2.324P2.425P2.526P2.627P2.728PSEN 29ALE/P30TXD 11R XD10VSS20VCC40U1AT89S 511A 11Y 22A 32Y 43A 53Y 6Vss74Y 84A 95Y 105A 116Y126A 13Vcc 14U37407234567891R P1200 x 8Y16M HzC 430p C 530pC 20.1u F+5V+5V+5V+5V C 30.1u FK1,K2: 调整设定R S TS C K M I S OM O S IC 110uR 21K+5VK1K2K3R 110K+5VR 410KR 510KR 310K+5V12345678910JP1程序下载接头eabfcgdC 4C 3C 2C 1h4LEDT19013B 1倒计时器参考电路图K3: 开始 / 取消R 610K图1 电路原理图工具名称 单组数量 镊 子 1把 电铬铁 1支 铬铁架 1个 吸锡枪 1把 斜口钳1把3.2.1 复位电路复位电路产生复位信号,复位信号送入 RST 后还要送至片内的施密特触发器,由片内复位电路在每个机器周器的 S5P2 时刻对触发器输出采样信号,然后由内部复位电路产生复位操作所要的信号。
一般的复位电路可分为上电自动复位和按键复位,我们在此选用的是上电复位。
上电自动复位原理:RST 引脚是复位信号的输入端,只要高电平的复位信号持续两个机器周期以上的有效时间,就可以使单片机上电复位。
上电自动复位是通过电容充电实现的,上电瞬间,RST 端电位与Vcc 相同,随充电电流的减少,RST 的电位逐渐下降,直到复位信号无效。
按键复位在此不在作过多的介绍,其原理和上电复位是相同的。
但其采用的是脉冲复位电路和电平复位电路两种。
3.2.2 晶振电路晶振与单片机的脚XTAL0和脚XTAL1构成的振荡电路中会产生偕波(也就是不希望存在的其他频率的波),这个波对电路的影响不大,但会降低电路的时钟振荡器的稳定性。
为了电路的稳定性起见,ATMEL公司只是建议在晶振的两引脚处接入两个10pf-50pf的瓷片电容接地来削减偕波对电路的稳定性的影响,所以晶振所配的电容在10pf-50pf之间都可以的。
但是主流是接入两个30pf的瓷片电容,此次电路用30PF。
3.2.3 单片机最小系统最小系统就是单片机在发挥具体测控功能时所必须的组成部分。
如下图所示为最小系统方框图:图2 单片机最小系统方框图3.2.4 硬件流程图倒计时器硬件电路流程图如下图所示。
图3 倒计时器硬件电路流程图3.3 源程序设计3.3.1 程序清单初始化:uchar Count = 0;uint n=0;uint m=0;uchar min = 10 ;uchar sec = 0 ;uchar table[10] = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; //数码管的段码编码 (0-9)uchar table_d[10] = {0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef}; //带点数码管的段码编码 (0-9)sbit BELL = P1^2; //设置P1.2口,为控制蜂鸣器发声的引脚sbit KEY1 = P3^2; //设置P3.2 P3.3 P3.4口为按键引脚sbit KEY2 = P3^3;sbit KEY3 = P3^4;函数名:void Delay(uint del) //延时子程序,延时时间为 1ms * delvoid Time0_Init() //初始化定时器 11.0592M 50msvoid time0() interrupt 1 //中断void display(void) //数码管每位动态显示void DisLED_1() //复位函数void DisLED_2() //时间增加void DisLED_3() //时间减少void DisLED_4() // 时间为零的显示void KEY() //检测按键void main() //主函数主函数:void main() //主函数{Time0_Init();while(1){display();KEY();if(min==0 && sec==0){DisLED_4(); //调用数码管显示代码m=0;while(100-m){display();BELL = 0;Delay(1); //延时1毫秒BELL = 1;Delay(1); //延时1毫秒m++;}TR0 = 0;while(KEY1!=0){min = 0;sec = 0;display();}}}3.3.2 程序流程图图4 倒计时器主程序流程图 四、设计过程4.1实践步骤1、根据实验要求,完成电路原理图和应用程序流程图。
2、编写汇编语言(或C 语言)源程序。
3、根据所设计的原理图,完成电路板的焊接,在进行测试。
4、硬件软件综合调试,如果不能实行,在分析哪里出了问题,纠正问题在去测试,直到测试完成,完善其设计功能。
单 片 机 程序下载口 外围电路 排阻 驱动电路 数码管 蜂鸣器4.2实践标准1、完成电路的制作,排版与焊接,并进行测量是否能正常的运行;2、完成程序的设计,并进行程序调试是否出现错误;3、硬件与软件结合进行调试看是否能达到课程设计目的;4、最后实现其设计要求和功能,装配工艺美观,电路运行稳定、可靠。
4.3系统调试4.3.1 硬件调试在硬件调试时,先有万用表检查印制电路的焊接情况,检查是否有虚焊,是否有短路。
在检查无误之后通电检查LED数码管的显示。
总体电路正常,达到题目的要求。
实际电路下图:图5 实际电路图完成了硬件的设计、制作和软件编程后,要使系统能够按设计意图正常运作,必须进行系统调试。
系统调试包括软件调试和硬件调试。
不过,作为一个小计算机系统,其运行是软硬件相结合的,因此,软硬件的调试也是不可能绝对分开的,硬件的调试常常需要利用调试软件,软件的调试也可能需要对硬件的测试和控制来进行。
1、脱机检查。
用万用表逐步按照电路原理图检查印制电路中所有器件的各引脚,尤其是电源的连接是否正确:检查数据总线、地址总线和控制总线是否有短路等故障,顺序是否正确;检查各开关按键是否能正常开关,是否连接正常;各限流电阻是否短路等内容。
为了保护芯片,应先对各IC电位进行检查,确定其无误后再插入芯片检查。
2、联机调试。
暂时拔掉89S51芯片,将仿真器的引脚插入89S51的芯片插座进行调试,检验键盘/显示接口电路是否满足要求设计。
可以通过一些简单的测软件来查看接口工作是否正常。