




免费预览已结束,剩余72页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第1章单片机系统开发 教学目标1 1单片机系统设计步骤1 2单片机应用系统开发工具1 3单片机开发系统应用实例1 4课程设计本章小结思考题与习题 1 了解单片机应用系统设计的过程和要求 知道单片机应用系统硬件设计的内容和要求 知道单片机应用系统软件设计的步骤和要求 理解软件设计与硬件设计的关系 2 了解单片机开发工具的主要作用 了解单片机开发系统的分类 知道单片机开发系统的功能 理解单片机应用系统软 硬件调试的方法 教学目标 3 理解单片机应用系统设计实例 数码管数字时钟电路的设计 数字式音乐盒设计设计步骤 设计方案 硬件设计 软件设计等知识 举一反三 具备简单常用单片机系统的设计开发能力 1 1单片机系统设计步骤 一个完备的单片机应用系统包括硬件和软件两大部分 硬件是躯体 软件是灵魂 只有系统的软 硬件紧密配合 协调一致才能发挥其高性能作用 在单片机应用系统的开发过程中 涉及多种开发技术和工具 需要反复修改调整软 硬件 以便尽可能提高系统的工作效率 单片机应用系统的功能不同 其硬件和软件结构也不相同 但研制 开发的方法和步骤基本一致 1 1 1总体设计 1 可行性调研可行性调研的目的 是分析完成该项目的可能性 进行这方面的工作 可参考国内外有关资料 看是否有人进行过类似的工作 如果有 则可分析他人是如何进行的 有什么优缺点 有何值得借鉴的地方 如果没有 则需作进一步的研究 此时的重点应放在能否实现目标这个环节 首先从理论上进行分析 探讨实现的可能性 所 要求的客观条件是否具备 环境 测试手段 仪器设备 资金 人员等 然后结合实际情况 确定能否立项的问题 2 拟制设计任务书设计者首先应对系统的任务 控制对象 工作环境作周密的调查研究 必要时还要勘察工业现场 明确系统的各项指标 进而编写设计任务书 整个系统的设计开发都要围绕着如何达到技术指标来进行 3 建立数学模型设计任务书拟定后 接下来应对被控对象的物理过程和计算任务进行全面分析 并从中抽象出数学表达式 即建立数学模型 数学模型的形式是多种多样的 可以是一系列的数学表达式 可以是数学推理和判断 也可以是运行状态的模拟等 数学模型要能真实描述客观控制过程 要精确而简单 4 总体方案设计 在上述基础上 对系统各部分构成进行总体规划 主要考虑以下几个问题 系统组成 根据系统功能 确定系统主要由哪些功能模块构成 如键盘 显示 输入 输出通道 通信等 单片机选型 根据系统的精度和速度要求合理选择单片机机型 可以综合考虑单片机的实用性 性价比 开发工具和研发人员的熟悉程 等方面因素 软硬件功能分配 确定哪些功能由硬件实现 哪些功能由软件完成 在不影响系统技术指标的前提下 提倡尽量用软件实现 1 1 2硬件设计 根据总体方案画出硬件电路原理图 然后在单片机开发仪或实验板上搭出电路 并且在调试和运行软件中随时加以修改和补充 最后制作印制电路板并装成样机 为使硬件设计合理 系统的电路设计应注意以下几个方面 尽可能选择标准化 模块化的典型电路 提高设计的成功率和结构的灵活性 尽量选用功能强 集成度高的电路或芯片 选择通用性强 市场货源充足的元器件 系统扩展及各功能模块在设计满足应用系统功能要求基础上 应适当留有余地 尽量采用新技术 充分考虑各部分的驱动能力 系统的抗干扰设计 1 1 3软件设计 在进行应用系统的总体设计时 软件设计和硬件设计应统一考虑 相互结合 当系统硬件电路确定后 软件的任务也就明确了 系统中的应用软件是根据系统功能要求设计的 一般地讲 软件的功能可分为两大类 一类是执行软件 它能完成各种实质性的功能 如测量 计算 显示 打印 输出控制等 另一类是监控软件 它是专门用来协调各执行模块和操作者的关系 在系 统软件中充当组织调度角色 由于应用系统种类繁多 程序编制者风格不一 因此应用软件因系统而异 尽管如此 作为优秀的系统软件还是有其共同点及规律的 1 程序的总体设计程序总体设计是指从系统的高度考虑程序结构 数据形式和程序功能的实现方法和手段 在拟定总体设计方案时 设计者必须合理选择切合实际的程序设计方法 常用的程序设计方法有三种 模块化程序设计 把一个复杂的应用程序按整体功能划分成若干相对独立的程序模块 各模块可以单独设计 编程 调试 然后装配起来联调 最终成为一个有实用价值的程序 结构化程序设计 在编程过程中 对程序结构进行适当限制 特别是限制转移指令的使用 用于控制程序的复杂程序 使程序上下文与执行流程保持一致 这是一种比较理想的程序设计方法 自顶向下程序设计 从系统一级的主干程序开始 集中精力解决全局问题 然后层层细化逐步求精 最终完成一个复杂的程序 2 画程序流程图不论采用哪种设计方法 程序总体结构确定后 应结合数学模型确立各子任务的具体算法和步骤 画出流程图 以方便程序编写 3 程序的编制在开始编写程序之前 应先对程序地址空间的分配 工作寄存器的安排 数据结构 端口地址等进行分配 然后再根据程序流程图用汇编语言或其他高级语言编写程序 4 程序的检查和修改上机调试前 可借助一定的编译软件对程序中的语法错误查找出来并修改 1 1 4系统的调试与运行 调试包括硬件调试 软件调试和系统联调 调试通过后还要进行一段时间的试运行 以验证系统能否经受实际环境的考验 经过一段时间的试运行就可投入正式运行 在正式运行中还要建立一套健全的维护制度 以确保系统的正常工作 1 2单片机应用系统开发工具 1 单片机开发系统的功能 在线仿真功能 系统调试功能 软件辅助设计功能 程序固化功能 2 开发系统的类型 通用型单片机开发系统 实用型开发系统 通用机开发系统 模拟开发系统 1 3 1数码管数字时钟电路的设计 1 设计要求 1 以AT89C51单片机为核心器件 构成一个数字式电子时钟 2 用6位数码管分别显示时 分 秒 采用24小时计时方式 3 时钟具有显示时间 调整时间 省电状态 数码管不亮 时钟不停 三种功能 1 3单片机开发系统应用实例 2 总体设计 1 6位数码管采用动态显示方式 段选线用P1口控制 位选线用P2口低6位控制 2 功能键由P2 7引入 3 为节省硬件 采用定时计数器产生时间基准 3 硬件设计根据总体设计 硬件电路框图如图1 1所示 硬件电路由4部分组成 单片机 时钟与复位电路 LED显示及驱动电路 按键输入电路 电路原理图如下 4 软件设计 片内RAM50H 55H作为显示缓冲区 共6个单元分别存放秒 分 时的BCD码个位在低地址单元 十位在高地址单元 时钟的基本单位为秒 定时器T0定时50ms 定时20次即为1S 秒 分逢60进位 时逢24回零 按键具有以下功能 当按下时间小于1S 进入省电状态 时钟继续运行 但不显示 按下时间大于1S 进入调分状态 时钟停止 等待继 续按键 若再次按键时间小于0 5S 分加1 若大于0 5S 进入小时调整状态 在小时调整状态下 按键时间小于0 5S 时加1 若大于0 5S 退出时钟调整 时钟按新设置的时间运行 在时钟调整状态下 当前被调整的时间每0 3S闪烁显示 定时器T1定时闪烁时间间隔0 3S 1 主程序设计主程序流程图如下 图1 3主程序流程图 主程序如下 ORG0000HAJMPMAINTORG000BHAJMPINT01ORG001BHAJMPINT11MAINT MOVR0 7FHCLRAWZ1 MOV R0 ADJNZR0 WZ1 MOVSP 30HMOV5AH 0AHMOVTMOD 11HMOVTL0 0B0HMOVTH0 3CHMOVTL1 0B0HMOVTH1 3CHSETBEASETBET0SETBTR0MOVR4 14H MAINT1 LCALLXZCXJNBP2 7 SJTZ0SJMPMAINT1SJTZ0 LCALLXSZCXJNBP2 7 SJTZ1SJMPMAINT1SJTZ1 CLRET0CLRTR0LCALLYS1SJBP2 7 KMTESMOVR2 06H SETBET1SETBTR1XYZ2 JNBP2 7 XYZ1CLR01HXYZ4 JBP2 7 XYZ3LCALLYS05SJNBP2 7 XYZHHMOVR0 53HLCALLADD1MOVA R3CLRC CJNEA 60H QWEQWE JCXYZ4CLRAMOV R0 ADECR0MOV R0 ACLRCAJMPXYZ4KMTES SETBET0SETBTR0KMA JBP2 7 LCALLXSZCXJBP2 7 KMAKMA1 JNBP2 7 LJMPMAINT1XYZHH JNBP2 7 XYZ5SETB01HXYZ6 JBP2 7 XYZ7LCALLYS05SJNBP2 7 XYZOUTMOVR0 55HLCALLADD1 MVOA R3CLRCCJNEA 24H KMB1KMB1 JCXYZ6CLRAMOV R0 ADECR0MOV R0 AAJMPXYZ6XYZOUT JNBP2 7 XYZOUT1LCALLXSZCX JNBP2 7 XYZOUTMOV20H 00HMOV56H 52HMOV57H 53HMOV58H 54HMOV59H 55HCLRTR1CLRET1SETBTR0SETBET0LJMPMAINT1 XYZ1 LCALLXSZCXAJMPXYZ2XYZ3 LCALLXSZCXAJMPXYZ4XYZ5 LCALLXSZCXAJMPXYZHHXYZ7 LCALLXSZCXAJMPXYZ6XYZOUT1 LCALLXSZCXAJMPXYZOUT 2 显示子程序设计XSZCX MOVR1 50HMOVR5 0FEHMAXY MOVA R5MOVP2 AMOVA R1MOVDPTR ABCMOVCA A DPTRMOVP1 ALCALLYS1MSINCR1 MOVA R5JNBACC 5 ENDOUTRLAMOVR5 AAJMPMAXYENDOUT MOVP2 0FFHMOVP1 0FFHRET 3 T0中断服务程序设计INT01 PUSHACCPUSHPSWCLRET0CLRTR0MOVA 0B7HADDA TL0MOVTL0 AMOVA 3CHADDCA TH0MOVTH0 A SETBTR0DJNZR4 INT0UAD1 MOVR4 14HMOVR0 51HLCALLADD1MOVA R3CLRCCJNEA 60H AD2AD2 JCINT0UCLRAMOV R0 A DECR0MOV R0 AMOVR0 57HACALLADD1MOVA R3CLRCCJNEA 60H AD3AD3 JCINT0UCLRAMOV R0 ADECR0 MOV R0 AMOVR0 59HACALLADD1MOVA R3CLRCCJNEA 24H AD4AD4 JCINT0UCLRAMOV R0 ADECR0MOV R0 A INT0U MOV52H 56HMOV53H 57HMOV54H 58HMOV55H 59HPOPPSWPOPACCSETBET0RETI 4 T1中断服务程序设计INT11 PUSHACCPUSHPSWMOVTL1 0B0HMOVTH1 3CHDJNZR2 INT1UMOVR2 06HCPL02HJB02H CCC1MOV52H 56HMOV53H 57H MOV54H 58HMOV55H 59HINT1U POPPSWPOPACCRETICCC1 JB01H CCC2MOV52H 5AHMOV53H 5AHMOV54H 58HMOV55H 59HAJMPINT1U CCC2 MOV52H 56HMOV53H 57HMOV54H 5AHMOV55H 5AHAJMPINT1U 5 加1子程序ADD1 MOVA R0DECR0SWAPAORLA R0 ADDA 01HDAAMOVR3 AANLA 0FHMOV R0 AMOVA R3INCR0SWAPAANLA 0FHMOV R0 ARET 6 延时子程序YS1MS MOVR6 14HYS1 MOVR7 19HYS2 DJNZR7 YS2DJNZR6 YS1RETYS1S LCALLYS05SLCALLYS05SRET YS05S MOVR3 51HYS05S1 LCALLXSZCXDJNZR3 YS05S1RETABC DB0C0H 0F9H 0A4HDB0B0H 99H 92H 82H 0F8HDB80H 90H 0FFHEND 点击观看仿真演示 1 3 2数字式音乐盒设计 本节以一个音乐盒为例 通过设计一个音乐盒 了解用单片机产生音频的方法及音乐程序的设计 音乐盒的音符范围 C调低音1 高音7 内部存储一首歌曲 循环播放 1 基本乐理知识在音乐中使用的各个固定频率的音叫音级 常用符号C D E F G A B 表示 两音之间音高的距离叫音程 表12 1列出C调高 中 低音对应的频率值 乐曲即是由不同的音符组成的 而每个音符都有其特定的频率 这样我们就可以利用不同的频率的组合 即可构成我们所想要的音乐了 音符频率 的产生可以使用定时计数器产生 T0工作于定时方式1 晶振为12MHz 则T0定时时间为某音符周期的1 2 定时时间到则将输出取反 就可以得到固定频率的方波信号 低音1 频率 262 定时时间 T 2 1 2 262 S T0初值 65536 100000 524 63628 低音2 频率 294 定时时间 T 2 1 2 294 S T0初值 65536 100000 588 63835 2 总体设计选择AT89C2051单片机 通过T0的定时中断 配合P3 0引脚输出音频频率 P3 0引脚输出 经音频放大后接扬声器 系统组成框图如图1 4所示 音符持续时间的长短即时值 一般用拍数表示 1 8拍 0 05s 1 4拍 0 1s 以此类推 1拍就是0 4S 节拍的产生 可以用定时器T1或延时方法产生 以1 8拍为基准 若某个音符节拍为1 4拍 则延时两次即可 3 硬件设计电路原理图如下 4 软件设计为了产生音频信号 需先对音符进行编码 在程序中安排一张定时初值表 程序通过音符编码查表得到对应的定时初值 编码如下表所示 以1 8拍为延时单位 对节拍也进行编码如下 有了上述两张编码表 任何一首乐曲都可以用其编码来表示 例如 生日快乐歌曲谱如下 C1 3 4 对此进行编码 音符编码在前 节拍编码在后 得曲谱简码表如下 SONG DB0CH 04H 00H 02H 0CH 02H 0DH 08HDB0CH 08H 0FH 08H 0EH 08H 00H 08H 0CHDB04H 00H 02H 0CH 02H 0DH 08H 0CH 08HDB1H 08H 0FH 08H 00H 08H 0CH 04H 00HDB02H 0CH 02H 13H 08H 11H 08H 0FH 08HDB0EH 08H 0DH 08H 12H 04H 00H 02H 12HDB02H 11H 08H 0FH 08H 1H 08H 0FH 08HDB00H 08H 0FFH 结束符 1 主程序框图 2 T0中断服务程序框图 图1 6主程序与中断服务程序框图 程序清单 ORG0000HLJMPMUSICORG000BHLJMPSERT0ORG0030HMUSIC MOVTMOD 01H T0定时方式1SETBEASETBET0 开T0中断SETBP3 0 不发音 STA MOV30H 00H 简码指针清0NEXT MOVDPTR SONG DPTR指向简码表首址MOVA 30H 简码指针送AINC30H 指针加1 指向节拍码MOVCA A DPTR 取简码MOVR2 A 暂存简码CPLAJNZNEXT1 简码结束否 CLRTR0 T0停止SJMPSTA NEXT1 MOVA R2 简码送AJNZSING 是发音符 转SINGCLRTR0 不发音SJMPD1 转节拍控制SING DECA 根据音符码取定时初值RLAMOV22H AMOVDPTR STABMOVCA A DPTRMOVTH0 A 送高字节定时初值 MOV21H A 保存至21HMOVA 22HINCAMOVCA A DPTRMOVTL0 A 送低字节定时初值MOV20H A 保存SETBET0 开T0中断SETBTR0 启动T0D1 MOVA 30H 简码指针送AINC30H 简码指针加1 指向下一简码MOVDPTR SONG MOVCA A DPTR 取节拍码MOVR5 A 节拍码送R5LCALLDELAY 调节拍控制CLRTR0 节拍到 停止T0SJMPNEXT 转下一简码发音控制 节拍控制子程序DELAY MOVR3 10D2 MOVR4 250D3 DJNZR4 D3DJNZR3 D2DJNZR5 DELAY 节拍数到否 RET T0中断服务程序SERT0 CLRTR0 停止T0MOVTL0 20H 重装初值MOVTH0 21HCPLP3 0 音频信号取反SETBTR0 启动T0RETI 中断返回 祝你生日快乐 歌简码表SONG DB0CH 04H 00H 02H 0DH 08H 0CH 08HDB0FH 08H 0EH 08H 00H 08H 0CH 04H 00HDB02H 0CH 02H 0DH 08H 0CH 08H 1H 08HDB0FH 08H 00H 08H 0CH 04H 00H 02H 0CHDB02H 13H 08H 11H 08H 0FH 08H 0EH 08HDB0DH 08H 12H 04H 00H 02H 12H 02H 11HDB08H 0FH 08H 1H 08H 0FH 08H 00H 08HDB0FFH 结束符 音符定时初值表STAB
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 新质生产力:核心文件解读
- 考虑摩擦的平衡问题-习题讲解
- 2025年中西医结合临床疗效观察答案及解析
- 2025年体检科常见疾病筛查与健康指导考试卷答案及解析
- 2025年眼科常见眼病诊断与处理技能测评答案及解析
- 2025年全科护理实践技能模拟测试卷答案及解析
- 2025年社区医学社区医学服务模式探讨与健康促进知识检测试卷答案及解析
- 国资央企新质生产力发展动态
- 2025年妇产科产前护理护理干预常见操作考核模拟试卷答案及解析
- 2025年皮肤科常见病例诊断与护理模拟试题答案及解析
- 工程建设质保金合同范本
- 2025年秋季学期人教版PEP英语一年级上册教学计划
- 小学《班干部培训》主题班会课件
- 百师联盟2026届高三上学期开学摸底联考数学试题
- 登革热课件PDF教学课件
- 2025年南阳唐河县国有企业公开招聘工作人员8名笔试备考题库及答案解析
- 2025年北京市高考语文真题之名著阅读《红楼梦》
- 2025秋人教版(2024)二年级上册数学教学计划
- 医务人员职业暴露处理流程考核试题与答案
- (标准)供电 供水协议书
- 电镀锌合同范本
评论
0/150
提交评论