




已阅读5页,还剩7页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
单片机课程设计报告单片机课程设计报告 设计课题:秒表设计设计课题:秒表设计 专业班级:专业班级:10 级电子信息科学与技术级电子信息科学与技术 4 班班 学生姓名:马飞学生姓名:马飞 杨悬悬杨悬悬 夏婷婷夏婷婷 董静静董静静 对应学号:对应学号:080210198 080210227 080210248 080210257 指教教师:郭玉指教教师:郭玉 设计时间:2012 年 6 月 7 日 目录目录 一、课程设计目的和意义和主要功能一、课程设计目的和意义和主要功能 1、目的意义 2、主要功能 二、方案设计与论证二、方案设计与论证 1、时钟电路 2、按钮电路 3、显示电路 4、单片机 5、参数计算 三、硬件电路设计三、硬件电路设计 1、stc89c52rc 单片机的简单介绍 2、接口电路 3、硬件连线图 四、软件设计:数字秒表流程图、数字秒表源程序四、软件设计:数字秒表流程图、数字秒表源程序 五、性能分析五、性能分析 六、结论和心得六、结论和心得 附件(源程序)附件(源程序) 电子秒表设计电子秒表设计 摘要:摘要:本次设计主要是用 stc89c52rc 设计一个 2 位的数码作为“秒表” 。主要 是利用单片机的定时器/计数器定时和计数原理来设计简单的计时器系统,拥有 正确的启动停止、时间调整、清零功能,启动停止清零通过键盘按键控制,并 同时可以用数码管显示数字 0-59,每秒自动加 1,能正确地进行计时。其中软 件系统采用汇编语言编写程序,包括显示程序,计数程序,中断,延时程序等, 并在 keil 中调试运行,硬件系统利用单片机开发板能来实现,简单且易于观察, 在现实生活中应用广泛,具有现实意义。 关键字关键字:单片机 定时器 启动 停止 清零 时间调整 数码管 键盘 一、一、课程设计目的和意义和主要功能课程设计目的和意义和主要功能 1 1、目的意义、目的意义 1、通过本次课程设计加深对单片机课程的全面认识复习和掌握,对单片机课程 的应用进一步的了解。 2、掌握定时器、外部中断的设置和编程原理。 3、通过此次课程设计能够将单片机软硬件结合起来,对程序进行编辑,校 验。 2 2、主要功能、主要功能 显示时间为 0-59 秒,每 1 秒自动加 1,另外设计一个“启动”键、一个 “停止”键和一个“清零”键。能用按钮实现秒表启动、停止、清零功能 二、二、方案设计与论证方案设计与论证 1、方案设计、方案设计 本设计要求进行计时并在数码管上显示时间,分为时钟电路、按钮电 路、显示电路和单片机四大部分,这些模块中单片机占主控地位。其模块电路 如图 2-1 所示。 (1) 、时钟电路、时钟电路 常用的有内部时钟方式和外部时钟方式,但因为本设计中只需要一片单片 机,所以采用内部时钟方式比较简单。 时钟电路如图所示,时钟电路的晶振频率越高,系统的时钟频率越高,单 片机的运行速度也就越快。晶振频率根据设计需要设为 12mhz,又根据谐振性 质,电路中的电容 c1、c2 选择为 30pf 左右。该电容的的大少会影响振荡器频 率的高低、振荡器的稳定性和起振的快速性。 (2) 、按钮电路、按钮电路 主要由 s1 s2 s3 三个按键组成,因为开发板自己默认的键盘是矩阵式,而 我们的设计中只需要用到三个按键,考虑到按键个数比较少,我们将开发板上 的 j11 跳冒由原来的右边调整到左边,让键盘变成独立式。按钮电路中的“启 动”按键由键盘上的 s1 控制,按钮电路中的“停止”按键由键盘上的 s2 控制, 按钮电路中的“清零”按键由键盘上的 s3 控制。 (3) 、具体、具体按键说明按键说明 按“启动”按键,开始计数,数码管显示从 00 开始每秒自动加 1;按“停 止”按键,系统暂停计数,数码管显示当时的计数,并且再次按“启动”键后 就会继续计时;按“清零”按键,系统暂停计数,数码管显示 00,并且再次按 “启动”就会重新计时。 3、显示电路、显示电路 所用的数码管有共阴和共阳之分,本此设计使用的数码管是共阴极,数码 管位控制有 p2 口控制。由于电路内部已经有 74hc138 译码器,译码器的 a、b、c 赋值 07,因此输出端分别是 y0-y7 置“0” ,如 p2=0,则 y0=0,及选 通第一个数码管,所以当我们要显示某一个数码管时,只要将 p2 口赋相应的值 即可。因为秒表只需用两个数码管,我们选用的是第一个和第二个数码管,及 分别给 p2 口送 0 和 1.而数码管显示的数字段码由 p0 口控制,每次需要显示的 数字段码通过查表找到后直接送给 p0 口即可,如当 p0=3f,就会显示数字“0” 。 4、单片机、单片机 单片机的程序可用汇编语言也可用 c 语言,为了提高使用汇编语言的能力, 本设计特用了汇编语言了编写程序主程序流程图如下所示,具体程序见附件。 主程序流程图见软件设计。 5、参数计算参数计算 本设计利用定时器 t0 的计数原理来实现秒表。定时器 t0 工作于方式 1, 寄存器 tmod 低四位 m1m0 应取 01,设定为软件启动定时器,故 gate 取零, 因为用定时功能,c/t 取 0,定时器方式寄存器 tmod 的高四位为无关位,一 般都取 0,所以 tmod 的控制字应取为 01h。晶振频率为 12mhz,t 机 =1us,因为方式 1 最长的定时时间为 65.535ms,达不到 1 秒的要求,因此采 用硬件定时和软件计数相结合的方式来达到 1 秒定时。取 t0 的定时时间 t 定 时=50ms,定时器采用中断方式工作,中断 20 次 50ms 乘 20 等于 1s,设定寄 存器 r0 为软件计数器,初值为 20。秒表的初值存于寄存器 r4 中,个位数存于 20h 单元,十位数存于 21h 单元中。 2、方案论证、方案论证 方案一方案一 : 数字信号处理器(dsp)作为一种可编程专用芯片,是数字信号处理理论实 用化过程的重要技术工具,在语音处理、图像处理等技术领域得到了广泛的应 用。但对于算法设计人员来讲,利用汇编语言或 c 语言进行 dsp 功能开发,具 有周期长、效率低的缺点,不利于算法验证和产品的快速开发。需要模数转换; 受采样频率的限制,处理频率范围有限。 方案二:方案二: 数字电路具有不稳定,容易出问题,很容易受干扰的特点。 方案三:方案三: 单片机具有价格低廉的可擦写 1000 次以上的 16(字)位指令 flash 技术,不 再有报废品产生的优点。高速度、低功耗(a)!具有 sleep(休眠)功能及 cmos 技术,每一指令执行速度可达 50ns(20mhz),而耗电则在 1ma2.5ma 间(典型功 耗,wdt 关闭时为 100na) 。avr 运用 harvard 结构概念 (具有预取指令功能) , 即对程序存储和数据带有不同的存储器和总线。当执行某一指令时, 下一指令 被预先从程序存储器中取出, 这使得指令可以在每一个时钟周期内被执行。超 功能精简指令!具有 32 个通用工作寄存器(相当于 8051 中的 32 个累加器, 克服 了单一累加器数据处理造成的瓶颈现象)及 128-512 个 sram,可灵活使用指令运 算并可用功能很强的 c 语言编程,易学、易写、易移植。 采用 stc89c52rc,片内 rom 全用 flashrom,能以 3v 的超低电压工作;同时 也与 mcs-51 系列单片机内部储存器为 8kbrom 存储空间,同样具有 89c51 的功 能,且具有在线变成可擦除技术,当对电路进行调试时 ,由于错误修改或对程 序的新功能需要烧入程序是,不需要多芯片多次拔插,所以不会对芯片造成损 害,最终采用单片机 stc89c52rc 作为主控系统。 三、硬件设计三、硬件设计 1、stc89c52rcstc89c52rc 单片机的简单介绍单片机的简单介绍 stc89c52rc 是一种低功耗、高性能的片内含有 4kb 快闪可编程/擦除只读 存储器(fperom-flash programmable and eraseable read only memory)的 8 位 cmos 微控制器,使用高密度、非易失存储技术制造,并且与 80c51 引脚和 指令系统完全兼容。 主要性能: 8031cpu 与 mcs-51 微控制器产品系列兼容 4kb 字节快速擦写 flash 程序存储器,擦写次数 1000 次 存储数据保存时间为 10 年 编程频率 3mhz-24mhz,编程电流 1ma,编程电压 vpp 为 5v 或 12v,工作 电压 5v 1 个片内振荡器及时钟电路,静态操作模式工作频率 0mhz-24mhz 程序存储器具有 3 级加密保护 128 字节内部 ram ,128 字节特殊功能寄存器区 32 条可编程 i/o 线 2 个 16 位可编程定时器/计数器 中断结构具有 6 个中断源和 2 个优先级嵌套中断结构 1 个可编程全双工异步串行口 空闲状态维持低功耗和掉电状态保存存储内容 可寻址 64k 外部 ram 和 64k 外部 rom 空间的扩展总线控制电路 2 2、接口电路、接口电路 利用 12mhz 晶振的一个机器周期为 1 微秒,通过循环产生 1 秒时间延迟,扫 描单片机中所存放的时间的值,并通过输出显示在数码管上。 如图: 秒表系统连线图 p0.0p0.7 对应了两个接数码管的 a,b,c,d,e,f,g 和小数点位,p2.6 接显示个 位数的数码管的 3、8 引角,p2.7 则接十位数的。p3.6、p3.7 分别接按键。 2 2、硬件连线图、硬件连线图 数字秒表程序硬件电路连线图 四、软件设计四、软件设计 1 1、数字秒表流程图、数字秒表流程图 2、数字秒表程序(附件)、数字秒表程序(附件) 五、性能分析五、性能分析 所制电路板虽然能实现设计中要求的功能,但是在实际使用中还是存在着 许多缺陷。这块电路板不能随意查看记录的数据,复位后所计数据便会丢失, 不能翻看历史,所计数据组数不能满足现实需要。 六、结论与心得六、结论与心得 其实刚接看到题目时,有点迷茫,后来指导老师向我们具体讲解该怎么去做。 对于 keil 软件和烧写软件,之前我们根本不了解,通过学习光盘中的资料怎么下 载和使用这两个软件,在这其中我们也遇到了困难,开始总是不能理解说明书上 的步骤,慢慢讨论学习将软件下载成功,我们四个人就在一起摸索该怎样使用, 反复看光盘给的资料后终于学会了如何使用两个软件。预期的设计目的是:能够 实现时钟的基本功能,正常显示秒,于是我们用汇编语言写源程序。开始编译时 没有发现错误,可是烧写到开发板上时,却不能实现基本的功能,经过多次修改 之后还是不能解决。在写程序的过程中,我们互相讨论方案,寻求解决途径,可 是还是无法实现相关的功能。我们有点急了,很迷惑了,我们经讨论后,决定找 郭玉老师。老师给我们提出了意见和建议,在老师的帮忙下,我们成功地编写了 一个没有实现启动停止、时间调整和清零功能的秒表程序。现在就是要实现要求 的那些扩展功能,这个困扰了我们很久,因为老师的建议是利用中断写,而我们 自己一直想的使用按键控制,最终在查得相关的资料后,我们还是用按键成功写 出源程序,并烧尽单片机中。 通过这次的电子秒表设计,我们感觉到了合作的重要性。通过合作,我们 找到了最佳的解决方案,有问题一起解决,有疑问一起讨论。感到合作的力量 很强大!在设计的过程中,我们遇到了很多困难,失败过许多次,可最后还是成 功了。我们知道,只要愿意努力,只要不放弃,我们会成功的,所以在以后的 学习与生活中我们都要保持着这种精神。 附件:附件:实现数字秒表工作源程序实现数字秒表工作源程序 strt equ p3.0 ;启动键控制口 stp equ p3.1 ;停止键控制口 clrr equ p3.2 ;清零键控制口 org 00h ljmp main ;初始化程序入口地址 org 0bh ;定时器 t0 的入口地址 ljmp intt ;加一子程序入口地址 main:mov r0,#20 ;软件计数器置初值 mov r4,#0 ;秒表时间置初值 mov 21h,#0 ;个位数存储单元清零 mov 22h,#0 ;十位数存储单元清零 mov tmod,#01h ;定时器 t0 工作于方式 1 mov th0,#3ch ;置 50ms 定时初值高位 mov tl0,#0b0h ;置 50ms 定时初值低位 setb ea ;开 cpu 总中断 setb et0 ;开 t0 中断 k1: lcall disp ;调显示子程序 jb strt,k2 ;判断启动键是否按下 lcall disp ;按下,调用显示子程序 jnb strt,$ ;判断启动键是否释放 ajmp start ;释放启动键,跳转到启动指令段 k2: lcall disp ;启动键未按下,调用显示子程序 jb stp,k3 ;判断停止键是否按下 lcall disp ;按下,调用显示子程序 jnb stp,stop ;判断停止键是否释放,释放则跳转到停止 指令段 k3: lcall disp ;停止键未按下,调用显示子程序 jb clrr,k1 ;判断清零键是否按下,未按下判断“启动” 键是否按下 lcall disp ;按下清零键,调用显示子程序 jnb clrr,clear ;判断清零键是否释放,释放则跳转到清零 指令段 ajmp k1 ;清零键释放判断是否重新按下“启动”键 start: setb tr0 ;启动 t0 ajmp k1 ;跳转到启动键是否按下的指令段,不断判 断 stop: clr tr0 ;关闭 t0 ajmp k2 ;跳转到停止键是否按下的指令段,不断判 断 clear:clr tr0 ;关闭 t0,以便显示子程序显示此时的秒表 数 mov r4,#0 ;秒表时间清零 ajmp k1 ;跳转到判断“启动”指令段 intt:mov th0,#3ch ;重装定时初值 mov tl0,#0b0h djnz r0,loop ;中断二十次 mov r0,#20
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年中国中铁集团校园招聘面试宝典与模拟题集
- 2025年装卸搬运服务项目合作计划书
- 护理消化道早癌课件
- 2025年贵金属靶材项目建议书
- 2025年低熔点金属胶项目建议书
- 抢救课件教学课件
- 抢修站员工安全培训课件
- 2025年军迷用品项目发展计划
- 抗癫痫药和抗惊厥药课件
- 轮胎考试题及答案
- 统编版(部编版)语文二年级上册 作业设计《小蝌蚪找妈妈》(含答案)
- 《乌鲁木齐市国土空间总体规划(2021-2035年)》
- 2024年新版七年级上册道德与法治第一课 开启初中生活1.1 奏响中学序曲 课件
- 2024年物业经理(初级)职业鉴定考试题库(含答案)
- 炼焦厂推焦车司机岗位技术操作规程
- 儿科急危重症抢救预案及流程
- 新商品房购买合同示范文本1合集
- 正硅酸乙酯的水解、缩合过程研究
- JT-T-332-1997船用塑钢门窗-PDF解密
- 道德与法治三年级上册人教版教案全册
- 北京丰台长峰医院重大火灾事故调查报告
评论
0/150
提交评论