51单片机超详细教程(超赞)教案资料

上传人:youn****329 文档编号:129635916 上传时间:2020-04-23 格式:PPT 页数:242 大小:3.45MB
返回 下载 相关 举报
51单片机超详细教程(超赞)教案资料_第1页
第1页 / 共242页
51单片机超详细教程(超赞)教案资料_第2页
第2页 / 共242页
51单片机超详细教程(超赞)教案资料_第3页
第3页 / 共242页
51单片机超详细教程(超赞)教案资料_第4页
第4页 / 共242页
51单片机超详细教程(超赞)教案资料_第5页
第5页 / 共242页
点击查看更多>>
资源描述

《51单片机超详细教程(超赞)教案资料》由会员分享,可在线阅读,更多相关《51单片机超详细教程(超赞)教案资料(242页珍藏版)》请在金锄头文库上搜索。

1、全国高职高专规划教材 精品与示范系列 单片机应用技术 C语言版 王静霞主编 本章内容什么是单片机MCS 51内部组成及信号引脚单片机最小系统电路MCS 51存储器结构 第1章单片机硬件系统 什么是单片机 单片机应用系统 单片机应用系统由硬件和软件组成 硬件是应用系统的基础 软件是在硬件的基础上对其资源进行合理调配和使用 从而完成应用系统所要求的任务 二者相互依赖 缺一不可 单片机种类 目前8位单片机仍是单片机的主流机型 生产厂商 单片机的发展经历了由4位机到8位机 再到16位机的发展过程 美国微芯片公司 PIC16C 系列 PIC17C 系列 PIC1400系列 美国英特尔公司的MCS 48和

2、MCS 51系列 美国摩托罗拉公司的MC68HC05系列和MC68HC11系列 美国齐洛格公司的Z8系列 日本电气公司的 PD78 系列 美国莫斯特克公司和仙童公司合作生产的F8 3870 系列等 单片机硬件结构 中央处理器CPU 8位 运算和控制功能 内部RAM 共256个RAM单元 用户使用前128个单元 用于存放可读写数据 后128个单元被专用寄存器占用 内部ROM 4KB掩膜ROM 用于存放程序 原始数据和表格 定时 计数器 两个16位的定时 计数器 实现定时或计数功能 并行I O口 4个8位的I O口P0 P1 P2 P3 串行口 一个全双工串行口 中断控制系统 5个中断源 外中断2

3、个 定时 计数中断2个 串行中断1个 时钟电路 可产生时钟脉冲序列 允许晶振频率6MHZ和12MHZ 复位电路 8051单片机的基本组成 中央处理器CPU 8位 运算和控制功能内部RAM 共256个RAM单元 用户使用前128个单元 用于存放可读写数据 后128个单元被专用寄存器占用 内部ROM 4KB掩膜ROM 用于存放程序 原始数据和表格 定时 计数器 两个16位的定时 计数器 实现定时或计数功能 并行I O口 4个8位的I O口P0 P1 P2 P3 串行口 一个全双工串行口 中断控制系统 5个中断源 外中断2个 定时 计数中断2个 串行中断1个 时钟电路 可产生时钟脉冲序列 允许晶振频

4、率6MHZ和12MHZ MCS 51单片机信号引脚简介 P3口线的第二功能 VCC VSS XTAL2XTAL1 RST 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 2 振荡电路 XTAL1 XTAL2 3 复位引脚 RST 4 并行口 P0 P1 P2 P3 7 ALE 地址锁存控制信号 1 电源线 VCC 5V VSS 地 时钟电路与复位电路 1 时钟振荡电路 时序

5、 关于MCS 51系列单片机的时序概念有4个 可用定时单位来说明 从小到大依次是 节拍 状态 机器周期和指令周期 下面分别加以说明 1 节拍与状态把振荡脉冲的周期定义为节拍 用P表示 也就是晶振的振荡频率fosc 2 状态振荡脉冲fosc经过二分频后 就是单片机时钟信号的周期 定义为状态 用S表示 一个状态包含两个节拍 其前半周期对应的节拍叫P1 后半周期对应的节拍叫P2 3 机器周期MCS 51系列单片机采用定时控制方式 有固定的机器周期 规定一个机器周期的宽度为6个状态 即12个振荡脉冲周期 因此机器周期就是振荡脉冲的十二分频 小提示当振荡脉冲频率为12MHz时 一个机器周期为1 s 当振

6、荡脉冲频率为6MHz时 一个机器周期为2 s 2 复位电路 单片机复位条件 必须使RST引脚持续2微秒高电平 外部时钟12MHz 存储器 80318751805189C51 256B 字节 4K 1 程序存储器 程序存储器 内部 外部 PC 程序存储器资源分布 中断入口地址 在单片机C语言程序设计中 用户无需考虑程序的存放地址 编译程序会在编译过程中按照上述规定 自动安排程序的存放地址 例如 C语言是从main 函数开始执行的 编译程序会在程序存储器的0000H处自动存放一条转移指令 跳转到main 函数存放的地址 中断函数也会按照中断类型号 自动由编译程序安排存放在程序存储器相应的地址中 因

7、此 读者只需了解程序存储器的结构就可以了 内部 外部 2 数据存储器 数据存储器 RAM 专用寄存器 内部RAM存储器 工作寄存器区选择位RS0 RS1 注意 一个单元地址对应有8个位地址MSB MostSignificantBit 最高有效位 LSB LeastSignificantBit 最低有效位 RAM位寻址区位地址表 高128个单元 离散分布有21个特殊功能寄存器SFR 11个可以进行位寻址 特别提示 对SFR只能使用直接寻址方式 书写时可使用寄存器符号 也可用寄存器单元地址 在单片机的C语言程序设计中 可以通过关键字sfr来定义所有特殊功能寄存器 从而在程序中直接访问它们 例如 s

8、frP1 0 x90 特殊功能寄存器P1的地址是90H 对应P1口的8个I O引脚在程序中就可以直接使用P1这个特殊功能寄存器了 下面语句是合法的 P1 0 x00 将P1口的8位I O口全部清0C语言中 还可以通过关键字sbit来定义特殊功能寄存器中的可寻址位 在程序ex1 1 c中 采用了下面语句定义P1口的第0位 sbitP1 0 P1 0 通常情况下 这些特殊功能寄存器已经在头文件reg51 h中定义了 只要在程序中包含了该头文件 就可以直接使用已定义的特殊功能寄存器 如果没有头文件reg51 h 或者该文件中只定义了部分特殊功能寄存器和位 用户也可以在程序中自行定义 AVR 单片机

9、C语言 C51 编程基础 实例 好资料 AVR 单片机 C语言 C51 编程基础 实例 好资料 本章内容单片机开发系统及功能KeilC51软件的使用 第2章单片机开发系统 单片机开发系统及功能 单片机开发系统是单片机应用系统设计的必需工具 包括计算机 单片机在线仿真器 工具软件 编程器等 在线仿真功能调试功能1 运行控制功能2 目标系统状态的读出修改功能辅助设计功能1 程序设计语言2 程序编译程序固化功能 KeilC51软件的使用 KeilC51启动窗口 KeilC51软件的使用 建立工程文件 KeilC51软件的使用 选择目标CPU KeilC51软件的使用 图2 17文本编缉窗口 Keil

10、C51软件的使用 增加文件到组中 KeilC51软件的使用 选择文件类型 KeilC51软件的使用 目标属性 KeilC51软件的使用 产生执行文件 KeilC51软件的使用 选择仿真方式 KeilC51软件的使用 KeilC51内建了一个仿真CPU来模拟执行程序 该仿真CPU功能强大 可以在没有硬件和仿真器的情况下进行程序的调试 不过 软件模拟与真实的硬件执行程序还是有区别的 其中最明显的就是时序 具体表现在程序执行的速度和用户使用的计算机有关 计算机性能越好 运行速度越快 本章内容单片机开发系统及功能KeilC51软件的使用 第2章单片机开发系统 单片机开发系统及功能 单片机开发系统是单片

11、机应用系统设计的必需工具 包括计算机 单片机在线仿真器 工具软件 编程器等 在线仿真功能调试功能1 运行控制功能2 目标系统状态的读出修改功能辅助设计功能1 程序设计语言2 程序编译程序固化功能 KeilC51软件的使用 KeilC51启动窗口 KeilC51软件的使用 建立工程文件 KeilC51软件的使用 选择目标CPU KeilC51软件的使用 图2 17文本编缉窗口 KeilC51软件的使用 增加文件到组中 KeilC51软件的使用 选择文件类型 KeilC51软件的使用 目标属性 KeilC51软件的使用 产生执行文件 KeilC51软件的使用 选择仿真方式 KeilC51软件的使用

12、 KeilC51内建了一个仿真CPU来模拟执行程序 该仿真CPU功能强大 可以在没有硬件和仿真器的情况下进行程序的调试 不过 软件模拟与真实的硬件执行程序还是有区别的 其中最明显的就是时序 具体表现在程序执行的速度和用户使用的计算机有关 计算机性能越好 运行速度越快 本章内容并行I O口电路结构认识C语言C语言的基本语句C语言数据与运算数组的概念 第3章单片机并行I O口应用 并行I O口电路结构 MCS 51系列单片机共有四个8位并行I O口 分别用P0 P1 P2 P3表示 每个I O口既可以按位操作使用单个引脚 也可以按字节操作使用8个引脚 P0口的结构 P0口逻辑电路 当P0口作为输出

13、口使用时 内部总线将数据送入锁存器 内部的写脉冲加在锁存器时钟端CP上 锁存数据到Q 端 经过MUX T2反相后正好是内部总线的数据 送到P0口引脚输出 当P0口作为输入口使用时 应区分读引脚和读端口两种情况 所谓读引脚 就是读芯片引脚的状态 这时使用下方的数据缓冲器 由 读引脚 信号把缓冲器打开 把端口引脚上的数据从缓冲器通过内部总线读进来 读端口是指通过上面的缓冲器读锁存器Q端的状态 读端口是为了适应对I O口进行 读 修改 写 操作语句的需要 例如下面的C51语句 P0 P0 将P0口的低4位引脚清0输出 P0口的结构 除了I O功能以外 在进行单片机系统扩展时 P0口是作为单片机系统的

14、地址 数据线使用的 一般称为地址 数据分时复用引脚 当输出地址或数据时 由内部发出控制信号 使 控制 端为高电平 打开与门 并使多路开关MUX处于内部地址 数据线与驱动场效应管栅极反相接通状态 此时 输出驱动电路由于两个FET处于反相 形成推拉式电路结构 使负载能力大为提高 输入数据时 数据信号直接从引脚通过输入缓冲器进入内部总线 P0口的结构 P1口的结构 P1口逻辑电路 P1口是准双向口 只能作为通用I O口使用 P1口作为输出口使用时 无需再外接上拉电阻 P1口作为输入口使用时 应区分读引脚和读端口 读引脚时 必须先向电路中的锁存器写入 1 使输出级的FET截止 P1口的结构 P2口的结

15、构 P2口逻辑电路 P2口是准双向口 在实际应用中 可以用于为系统提供高8位地址 也能作为通用I O口使用 P2口作为通用I O口的输出口使用时 与P1口一样无需再外接上拉电阻 P2口作为通用I O口的输入口使用时 应区分读引脚和读端口 读引脚时 必须先向锁存器写入 1 P2口的结构 P3口的结构 P3口逻辑电路 P3口是准双向口 可以作为通用I O口使用 还可以作为第二功能使用 作为第二功能使用的端口 不能同时当作通用I O口使用 但其他未被使用的端口仍可作为通用I O口使用 P3口作为通用I O的输出口使用时 不用外接上拉电阻 P3口的结构 认识C语言 C语言程序以函数形式组织程序结构 C

16、程序中的函数与其他语言中所描述的 子程序 或 过程 的概念是一样的 C程序基本结构 认识C语言 一个C语言源程序是由一个或若干个函数组成 每一个函数完成相对独立的功能 每个C程序都必须有 且仅有 一个主函数main 程序的执行总是从主函数开始 调用其他函数后返回主函数main 不管函数的排列顺序如何 最后在主函数中结束整个程序 C语言程序中可以有预处理命令 预处理命令通常放在源程序的最前面 C语言程序使用 作为语句的结束符 一条语句可以多行书写 也可以一行书写多条语句 认识C语言 结构化语言丰富的数据类型便于维护管理与汇编语言相比 C语言的优点如下 不要求编程者详细了解单片机的指令系统 但需了解单片机的存储器结构 寄存器分配 不同存储器的寻址及数据类型等细节可由编译器管理 结构清晰 程序可读性强 编译器提供了很多标准库函数 具有较强的数据处理能力 C语言的基本语句 语言程序的执行部分由语句组成 C语言提供了丰富的程序控制语句 按照结构化程序设计的基本结构 顺序结构 选择结构和循环结构 组成各种复杂程序 这些语句主要包括表达式语句 复合语句 选择语句和循环语句等 表达式语句和复合语句 表

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号