




已阅读5页,还剩20页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
课 程 设 计 任 务 书题 目 单片机课程设计 多功能数字万年历 系 (部) 专 业 班 级 学生姓名 学 号 12 月 02 日至 12 月 06 日 共 1 周指导教师(签字) 系 主 任(签字) 2013年 12 月 06 日一、 设计内容及要求基本内容:以80C51单片机为核心,设计,编程,仿真,调试一个具有显示时间(时、分、月、日、星期),并可以通过按键输入调整的万年历时钟。扩展内容:闰年月、温度显示、时间掉电保留等等其他内容。要求:在仿真软件keilProtues环境中可以正常输入调试及显示运行。二、 设计原始资料教材、元器件数据手册、网上相关资料。三、 设计完成后提交的文件和图表文字部分: 一、设计思路、程序清单(可打印)、安装调试体会、经验、问题,总结。 二、操作使用方法。 图纸部分: 设计原理图、电路图、程序流程图,仿真调试过程抓图、正常工作图片。 仿真环境下的可运行电子文档。以及上述文档的电子稿。 电子文档:上述内容的电子稿。四、进程安排布置任务, 1小时查找资料、熟悉相关电原理图,交流设计思路 一天设计、分析电原理图 。 一天仿真、 调试电路 二天调试程序、写报告。 一天四、 主要参考资料单片机、数字电子技术、模拟电子技术教材及元器件手册 各类网络资源成 绩 评 定 表口试(答辩)成绩报告成绩总评成绩单片机课程设计多功能数字万年历 班级:姓名:学号:指导教师:摘要本设计是基于51系列的单片机进行的电子万年历设计,可以显示年月日时分秒及周信息,具有可调整日期和时间功能。在设计的同时对单片机的理论基础和外围扩展知识进行了比较全面准备。在硬件与软件设计时,没有良好的基础知识和实践经验会受到很大限制,每项功能实现时需要那种硬件,程序该如何编写,算法如何实现等,没有一定的基础就不可能很好的实现。在编写程序过程中发现以现有的相关知识要独自完成编写任务困难重重,在老师和同学的帮助下才完成了程序部分的编写。关键词:时钟电钟;单片机;AT89C51;万年历AbstractThis design is based on the design of electronic calendar 51 series MCU can display YYMMDDHHMMSS and weekly information, with adjustable date and time functions. In the design, while the theoretical basis for the microcontroller and peripheral expansion of knowledge more comprehensive preparation. Hardware and software design, without good foundation of knowledge and practical experience will be greatly restricted, each function requires the kind of hardware implementation, the program how to write, how to implement the algorithm so it is impossible without some good foundation implementation. Found in the programming process with existing knowledge to complete the difficult task of writing alone, with the help of teachers and students to complete the preparation of the next part of the program.Keyword:Clock electric clock; SCM; AT89C51; calenda目录一、课程设计题目1二、内容要求1三、目的和意义1四、总体方案设计思路1五、仿真电路设计25.1 AT89C51的芯片概述25.2 管脚说明35.3 电路设计45.3.1 数码管日历显示电路45.3.2 74HC238片选电路:55.3.3 AT89C51单片机控制电路65.3.4 硬件电路的总体框图6六、软件设计86.1 主程序流程图8七、软件程序9八、仿真调试13九、Proteus ISIS简介14十、实际目标时情况15十一、课程设计心得体会15十二、参考文件16一、课程设计题目以80C51单片机为核心,设计,编程,仿真,调试一个具有显示时间(时、分、月、日、星期),并可以通过按键输入调整的万年历时钟。扩展内容:闰年月、温度显示、时间掉电保留等等其他内容。二、内容要求1.具有年、月、日、星期、时、分、秒等功能;2.时间与阴、阳历能够自动关联;3.具有温度计功能;4.具备年、月、日、星期、时、分、秒校准功能5. 在仿真软件keilProtues环境中可以正常输入调试及显示运行。三、目的和意义1、进行一次实际开发的实验,提高用户实际开发的能力。2、全面利用所学的电子技术方面的知识,进行这次综合的运用,同时深入了解汇编语言在单片机上的运用。3、综合运用所学的单片机原理与应用理论知识,通过实践加强对所学知识 的理解,具备设计单片机应用系统的能力。 4、 通过本次课程设计加深对单片机掌握定时器、外部中断的设置和编程原理的全面认识复习和掌握,对单片机实际的应用作进一步的了解。5、 通过本次试验,增强自己的动手能力。认识单片机在日常生活中的应用的广泛性,实用性。四、总体方案设计思路本实验利用单片机的定时器/计数器定时和记数的原理,通过采用proteus仿真软件来模拟实现。模拟利用AT89C51单片机、LED数码管以及控件来显示日期的变更。选用电子万年历芯片时,应重点考虑功能实在、使用方便、单片存储、低功耗、抗断电的器件。根据选用的电子万年历芯片设计外围电路和单片机的接口电路。在硬件设计时,结构要尽量简单实用、易于实现,使系统电路尽量简单。根据设计的硬件电路,编写控制89C51芯片的单片机程序。通过编程、编译、调试,并实现本设计的功能。在硬件电路和软件程序设计时,主要考虑提高人机界面的友好性,方便用户操作等因素。软件设计时必须要有完善的思路,要做到程序简单,调试方便。单片机电子万年历的制作有多种方法,可供选择的器件和运用的技术也有很多种。所以,系统的总体设计方案应在满足系统功能的前提下,充分考虑系统使用的环境,所选的结构要简单使用、易于实现,器件的选用着眼于合适的参数、稳定的性能、较低的功耗以及低廉的成本。系统的功能往往决定了系统采用的结构,经过成本,性能,功耗等多方面的考虑决定用9个8进制74HC573外接8位数码管显示日期变化,74HC238作为译码器决定某个74HC573工作。芯片采用89C51。从而实现电子万年历的功能。五、仿真电路设计5.1 AT89C51的芯片概述 AT89C51是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序内存,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89C51可为许多嵌入式控制应用系统提供高性价比的解决方案。AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。 其工作电压在4.5V,一般我们选用5V电压。外形及引脚排列如图2所示 图1:89C51的核心电路框图5.2 管脚说明(1)电源及时钟引脚(4个)Vcc: 电源接入引脚Vss:接地引脚XTAL1:晶振震荡器接入的一个引脚(采用外部振荡器时,此引脚接地);XTAL2:晶体振荡器的另一个引脚(采用外部振荡器时,此引脚作为外部振荡器信号的输入端)。(2)控制线引脚(4个)RST/Vpd:复位信号输入引脚/备用电源输入引脚;ALE:地址锁存允许信号输出引脚/编程脉冲输入引脚:EA:内外内存选择引脚/片外EPROM编程电压输入引脚;PSEN:外部程序内存选通信号输出引脚。(3)并行I/O引脚P0.0-P0.7:一般I/O口引脚或数据/低位地址总线复用引脚;P1.0-P1.7:一般I/O口引脚;P2.0-P2.7:一般I/O口引脚或高位位址总线引脚;P3.0-P3.7:一般I/O口引脚或第二功能引脚5.3 电路设计5.3.1 数码管日历显示电路 图1元件参数:1、74HC57374HC573包含八进制3态非反转透明锁存器,是一种高性能硅门CMOS器件。74HC573跟LS/AL573的管脚一样。器件的输入是和标准CMOS输出兼容的,加上拉电阻他们能和LS/ALSTTL输出兼容。74HC573管脚:1脚三态允许控制端低电平有效,1D8D为数据输入端,1Q8Q为数据输出端。74HC573引脚图74HC573引脚图74HC573内部原理图2、数码管我选用的是7SEG-MPX1-CA型号的数码管,共阳,如图5所示:图5 7SEG-MPX1-CA数码管总共有九个引脚,远离八个引脚的一个可以接地,可以接上拉电阻后接地,若把单独的引脚放在右边,从左往右数,依次对应a,b,c,d,e,f,g(小数点)5.3.2 74HC238片选电路:74HC238连接锁存器74HC573选择控制某一个数码管显示。74HC238片选电路图元件参数:74HC238译码器,74HC238也是3-8译码器,输出高电平选中。74HC238引脚图74HC238引脚连接说明5.3.3 AT89C51单片机控制电路5.3.4 硬件电路的总体框图按键与按钮 电路显示电路总体开关复位等辅助电路电源系统CPUAT89C51六、软件设计6.1 主程序流程图CPU系统初始化定时器初始化串口初始化读写日期、时间信息分离日期时间信息显示子程序显示出的时间时间是否正确?日期、时间修改子程序返回七、软件程序 ;定义变量K EQU 30H ;T0定时计数MER EQU 31H ;月计数RER EQU 32H ;日计数SER EQU 33H ;时计数FER EQU 34H ;分计数XQR EQU 35H ;星期计数MMR EQU 36H ;秒计数DA1 EQU 40H ;9个显示单元的显示段码DA2 EQU 41H ;第二个DA3 EQU 42H ;DA4 EQU 43H ;DA5 EQU 44H ;DA6 EQU 45H ;DA7 EQU 46H ;DA8 EQU 47H ;DA9 EQU 48H ;第九个显示缓存 ;定义位标志XSBZ BIT 00H ;T0BZ BIT 01H ;BLBZ BIT 02H ;LED1 BIT P1.4 ; 1;定义端口;程序部分 ORG 0000H LJMP MAIN ORG 0003H ; LJMP WZD0 ORG 0013H ; LJMP T0ZD/ ORG 000BH ;/ LJMP WZD1/ ORG 001BH ;/ LJMP T1ZD/ ORG 0023H ;/ LJMP UAZD ORG 0030HTAB1: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H ;共阴段码 DB 7FH,6FH,77H,7CH,39H,5EH,79H,71H,00HTAB2: DB 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82 ;共阳显示段码 DB 0xf8,0x80,0x90,0x88,0x83,0xa7,0xa1 ;0-F,全灭DB 0x86,0x8e,0xffMAIN: MOV SP,#5FH; MOV A,#0FFH; MOV P0,A ; MOV P1,A MOV P2,A MOV P3,A MOV TMOD,#20H ;T1方式1 MOV TH0,#3CH ;50ms定时 MOV TL0,#0B0H ;/ MOV SCON,#50H ;方式1,开接收/ MOV PCON,#00H ;不加倍 SETB TR0 ;打开T1 SETB ET0 ;开T0中断 SETB EA ;总中断 MOV R7,#9 ;初始化显示缓存区 MOV DPTR,#TAB2 ;送入0-9段码 MOV R0,#30H ;变量首地址 MOV R1,#40H ;显缓首地址CSXS: CLR A ; MOV R0,A ;清变量 MOVC A,A+DPTR ;读入段码 MOV R1,A ;送到显缓 INC R1 ;地址加一 INC R0 ; INC DPTR ; DJNZ R7,CSXS; SETB XSBZ ;置显示标志LOOP: NOP; CALL T0CL ;调定时处理 CALL XSZC ;调显示输出 CALL SJCL ;调数据处理 SJMP LOOP ;SJCL: JB BLBZ,SJCL1 ;数据处理,有要求? RETSJCL1: MOV R0,#40H ;Y,显缓首址 MOV DPTR,#TAB2 ;段码表首地址 MOV A,MER ;月份拆分 MOV B,#10 ;十位数取出 DIV AB ; MOVC A,A+DPTR ;取段码 MOV R0,A ;送显缓 INC R0 ;指向下一显缓 MOV A,B ;取个位 MOVC A,A+DPTR ;取段码 MOV R0,A ;送显缓 INC R0 MOV A,RER ;日拆分 MOV B,#10 ;十位数取出 DIV AB ; MOVC A,A+DPTR ;取段码 MOV R0,A ;送显缓 INC R0 ;指向下一显缓 MOV A,B ;取个位 MOVC A,A+DPTR ;取段码 MOV R0,A ;送显缓 INC R0 ; MOV A,SER ;时拆分 MOV B,#10 ;十位数取出 DIV AB ; MOVC A,A+DPTR ;取段码 MOV R0,A ;送显缓 INC R0 ;指向下一显缓 MOV A,B ;取个位 MOVC A,A+DPTR ;取段码 MOV R0,A ;送显缓 INC R0 ; MOV A,FER ;分拆分 MOV B,#10 ;十位数取出 DIV AB ; MOVC A,A+DPTR ;取段码 MOV R0,A ;送显缓 INC R0 ;指向下一显缓 MOV A,B ;取个位 MOVC A,A+DPTR ;取段码 MOV R0,A ;送显缓 MOV A,XQR ;星期拆分 MOVC A,A+DPTR ;取段码 MOV R0,A ;送显缓 SETB XSBZ ; RETXSZC: JB XSBZ,XSC0 ; 有显示要求? RET ;XSC0: CLR XSBZ ;有,清标志 MOV R7,#9 ;9个单元 MOV R6,#00H ;第一单元位码 MOV R1,#40H ;XSC1: MOV A,R6 ;送出位码 MOV P2,A; MOV A,R1 ;送出段码 MOV P0,A ; INC R1 ; 地址加一 INC R6 ; DJNZ R7,XSC1 ; RETT0CL: JB T0BZ,T0CL0 ; RETT0CL0: CLR T0BZ ; INC K ; MOV A,K ; CJNE A,#10,TCLM; MOV K,#0 ; CPL LED1 INC MMR ; MOV A,MMR ; CJNE A,#120,TCLM ; MOV MMR,#0 ; INC FER ; MOV A,FER ; CJNE A,#60,TCLM1 ; MOV FER,#0 ; INC SER ; MOV A,SER ; CJNE A,#24,TCLM1 ; MOV SER,#0 ; INC XQR ; MOV A,XQR ; CJNE A,#8,T0CL1 ; MOV XQR,#0 ; INC XQRT0CL1: INC RER ; MOV A,RER ; CJNE A,#32,TCLM1 ; MOV RER,#0 ; INC RER INC MER ; MOV A,MER ; CJNE A,#13,TCLM1 ; MOV MER,#0 ; INC MER TCLM1: SETB BLBZ ;TCLM: NOP RET ;中断程序WZD0: NOP ; RETIWZD1: NOP RETI T0ZD: NOP ; MOV TH0,#3CH ;50ms定时 MOV TL0,#0B0H ; SETB T0BZ ; RETIT1ZD: NOP RETIUAZD: NOP PUSH PSW PUSH ACC JNB RI,UAZD1 ; CLR RI ; MOV A,SBUF ; MOV DPTR,#TAB1 ; MOVC A,A+DPTR ; MOV P0,A ;UAZD1: CLR TI ; POP ACC POP PSW RETI END 八、仿真调试通过在Keil下对源程序的编译,改正了其中的很多错误,然后运行,保证源程序的正确性。同时,按原理图选择正确合理的电器元件,画出正确的电路图。然后,连接单片机为AT89C51,选择Options for target,选择OUTPUT子菜单,在Create HEX Fi前打钩,DeBug子菜单中,Settings选择ProteusVSM Simulator,USE前打钩,再次运行文件,成功后在目录下会生成HEX文件,打开Proteus软件,或直接点击DSN檔,双击单片机模板,点击文件夹式样的图标选择对应的HEX驱动文件,然后点击开始,进行调试。顺利实现了单片机数字电子钟的“小时”、“分钟”、“秒”的显示。该电子万年历的显示效果如图九、Proteus ISIS简介Labcenter公司开发的电路分析与实物仿真软件。它运行于Windows操作系统上,可以仿真、分析(SPICE)各种模拟器件和集成电路。该软件的特点是:(1)全部满足我们提出的单片机软件仿真系统的标准,并在同类产品中具有明显的优势。(2)具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS232动态仿真、I2 C调试器、SPI调试器、键盘和LCD系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。(3)目前支持的单片机类型有:ARM7系列、68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各种外围芯片。(4)支持大量的存储器和外围芯片。总之,该软件是一款集单片机和SPICE分析于一身的仿真软件,功能极其强大 ,可仿真ARM、51、AVR、PIC。Proteus启动画面:十、实际目标时情况在仿真,基本满足题目要求,可以做到计时,日期的变更,但在程序变量的设置上出现过问题,还是对这次的设计进度有一定的影响十一、课程设计心得体会课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程.随着科学技术发展的日新日异,单片机已经成为当今计算机应用中空前活跃的领域, 在生活中可以说得是无处不在。因此作为二十一世纪的大学生,掌握单片机的开发技术是十分重要的。此次设计立足于电子技术的实际运用,不断实践,开拓了思维,设计以考查、调研、搜集资料、拟订方案、进行系统规划、编程、仿真、调试的流程,使我深刻的体会到了在学习我们专业的过程中理论与实践相结合的重要性,同时也解决了以前学习比较模糊的专业知识点,使自己掌握的专业知识更加结构化、系统化首先摆在我面前的是要先弄懂所要设计电路的原理,于是最开始我在拿到题目之后就查找了大量的相关的数据,再加上平时理论课的学习以及充分利用了网络资源和在图书馆借了相关的书籍资料,在仔细分析了这个题目所要达到的目的之后,初步确定了原理图。接下来的是单元电路的设计,以及进一步的分析其原理,实现哪些功能需要哪些电路,在此之间我们用到了以前没有用到过的芯片,但最终我们还是弄清楚了其原理。经过几天研究,终于确定好了符合要求的电路。在电路确定之后就需要编写程序,经过多次的修改和仿真,程序也顺利的编写完成。经过这些天的学习我深刻的体会到实际与理论有很大的区别。在我们学习的过程中不
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 商场安全事故培训课件
- 2025年汽车制造行业自动驾驶汽车技术应用前景展望报告
- 2025年电子产品行业可穿戴智能设备市场前景预测报告
- 2025年区块链技术行业应用前景展望报告
- 2025年电子商务行业社交电商平台发展前景研究报告
- 常州市2025江苏常州信息职业技术学院长期招聘高层次人才37人笔试历年参考题库附带答案详解
- 2025年智能汽车技术应用前景与市场规模预测研究报告
- 南昌市2025南昌市市场监督管理局招聘网络技术员以及文员岗位2人笔试历年参考题库附带答案详解
- 九江市2025上半年江西九江市事业单位“才汇九江”高层次人才招聘笔试笔试历年参考题库附带答案详解
- 2025西安数治科技有限公司招聘(13人)笔试参考题库附带答案详解
- 旧楼拆除防尘降噪专项措施
- 2025年中国毛皮服装市场调查研究报告
- 矿山开采运输管理制度
- 律师行业税务问题课件
- 2025年中医适宜技术考试练习题库(含答案)
- DB63T 1599-2025 高海拔高寒地区公路边坡生态防护技术设计规范
- 横向合同终止协议
- Module 9 great inventions Unit 3 教学设计 2024-2025学年外研版九年级英语上册
- 医院危险化学品安全管理制度
- 特殊教育《学习剪指甲》
- 投资担保合同范本7篇
评论
0/150
提交评论