任务一单片机控制单灯亮灭.ppt_第1页
任务一单片机控制单灯亮灭.ppt_第2页
任务一单片机控制单灯亮灭.ppt_第3页
任务一单片机控制单灯亮灭.ppt_第4页
任务一单片机控制单灯亮灭.ppt_第5页
已阅读5页,还剩68页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

任务一单片机控制单灯亮灭 教学导航任务单任务准备案例示范知识梳理与总结任务作业 教学导航 任务单 任务一电路图 任务一单片机控制单灯亮灭 1 1数制与编码1 28051单片机基本结构1 3存储器结构1 4并行输入 输出接口1 5MCS 51单片机引脚功能案例1单片机控制右侧发光二极管亮灭案例2仿真调试简单的C语言程序 1 1数制与编码 计算机最基本的功能是进行数据的计算和处理加工 为了方便和可靠 计算机内部采用了二进制数字系统 因此 所有数值数据都必须采用二进制数表示 所有非数值数据 例如 字母 符号等也都必须采用二进制代码表示 1 1 1进位计数制 数制是进位计数制的简称 为区别不同的进位计数制 通常用字母来表示数制 D Decimal 代表十进制 也可省略 B Binary 代表二进制O Octal 代表八进制H Hexadecimal 代表十六进制 几种进制的对应关系 进制间的转换 技巧 利用 开始 附件 计算器 1 1 2计算机中的常用编码 1 二 十进制编码二 十进制编码是指将十进制数的0 9十个数字用二进制数表示的编码 即BCD BinaryCodedDecimal 编码 由于十进制数需用4位二进制数来表示 4位二进制编码有多种方案 BCD码也有多种方案 最常用的编码是8421BCD码 它是一种恒权码 8 23 4 22 2 21 1 20 分别是4位二进制数的权值 8421BCD码 十进制数86 5转换为8421BCD码为 86 5 10000110 0101 8421BCDBCD码10010011 0100转换为十进制数为 10010011 0100 8421BCD 93 4 例1 5十进制数和BCD码相互转换 同一二进制代码 当把它看作是二进制数和把它看作是二进制编码的十进制数 BCD 其数值是不同的 2 字符编码 计算机中普遍采用的是美国国家信息交换标准字符码 即ASCII码 AmericanStandardCodeforInformationInterchange ASCII码采用7位二进制代码对字符进行编码 它包括52个大 小写英文字母 10个阿拉伯数字 32个通用控制符号 34个专用符号 共128个字符 例如0 9对应的ASCII码为30H 39H A Z对应的ASCII码为41H 5AH ASCII码表 1 2单片机基本结构 MCS 51系列单片机都是以8051为核心电路发展起来的 包括51子系列 基本型 和52子系列 增强型 两大类 因此它们都具有MCS 51的基本结构与软件特征 具有很强的兼容性 MCS 51系列单片机配置 FlashRom单片机 89X51 89C51 89S51等 1 2 1单片机的内部结构 1 1个8位的中央处理器 CPU 具有位处理功能 和1个全双工的异步串行口 2 2个16位定时器 计数器 3 3个逻辑存储空间64KB程序存储器空间 包括4KB片内程序存储器ROM 128B内部数据存储器 RAM 64KB数据存储器空间 4 4个双向并可按位寻址的I O口 5 5个中断源 具有两个优先级 6 片内还有振荡器和时钟电路 用EPROM 为8751 无ROM为8031 MCS 51系列单片机的结构框图 1 2 2单片机CPU的结构 1 CPU结构MCS 51内部有一个8位CPU 8位是CPU的字长 指CPU对数据的处理是按一个字节进行的 它象通常的微处理器一样 也是由算术逻辑运算单元ALU 定时控制部件 即控制器 和各种专用寄存器等组成的 ALU 由定时和控制部件构成的控制器 包括定时控制逻辑 指令寄存器 指令译码器 数据指针DPTR 程序计数器PC 堆栈指针SP RAM地址寄存器以及16位地址缓冲器等 运算器 ALU 专用寄存器 2 CPU的专用寄存器组 MCS 51的CPU专用寄存器组包括6个寄存器程序计数器PC累加器ACC寄存器B程序状态标志寄存器PSW堆栈指针SP数据指针DPTR 除PC外 其余5个寄存器均为可编程可访问寄存器 专用寄存器组中只有PC在物理上是独立的 即没有与其他器件共同编码的物理地址 其余5个寄存器都有相应的直接地址 称字节地址 是一个独立的计数器 用于存放下一条待执行指令的地址 PC的基本工作过程可以描述为 PC中的数作为指令地址输出给程序存储器 程序存储器按此地址输出指令字节 同时PC本身自动加1 指向下一条指令 MCS 51的PC是一个16位寄存器 其寻址范围是64KB 即216Byte 1 程序计数器PC ProgramCounter 2 累加器ACC Accumulator 简称A寄存器或累加器A 是一个具有特殊用途的8位寄存器 主要用来存放一个操作数或存放运算的结果 累加器ACC是CPU中使用最频繁的寄存器 MCS 51指令系统中多数指令的执行都通过它进行 3 程序状态字PSW ProgramStateWord D7D6D5D4D3D2D1D0 PSW 进位标志 位累加器 辅助进位标志 用户通用状态标志 溢出标志 奇偶标志位 保留位 工作寄存器组选择控制位 若A中有奇数个 1 则P置位 否则清零 1 3存储器的结构 自学 回答以下问题 1 MCS 51存储器的ROM和RAM分别存放什么内容 其体系结构什么样的结构 有何特点 2 8051单片机的片内ROM的容量有多大 如果要扩展了程序存储器 单片机的程序存储在片内ROM和片外ROM两个空间中 必须对单片机的引脚如何处理 片外ROM的地址范围是怎样的 3 8031没有片内ROM 则对单片机的引脚如何处理 4 51子系列单片机片内RAM容量多大 分为哪几大区域 5 51单片机片机RAM中的工作寄存器区有多少个单元 分几组 每组多少个单元 这些单元如何命名的 6 ROM 片内RAM 片外RAM分别称为什么区 1 3存储器结构 普林斯顿 Princeton 结构 将程序和数据合用一个存储器空间的结构 哈佛 Harvard 结构 程序存储器和数据存储器截然分开 ROM和RAM独立编址并分别寻址的结构 相互间不会冲突 在MCS 51系列单片机中 不仅在片内预留了一定容量的程序存储器 数据存储器 而且还具有很强的外部存储器扩展能力 可扩展到64KB 80318751805189C51 256B 字节 4KB 64K 64K 1 3 1程序存储器 程序存储器 Programmemory 主要用于存放经调试正确的应用程序和常数表格 称为CODE区 由于MCS 51系列单片机采用16位的程序计数器PC和16位的地址总线 因而程序存储器可扩展的地址空间为64KB 并且这64KB地址在空间分布范围上是连续和统一的 程序存储器的应用形态 当EA为高电平时 程序运行先从片内ROM取指令 当片内ROM指令取完后 PC 0FFFH 再从片外ROM取指令 当EA为低电平时 只从片外ROM取指令 程序存储器的应用形态 8051中含有4KB容量的掩膜ROM 8751中含有4KB容量的EPROM 89C51中含有4KB容量的FlashROM EA接高电平 8031 8032中不设程序存储器 这种单片机在供应状态上称为ROMLess型器件 使用过程中必须外部扩展ROM EA接高电平 数据存储器 内部RAM 特殊功能寄存器 内部RAM存储器 1 3 2内部数据存储器 称为DATA区 1 3 3外部数据存储器 可以扩展64KB称XDATA区页内寻址 没有高8位地址 区为PDATA区 外部数据存储器 1 4并行输入 输出接口 接口电路是微机应用系统中必不可少的组成部分 其中并行输入 输出接口是CPU与外部进行信息交换的主要通道 MCS 51单片机内部有4个并行的I O接口电路 P0 P1 P2 P3 它们都是双向口 既可以输入又可以输出 P0 P2口经常用作外部扩展存储器时的数据 地址总线 P3口除了可用作I O口外 每一根都有第二功能 通过这些I O接口 单片机可以外接键盘 显示器等外围设备 还可以进行系统扩展 以解决片内硬件资源不足问题 1 P0口 总结特点 1 P0口可作通用I O口使用 又可作地址 数据总线口 2 P0既可按字节寻址 又可按位寻址 3 作通用I O口输出时 是开漏输出 应外接上拉电阻 4 P0是一个准双向口 1 P0口 2 P1口 1 只能作I O口 没有地址 数据复用功能 2 可按字节寻址 也可按位寻址 3 是一准双向口 输出驱动接有上拉电阻 不是开漏输出 3 P2口 1 当P2口作为通用I O时 是一准双向口 2 从P2口输入数据时 先向锁存器写 1 3 可位寻址 也可按字节寻址 4 可输出地址高8位 3 P2口 4 P3口 1 当P3口作为通用I O接口时 第2功能输出线为高电平 2 当P3口作为第2功能使用时 应先向锁存器写1 3 当P3口作为第二功能输入时 第2功能输出线自动为1 P3口的第二功能 1 4 2并行I O口的使用特性 MCS 51系列单片机的4个并行I O口均由内部总线控制 端口的功能复用会自动识别 不用指令选择 P0是8位 漏极开路的双向I O口 当用作片外存储器或接口扩展时 分时复用为数据总线和低8位地址总线 可驱动8个LSTTL负载 P1是8位 准双向I O口 具有内部上拉电阻 驱动为4个LSTTL负载 P2是8位 准双向I O口 具有内部上拉电阻 可驱动4个LSTTL负载 外部扩展时用作高8位地址总线 P3是8位 准双向I O口 具有内部上拉电阻 可驱动4个LSTTL负载 P3口的所有口线都具有第二功能 实现控制总线的作用 1 5单片机芯片的引脚及功能 8 P3口的第二功能 2 振荡电路 XTAL1 XTAL2 3 复位引脚 RST 4 并行口 P0 P1 P2 P3 7 ALE 地址锁存控制信号 1 电源线 VCC 5V VSS 地 VCC VSS XTAL2XTAL1 RST VPD P0 0P0 1P0 2P0 3P0 4P0 5P0 6P0 7 P1 0P1 1P1 2P1 3P1 4P1 5P1 6P1 7 P2 7P2 6P2 5P2 4P2 3P2 2P2 1P2 0 ALE P3 0P3 1P3 2P3 3P3 4P3 5P3 6P3 7 VCC 40脚 接 5V电源正端 VSS 20脚 接 5V电源地端 1 主电源引脚 2 外接晶体引脚 XTAL1 19脚 接外部石英晶体的一端 在单片机内部 它是一个反相放大器的输入端 这个放大器构成了片内振荡器 XTAL2 18脚 接外部晶体的另一端 在单片机内部 接至片内振荡器的反相放大器的输出端 1 RST VPD 9脚 RST即为RESET VPD为备用电源 所以该引脚为单片机的上电复位或掉电保护端 VPD是备用电源输入端 当单片机掉电或电源发生波动导致电源电压下降到一定值时 备用电源通过VPD端给内部RAM供电 保持其中的信息 直至单片机工作电压恢复正常 2 30脚 当访问外部存储器时 ALE 允许地址锁存信号 以每机器周期两次的信号输出 用于锁存出现在P0口的低8位地址 的功能是8751等片内含有ROM器件的编程脉冲输入端 3 控制信号 3 29脚 片外程序存储器读选通信号输出端 低电平有效 4 VPP 31脚 为访问外部程序存储器控制信号 低电平有效 VPP是编程电源输入端 1 P0口 39脚 32脚 P0 0 P0 7统称为P0口 2 P1口 1脚 8脚 P1 0 P1 7统称为P1口 可作为准双向I O接口使用 3 P2口 21脚 28脚 P2 0 P2 7统称为P2口 一般可作为准双向I O接口 4 P3口 10脚 17脚 P3 0 P3 7统称为P3口 4 输入 输出 I O 案例1单片机控制右侧发光二极管亮灭 让最右边的发光二极管亮 其它不亮 给P0 0送0 其他位送1 可让D8亮而其他灯不亮 1 案例程序 includevoidmain unsignedintvalue value 0 xfe P0 value 2 KeilC51调试方法与步骤 要使用Keil软件 首先要正确安装Keil软件 该软件的Eval版本可以直接去下载 1 建立工作项目文件 启动Keil Vison2 如果打开后就有打开的文件 单击 Project CloseProject 菜单将其关闭 单击 File New 打开一个新的文件输入窗口 在这个窗口里输入上述源程序 输入完毕之后 选择 File Save 给这个文件取名保存 单击 Project NewProject 出现对话框 要求给将要建立的工程起一个名字 这里起名为test 不需要输入扩展名 单击 保存 按钮 出现第二个对话框 CPU选择窗口 标准8051启动代码加入工程 询问是否要将标准的8051启动代码加入工程 单击 是 按钮 添加源程序 单击 SourceGroup1 使其反白显示 然后单击鼠标右键 出现一个下拉菜单 选中其中的 AddfiletoGroup SourceGroup1 出现一个对话框 要求寻找源文件 工程选项的设置 选择资源窗口中的 Target1 单击鼠标右键 出现快捷菜单 然后选择 OptionsforTarget Target1 生成单片机烧录文件 在弹出的对话框中选择 output 标签页 选中该页的 CreatHEXFile 前面的复选框 这样在编译后就会生成可以用于烧写的 hex文件 2 项目编译 连接 Project Buildtarget 可以对当前工程进行连接 产生目标代码 Project RebuildAlltargetfiles 将会对当前工程中的所有文件 无论是否修改过 重新进行编译 产生目标代码 而如果选择 Project Translate 项则仅对当前文件进行编译 不进行连接 也就不会产生新的目标代码 编译 设置的工具栏按钮 编译 编译连接 全部重建 停止编译和对工程进行设置 编译后的输出信息 编译过程中的信息将出现在输出窗口中的Build页中 提示获得了名为mytest hex的文件 该文件即可被编程器读入并写到芯片中 同时还可看到该程序的代码量 内部RAM的使用量 外部RAM的使用量等一些信息 除此之外还产生了一些其他相关的文件可被用于Keil的仿真与调试 3 程序的仿真与调试 工程进行汇编 连接成功以后 按组合键 Ctrl十F5 或者选择 Debug Start StopDebugSession 即可进入调试状态 菜单项中出现了一个用于仿真运行和调试的工具条 从左到右依次是复位 运行 暂停 单步 过程单步 执行完当前子程序 运行到当前行 下一状态 打开跟踪 观察跟踪 反汇编窗口 观察窗口 代码作用范围分析 1 串行窗口 内存窗口 性能分析 工具按钮等命令的快捷按钮 仿真或观察P0 P2端口的状态 选择 Peripherals I O Ports Port0 和 Peripherals I O Ports Port2 在主窗口中会出现P0 P2口的状态 需要在程序运行的时候改变P0 0 4 在Proteus中仿真运行 双击桌面上的ISIS7Professional图标或者单击屏幕左下方的 开始 程序 Proteus7Professional ISIS7Professional 出现启动界面后就进入了ProteusISIS集成环境 选择 文件 打开设计 在文件打开对话框中打开task1 dsn文件 由教师提前准备好 本文件在配套光盘 任务1 文件夹中 4 在Proteus中仿真运行 单击ProteusISIS集成环境中下部 仿真工具栏 的最左边的按钮 即 运行 则可在设计区察看运行结果 可以看到最右边的一个发光二极管亮了 5 利用实验箱 或开

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论