




已阅读5页,还剩43页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
单片机技术音乐门铃 九江职业技术学院电气工程系孙旭日制 制作任务 用小喇叭 单片机及电阻 电容 三极管等器件 在老师指导下制作音乐门铃 硬件电路图绘制 焊接电路 焊接电路所需元件 设计思路 通过控制定时器的定时时间产生不同频率的方波 驱动喇叭发出不同音阶的声音 再利用延时来控制发音时间的长短 即可控制节拍 把乐谱中的音符和相应的节拍变换成定常数和延迟常数 作为数据表格存放在存贮器中 由程序查表得到定时常数和延迟常数 分别用以控制定时器产生方波的频率和发出该频率方波的持续时间 当延迟时间到时 再查下一个音符的定时常数和延迟常数 依次进行下去 例 歌曲 新年好 的一段简谱 1 C1115 3331 1355 432 实现方法 用定时器以方式1来产生各音符对应频率的方波 由P1 0输出驱动喇叭 节拍控制通过调用延时子程序D200 延时200ms 次数来实现 以每拍800ms节拍时间为例 一拍需循环调用D200延时子程序4次 同理 半拍就需用2次 设晶振频率为6MHz 乐曲中的音符 频率 定时常数的关系如下表 音符 频率 定时常数关系表 日常中断的例子 返回 你正在专心看书 突然电话铃响 于是你记下正在看的书的页数 去接电话 接完电话后再回来接着看书 计算机中的中断概念 返回 中断是指由于某种随机事件的发生 计算机暂停现行程序的运行 转去执行另一程序 以处理发生的事件 处理完毕后又自动返回原来的程序继续运行 将能引起中断的事件称为中断源 CPU现行运行的程序称为主程序 处理随机事件的程序称为中断服务子程序 中断技术的优点 分时操作 CPU可以同多个外设 同时 工作实时处理 CPU及时处理随机事件故障处理 电源掉电 存储出错 运算溢出 MCS 51中断系统 中断源中断标志中断允许中断优先级MCS 51中断系统结构中断寄存器 MCS 51的中断系统 中断源 8051单片机有5个中断请求源 单片机 MCS 51的中断系统 中断标志 CPU 主程序 INT0 INT1 T0 T1 串口 IE0 TF0 IE1 TF1 中断源 中断标志位 每一个中断源都有相应的中断标志位 某一个中断源申请中断 相应中断标志位置1 MCS 51的中断系统 中断允许 CPU 主程序 INT0 INT1 T0 T1 串口 IE0 TF0 IE1 TF1 中断源 中断标志位 EA 总中断允许位 EA 1开放所有中断 EA 0 禁止所有中断 某一个中断源还有相应的中断允许位 1允许相应中断源的中断 0禁止相应中断源的中断 中断允许 ES ET0 EX0 EX1 ET1 EA MCS 51的中断系统 中断优先级 CPU 主程序 INT0 INT1 T0 T1 串口 IE0 TF0 IE1 TF1 中断源 中断标志位 单片机中有两个中断优先级 即高优先级中断和低优先级中断 前者优先权高于后者 在程序中设置 相应位 1 为高优先级 同一优先级别的中断源按照自然优先级顺序确定优先级别 硬件形成 无法改变 中断允许 ES ET0 EX0 EX1 ET1 EA 自然优先级 优先控制 PS PT0 PX0 PX1 PT1 IE0 TCON SCON TF0 IE1 TF1 T0 T1 TI RI TXD RXD ES ET0 EX0 EX1 ET1 EA 自然优先级 矢量地址 高级中断请求 自然优先级 矢量地址 低级中断请求 PX0 PT0 PX1 PT1 PS IE IP MCS 51的中断系统结构图 中断标志位 中断源允许 总允许 中断优先级 TCON寄存器 T0和T1控制寄存器 TCON T1溢出中断标志 TCON 7 T1启动计数后 计满溢出由硬件置位TF1 1 向CPU请求中断 此标志一直保持到CPU响应中断后 才由硬件自动清0 也可用软件查询该标志 并由软件清0 TCON88H 外部中断INT1中断标志位 TCON 3 IE1 1 外部中断1向CPU申请中断 外部中断INT1触发方式控制位 TCON 2 IT1 0 电平触发方式IT1 1 下降沿触发方式 TCON寄存器 T0和T1控制寄存器 注意 该寄存器可以位寻址 返回 TI SCON 1 串行发送中断标志 RI SCON 0 串行接收中断标志 SCON寄存器 串行口控制寄存器 SCON98H 注意 该寄存器可以位寻址 IE寄存器 中断允许寄存器 IEA8H 例 允许定时器T0中断 SETBEASETBET0或MOVIE 82H 注意 该寄存器可以位寻址 51单片机有两个中断优先级 高级和低级专用寄存器IP为中断优先级寄存器 用户可用软件设定相应位为1 对应的中断源被设置为高优先级 相应位为0 对应的中断源被设置为低优先级系统复位时 均为低优先级该寄存器可以位寻址 IP寄存器 中断优先级寄存器 IPB8H 中断处理过程 中断处理过程分为三个阶段 中断响应 中断处理和中断返回 中断响应中断处理 又称中断服务 中断返回中断请求的撤除 中断响应 以外部中断0为例 中断响应 在满足CPU的中断响应条件之后 CPU对中断源中断请求予以处理 中断响应过程 保护断点地址 把程序转向中断服务程序的入口地址 通常称矢量地址 特别注意 这些工作是硬件自动完成的 断点地址 中断服务子程序的入口地址 外部中断0入口地址 ZD0AJMP ORG0003H AJMPZD0 ZD0 中断响应 中断服务子程序入口地址又称为中断矢量或中断向量 单片机中5个中断源的矢量地址是固定的 不能改动 断点地址 中断服务子程序的入口地址 程序存储器ROM 0000H 复位后 程序的入口地址 PC 0000H 0023H 串行口中断入口 0003H 外部中断0入口 000BH 定时器0溢出中断入口 0013H 外部中断1入口 001BH 定时器1溢出中断入口 002AH 使用时 通常在这些入口地址处存放一条跳转指令 使程序跳转到用户安排的中断服务程序起始地址上去 程序存储器ROM 0000H 复位后 程序的入口地址 PC 0000H 0023H 串行口中断入口 0003H 外部中断0入口 000BH 定时器0溢出中断入口 0013H 外部中断1入口 001BH 定时器1溢出中断入口 002AH 包含T0中断服务子程序的程序结构 ORG0000HAJMPMAINORG000BHAJMPINTT0ORG0100HMAIN INTT0 RETIEND AJMPMAIN AJMPINTT0 中断处理 中断服务程序从中断子程序入口地址开始执行 直到返回指令RETI为止 这个过程称为中断处理 或中断服务 中断服务子程序一般包括两部分内容 一是保护和恢复现场 二是处理中断源的请求 入口地址 RETI 中断处理 INTT0 PUSHACCPUSHDPHPUSHDPLPUSHPSW中断源服务POPPSWPOPDPLPOPDPHPOPACCRETI 保护现场 恢复现场 中断返回 中断返回是指中断服务完后 计算机返回到原来暂停的位置 即断点 继续执行原来的程序 中断返回由专门的中断返回指令RETI来实现 中断返回 RETI指令功能 把断点地址取出 送回到程序计数器PC中去 另外 它还通知中断系统已完成中断处理 将清除优先级状态触发器 特别注意 不能用RET指令代替RETI指令 中断处理过程示意图 中断源发中断请求 中断响应条件是否满足 中断是否受阻 把PC断点地址压入堆栈 相应中断源的中断入口地址送入PC 转向中断服务程序 N Y Y N 由硬件自动完成 关中断 保护现场 中断服务 开中断 关中断 恢复现场 开中断 中断返回 断点地址由堆栈弹入PC 中断服务程序 中断请求的撤除 CPU响应某中断请求后 在中断返回前 应该撤除该中断请求 否则会引起另一次中断 定时器0或1溢出 CPU在响应中断后 硬件清除了有关的中断请求标志TFO或TF1 即中断请求是自动撤除的 边沿激活的外部中断 CPU在响应中断后 也是用硬件自动清除有关的中断请求标志IE0或IE1 串行口中断 CPU响应中断后 没有用硬件清除T1 R1 故这些中断不能自动撤除 而要靠软件来清除相应的标志 电平触发外部中断撤除方法较复杂 因为在电平触发方式中 CPU响应中断时不会自动清除IE1或IE0标志 所以在响应中断后应立即撤除INT0或INT1引脚上的低电平 在硬件上 CPU对INT0和INT1引脚的信号不能控制 所以这个问题要通过硬件 再配合软件来解决 电平激活的外部中断源中断标志的撤除 外部中断源的扩展 单片机仅有两个外部中断输入端 可用两种方法扩展 1 定时器T0 T1 工作在计数方式下 2 中断和查询结合 1 用定时器作外部中断源例5 5将定时器T0扩展为外部中断源 解 将定时器T0设定为方式2 自动恢复计数初值 TH0和TF0的初值均设置为FFH 允许T0中断 CPU开放中断 源程序如下 MOVTMOD 06HMOVTH0 0FFHMOVTL0 0FFHSETBTR0SETBET0SETBEA T0引脚每输入一个负跳变 TF0都会置1 向CPU请求中断T0脚相当于边沿触发的外部中断源输入线 2 中断和查询相结合 图 一个外中断扩展成多个外中断的原理图 中断服务程序如下 ORG0003H 外部中断0入口AJMPINT0 转向中断服务程序入口 INT0 PUSHPSW 保护现场PUSHACCJBP1 0 EXT0 中断源查询并转相应中断服务程序JBP1 1 EXT1JBP1 2 EXT2JBP1 3 EXT3EXIT POPACC 恢复现场POPPSWRETI EXT0 EXINT0中断服务程序AJMPEXITEXT1 EXINT1中断服务程序AJMPEXITEXT2 EXINT2中断服务程序AJMPEXITEXT3 EXINT3中断服务程序AJMPEXIT同样 外部中断1也可作相应的扩展 例 在P1 0上产生周期为10ms的方波 设晶振频率12MHz 要求分别以查询方式和中断方式设计程序 查询方式 ORG0000HMOVTMOD 10HMOVTH1 0CEHMOVTL1 78HSETBTR1WAIT JBCTF1 NXSJMPWAITNX CPLP1 0MOVTH1 0CEHMOVTL1 78HSJMPWAITEND 中断方式 ORG0000HMOVTMOD 10HMOVTH1 0CEHMOVTL1 78HMOVIE 88HSETBTR1WAIT SJMPWAITORG001BHCPLP1 0MOVTH1 0CEHMOVTL1 78HRETI 定时 计数器的结构 定时 计数器方式控制寄存器TMOD 定时器 计数器方式寄存器TMOD 89H 不能进行位寻址 TMOD为T0 T1的工作方式寄存器 其格式如下 功能选择位C T 0 定时功能 计数内部机器周期脉冲 1 计数功能 计数引脚T0 T1 输入的负脉冲 0 非门控方式 内部启动 TRx 1 启动定时器工作 TRx 0 停止定时器工作 1 门控方式 外部启动 TRx 1且引脚INTx 1才启动 方式选择位M1 M0 4种工作方式 13 16 8位 门控方式选择位GATE 89C51单片机内部有两个定时 计数器T0和T1 每个定时 计数器都可以实现定时和计数功能 定时 计数器Ti的基本部件是两个8位寄存器THi及TLi组合的16位加法计数器 用于对定时或计数脉冲进行加法计数 定时 计数器内部控制逻辑图 定时 计数器的工作方式 由方式选择位M1 M0设定 方式0 M1M0 00 13位定时 计数器 THx8位和TLx低5位组成加1计数器 计数外部脉冲个数 1 8192 213 定时时间 若T 1 s 1 s 8 19ms T 12 fosc fosc 16位定时 计数器 THx8位和TLx8位组成16位加1计数器 计数外部脉冲个数 1 65536 216 定时时间 若T 1 s 1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年大学辅导员招聘考试题库:教育心理学科研究方法前沿趋势探讨研究试题
- 城市交通碳排放评估-全面剖析
- 开源与商业合作模式比较-全面剖析
- 2025-2030全球及中国物联网在管道管理中的应用行业市场现状供需分析及市场深度研究发展前景及规划可行性分析研究报告
- 2025-2030全球及中国汽车扬声器系统行业市场现状供需分析及市场深度研究发展前景及规划可行性分析研究报告
- 2025-2030全球及中国汽车以太网行业市场现状供需分析及市场深度研究发展前景及规划可行性分析研究报告
- 2025年英语翻译资格考试笔译模拟试卷(专业词汇测试)
- 2025年护士执业资格考试题库-基础护理学专项急救知识试题集
- 2025-2030全球及中国政府中的生物特征识别行业市场现状供需分析及市场深度研究发展前景及规划可行性分析研究报告
- 2025-2030全球及中国房间调度软件行业市场现状供需分析及市场深度研究发展前景及规划可行性分析研究报告
- 2025江西南昌市江铜产融社会招聘1人笔试参考题库附带答案详解
- 2024年重庆两江新区某国有企业招聘笔试真题
- 离婚协议民政局贵州安顺(2025年版)
- 心脏骤停后高质量目标温度管理专家共识2024
- 高校讲师个人学术发展计划
- 睾丸切除术课件
- 王阳明心学课件
- 北师大版七年级下册实验通知单
- 《工程款结算单》
- 关于提高航空公司轮椅旅客服务的对策研究
- 新编日语第二册(全)
评论
0/150
提交评论