




已阅读5页,还剩25页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 单片机原理及应用单片机原理及应用 课程设计报告课程设计报告 题目 倒数计数器题目 倒数计数器 专 业 电气工程及其自动化 班 级 10 电气 学生姓名 李启应 学 号 101401010202 指导教师 郑老师 胡老师 时时 间间 2013 年 6 月 19 日 20 13 年 6 月 28 日 2 目录目录 第一章第一章 设计题目分析设计题目分析 方案及元器件选择方案及元器件选择 3 1 1 设计任务及要求 3 1 2 方案选择 4 1 3 元器件选择 4 第二章第二章 系统电路设计系统电路设计 5 2 1 设计说明 5 2 2 部分硬件方案论述 5 2 3 硬件连接图 6 2 4 元件清单 7 2 4 1 AT89C51 芯片 7 2 4 2 字符型 LCD1602 8 2 4 3 晶振电路 10 2 4 4 按键控制模块 11 2 4 5 其他元件 12 2 5 绘制过程中遇到的问题及解决办法 13 第三章第三章 系统软件设计系统软件设计 14 3 1 软件设计 14 3 2 编程过程中遇到的问题及解决办法 15 第四章第四章 连接调试连接调试 16 4 1 系统的仿真与调试 16 第五章第五章 心得体会心得体会 17 参考文献参考文献 19 附录附录 19 3 第一章第一章设计题目分析设计题目分析 方案及元器件选择方案及元器件选择 1 1 设计任务及要求设计任务及要求 设计任务 利用 AT89C51 单片机结合 LED 显示器设计一个简 易的倒数计数器 可用来煮方便面 煮开水或小睡片刻等 做一小 段时间倒计数 当倒计数为 0 时 红色 LED 灯闪烁 通知倒计数终 了 该做应该做的事 设计要求 定时闹钟的基本功能如下 显示格式为 分分 秒秒 用 4 个按键操作来设置当前想要倒计数的时间 一旦按下键则 开始倒计数 当计数为 0 时 发出一阵音乐声 程序执行后工作指示灯 LED 闪烁 表示程序开始执行 按下操 作键 K1 K4 动作如下 K1 可调整倒计数的时间 1 60 分钟 K2 设置倒计数的时间为 5 分钟 显示 0500 K3 设置倒计数的时间为 10 分钟 显示 1000 K4 设置倒计数的时间为 20 分钟 显示 2000 按下 K1 键则在 LED 上显示出设置画面 此时 若 a 按操作键 K2 增加倒计数的时间 1 分钟 b 按操作键 K3 减少倒计数的时间 1 分钟 c 按操作键 K4 设置完成 本题可以考虑用 LCD 来实现 则显示更加清楚 4 可扩充功能 增加时钟及闹铃功能 增加秒表计数功能 增加万年历显示 年月日 增加多组倒计数功能 1 2 方案总体思路方案总体思路 用单片机 8051 控制程序执行 通过 LCD 动态扫描来显示倒计时 每次执行中断时判断计时是否继续倒计时 同时通过按键扫描的方 式来判断是否有输入更改倒计时的控制信息 通过 8051 的处理来达 到对倒计时的更新 当倒计时结束时 驱动蜂鸣器发出一首音乐 1 3 元器件选元器件选 音乐倒数计数器倒数所用到的元件有 单片机芯片 AT89C51 LCD1602 液晶显示 蜂鸣器 LED 灯 按键 电阻 电容 晶振等 5 第二章第二章系统电路设计系统电路设计 2 1 设计说明设计说明 音乐倒数计数器倒数的时间通过数字显示 控制器使用单片机 AT89C51 该计数器系统主要由计数器模块 LCD 显示器模块 蜂鸣 器模块 键盘模块 复位模块等部分组成 总体设计方框图如图 1 所示 图 1 总体设计方框图 复位电路 键盘 AT89C51 LCD1602 蜂鸣器 6 2 2 部分硬件方案论述部分硬件方案论述 LCD1602 显示方式的方案比较 方案一 采用花样显示 花样显示是指 LCD 显示某一屏字符时 采取从左到右或者是从右到左的整屏移动的显示方式 在这种显示 方式下 给人的感觉就是程序是在执行的 同时如果控制好了移动 一屏的时间间隔的话 在整体视觉上可以达到很好的效果 方案二 采用静态显示 静态显示是指 LCD 显示某一屏字符时 时钟保持当前字符的显示 不使用移屏显示 便于控制 同时能够 满足正常的显示效果 由于在显示中存在播放时间的动态变化 这样的话 即使是不产生 整屏移动 也能给人动态感 也易于控制 基于以上各种特点 我 选择了方案二 2 3 硬件连接图硬件连接图 电路硬件连接图主要以单片机芯片 AT89C51 作为核心控制器 由字符型 LCD1602 显示器 LED RED 灯 按键控制模块以及其他元 件 电容电阻元件 电解电容元件 等组成 且按键控制模块设计 中使用单个按键实现单个功能 控制方式实现较简单 硬件连接图 如图 2 所示 7 图 2 电路硬件连接图 2 4 元件清单元件清单 2 4 12 4 1 AT89C51AT89C51 芯片芯片 AT89C51 芯片图如下图 3 所示 8 图 3 AT89C51 芯片图 主要性能 与 MCS 51 单片机产品兼容 8K 字节在系统可编程 Flash 存储 器 1000 次擦写周期 全静态操作 0Hz 33Hz 三级加密程序 存储器 32 个可编程 I O 口线 三个 16 位定时器 计数器八个中 断源 全双工 UART 串行通道 低功耗空闲和掉电模式 掉电后中 断可唤醒 看门狗定时器 双数据指针 掉电标识符 功能特性描述 AT89C51 是一种低功耗 高性能 CMOS8 位微控制器 具有 8K 9 在系统可编程 Flash 存储器 使用高密度非易失性存储器技术制造 与工业 80C51 产品指令和引脚完全兼容 片上 Flash 允许程序存储 器在系统可编程 亦适于常规编程器 在单芯片上 拥有灵巧的 8 位 CPU 和在线系统可编程 Flash 使得 AT89C51 为众多嵌入式控制 应用系统提供高灵活 超有效的解决方案 AT89C51 具有以下标准 功能 8k 字节 Flash 256 字节 RAM 32 位 I O 口线 看门狗定 时器 2 个数据指针 三个 16 位 定时器 计数器 一个 6 向量 2 级中断结构 全双工串行口 片内晶振及时钟电路 另外 AT89C51 可降至 0Hz 静态逻辑操作 支持 2 种软件可选择节电模式 空闲模 式下 CPU 停止工作 允许 RAM 定时器 计数器 串口 中断继续 工作 掉电保护方式下 RAM 内容被保存 振荡器被冻结 单片机 一切工作停止 直到下一个中断或硬件复位为止 8 位微控制器 8K 字节在系统可编程 Flash 2 4 22 4 2 字符型字符型 LCD1602LCD1602 字符型 lcd1602 如下图 4 所示 图 4 LCD1602 图 1602 字符型 LCD 通常有 14 条引脚线或 16 条引脚线的 LCD 多 出来的 2 条线是背光电源线 VCC 15 脚 和地线 GND 16 脚 其控 10 制原理与 14 脚的 LCD 完全一样 各引脚符号及其功能表如下表 1 所 示 表 1 LCD 各引脚及其功能表 引脚符号功能说明 1VSS 一般接地 2VDD 接电源 5V 3V0 液晶显示器对比度调整端 接正电源时对比度最弱 接地电源时对比度最高 对比度过高时会产生 鬼 影 使用时可以通过一个 10K 的电位器调整对比度 4RS RS 为寄存器选择 高电平 1 时选择数据寄存器 低 电平 0 时选择指令寄存器 4RS RS 为寄存器选择 高电平 1 时选择数据寄存器 低 电平 0 时选择指令寄存器 5R W R W 为读写信号线 高电平 1 时进行读操作 低电 平 0 时进行写操作 6E E 或 EN 端为使能 enable 端 下降沿使能 11 7DB0 低 4 位三态 双向数据总线 0 位 最低位 8DB1 低 4 位三态 双向数据总线 1 位 9DB2 低 4 位三态 双向数据总线 2 位 10DB3 低 4 位三态 双向数据总线 3 位 11DB4 高 4 位三态 双向数据总线 4 位 12DB5 高 4 位三态 双向数据总线 5 位 13DB6 高 4 位三态 双向数据总线 6 位 14DB7 高 4 位三态 双向数据总线 7 位 最高位 也是 busy flag 15BLA 背光电源正极 16BLK 背光 电源负极 2 4 32 4 3 晶振电路晶振电路 时钟是单片机的心脏 单片机各功能部件的运行都是以时钟频 率为基准 有条不紊地一拍一拍地工作 因此 时钟频率直接影响 单片机的速度 时钟电路的质量也直接影响单片机系统稳定性 常 用的时钟电路有两种方式 一种是内部时钟方式 另一种是外部时 钟方式 12 单片机必须在时钟的驱动下才能工作 在单片机内部有一个时 钟振荡电路 只要外界一个振荡源就能产生一定的时钟信号送到单 片机内部的各个单元 决定单片机的工作速度 本系统使用的是内 部时钟方式 晶振电路如下图 5 所示 图 5 晶振电路图 一般选用石英晶体振荡器 此电路在加电大约延迟 10ms 后振 荡器起振 在 XTAL2 引脚产生幅度为 3V 左右的正弦波时钟信号 其振荡频率主要由石英晶振的频率确定 电路中两个电容 C1 C2 的作用有两个 一是帮助振荡器起振 二是对振荡器的频率进行微 调 本系统的 C1 C2 的值为 30pf 单片机在工作时 有内部振荡器产生或由外直接输入的送至内 部控制逻辑单元的时钟信号的周期称为时钟周期 其大小是时钟信 号频率的倒数 f 表示 图 5 2 中的时钟频率为 12MHz 即 f 12MHz 则时钟周期为 1 12us 2 4 42 4 4 按键控制模块按键控制模块 按键用于控制数码显示 LCD 显示 扬声器等模块的工作 通 过扫描按键是否按下 来设定各模块的工作情况 使各模块可以在 13 按键的控制下 有序地进行工作 设计中使用单个按键实现单个功 能 属于较为简单的控制方式 在多功能系统设计的试验中我们使 用四个按键分别与单片机的 p1 0 p1 1 p1 2 p1 3 相连 通过按 下相应的按键来处理相应的程序 如下图 6 所示 图 6 按键控制模块图 2 4 52 4 5 其它元件其它元件 其它元件图如下图 7 所示 14 图 7 其他元件图 2 5绘制中遇到的问题及解决办法绘制中遇到的问题及解决办法 在绘图的过程中主要出现的问题是有些元器件在 protues 中找不 到 出现这样的问题是对 protues 软件的应用不是很熟悉 当遇到找 不的元器件时 就只有通过网络来查找 15 第第 3 3 章章 系统软件设计系统软件设计 3 13 1 软件设计软件设计 音乐倒数计数器软件设计部分包括程序流程图以及源程序 主 程序开始初始化 然后扫描键盘 复位电路和计数器 当键盘按键 有按下时 调整计数器值 LCD 显示新值 当复位键有按下时 计 数器复位为初值 重新倒计数 当计数器值倒计为 0 时 蜂鸣器发 出声音 计数器停止倒计 程序结束 流程图如图 8 图 9 及图 10 所示 源程序见附录 16 开始 初始化 扫描键盘扫描复位电路扫描计数器 按键是否有按下 调整计数器值 复位 LCD显示计数值 计数值是否为零 蜂鸣器发声 计数器停止倒计数 结束 N Y N Y N Y 图 8 主程序流程图 图 9 LCD 显示流程图 图 10 按键流程图 开始 是否有程序执行 LCD闪动 是否有键按下 LCD显示相应时间 复位键是否按下 LCD显示倒计时的分钟 和秒数 是否有键按下 LCD显示相应设置画面 退出 初始化 按键扫描 有键按下 按键处理 确定 模式 时间显示模式 根据按键状态显示相应 时间段 时间修改 模式 根据按键状态修 改时间 开始 Y N N Y N Y N Y Y N Y N Y 17 3 23 2 编程过程中遇到的问题及解决办法编程过程中遇到的问题及解决办法 编写的源程序见附录所示 在编程的过程中 遇到了如下问题 一 按键的设置 怎样设置按键满足题目要求 二 蜂鸣器的铃声设置 在倒数的时间到了后铃声响 怎么在 程序中编写等问题 解决办法是同过网络和向老师请教帮助解决问题 如音乐铃声 是通过载入不同的计数初值 产生频率不同的方波 输入到蜂鸣器 SOUNER 中 使其发出频率不同的声音 本设计中单片机晶振为 1 0592MHz 通过计算各音阶频率 可得 1 2 3 4 5 6 7 共 7 个音应赋给定时器的初值为 64580 64684 64777 64820 64898 64968 65030 在此基础上 可将乐曲的简谱转化为单片机可以 识别 的 数组谱 进一步加 入对音长 休止符等的控制量后 可以实现音乐的播放 第第 4 4 章章 连接调试连接调试 4 14 1 系统的仿真与调试系统的仿真与调试 本设计主要进行软硬件联调 软硬件联调是指把调试无误的软 件程序加载进单片机芯片内部 通上电源后 检查是否有预期的显 示器倒数计数以及蜂鸣器报警的效果 如果没有则需要检测软件是 否在实现功能上有欠缺即程序加载是否有问题 调试前必须保证源 程序准确无误 调试结果如图 11 18 图 11 系统的仿真与调试图 第五章第五章 心得体会心得体会 19 20 参考文献参考文献 单片机原理及应用技术 清华大学出版社 万隆 巴奉丽 主编 单片机原理及接口技术 第三版 李朝青编 单片机 C 语言程序设计完全自学手册 郭惠 吴迅编 基于 Proteus 的单片机系统设计与仿真实例 蒋辉平 周国雄 编 附录附录 21 源程序如下 源程序如下 include include define time 100 define uint unsigned int define uchar unsigned char uint t flag flag0 flag1 flag2 flag3 flag4 flag5 minute second 60 uchar num j i k 0 uchar code dis 00 00 uint code table1 64580 64684 64777 64820 64898 64968 65030 sbit key1 P1 0 sbit key2 P1 1 sbit key3 P1 2 sbit key4 P1 3 sbit P1 4 P1 4 sbit RS P2 0 sbit RW P2 1 sbit E P2 2 sbit led red P2 3 void write time uint addr uint date 延时函数 void delay uint z uint x y for x z x 0 x for y 110 y 0 y 延时 1S void delay1 void uchar a b c for c 13 c 0 c 22 for b 247 b 0 b for a 142 a 0 a nop 1602 写命令函数 void write com uchar com RS 0 P3 com delay 5 E 1 delay 10 E 0 1602 写数据函数 void write date uchar date RS 1 P3 date delay 5 E 1 delay 10 E 0 按键 1 处理函数 void KEY1 while flag1 if key2 0 delay time if key2 0 23 if minute0 minute minute 1 write time 7 minute if key4 0 delay 150 if key4 0 flag1 0 flag 1 TR0 1 按键 2 处理函数 void KEY2 minute 5 write time 7 minute while flag2 24 if key4 0 delay time if key4 0 flag2 0 flag 1 TR0 1 按键 3 处理函数 void KEY3 minute 10 write time 7 minute while flag3 if key4 0 delay time if key4 0 flag3 0 flag 1 TR0 1 按键 4 处理函数 void KEY4 25 minute 20 write time 7 minute while flag4 if key4 0 delay 150
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025江西吉安市青原区司法局招聘2人考试备考试题及答案解析
- 2025甘肃中铁西北科学研究院有限公司评估中心招聘考试备考试题及答案解析
- 2025年康复医疗服务体系与康复医疗设备产业协同发展报告
- 2025年数控机床智能化升级技术路径与产业变革报告
- 2025年消费金融用户画像精准营销策略与行业动态报告
- 合肥市二手房市场价格的多维度解析与影响因素探究
- 合成孔径雷达快速时域成像算法:原理、优化与应用探索
- 合作学习:开启高中生物教学的新征程
- 2025年足彩胜负彩过滤服务协议书范本3篇
- 教师招聘之《幼儿教师招聘》能力检测试卷附答案详解(黄金题型)
- 环境灾害预警系统-洞察及研究
- 广播电视机线员技能操作考核试卷及答案
- 2025北京国寿健投公司招聘笔试参考题库附答案解析
- 辅警结构化面试题及答案(2025年)
- 2025年托管厨师合同协议书
- 2025年医疗器械专业知识培训试题及答案
- 《我是什么》课件 统编版语文二年级上册
- 师生互动与课件使用
- 烷烃的命名教学课件
- 黑龙江省突发公共事件总体应急预案
- 贵州省建筑工程施工资料管理导则
评论
0/150
提交评论