单片机单闪烁.pptVIP

  • 14
  • 0
  • 约4.21千字
  • 约 20页
  • 2017-02-05 发布于湖北
  • 举报
任务驱动教学模式 任务驱动教学模式 任务一:单灯闪烁 任务二:键控灯亮 任务三:彩灯 任务四:中断系统 任务五:定时/计数器 任务六:串行通信 任务七:外部RAM/ROM扩展 任务八:并行I/O口扩展 任务九:数码管显示器接口扩展 任务十:键盘接口扩展 任务十一:A/D接口扩展 任务十二:D/A接口扩展 任务一 单灯闪烁 MCS-51单片机内部结构 MCS-51单片机内部结构 中央处理器CPU:8位,运算和控制功能 内部RAM:共256个RAM单元,用户使用前128个单元, 存放可读写数据,后128个单元被SFR占用。 通常内部RAM指的是前128B,即00H-FFH。 内部ROM:4KB FLASH ROM,用于存放程序、原始数 据和表格。 定时/计数器:2个16位的定时/计数器,实现定时或计数功 能。 并行I/O口:4个8位的I/O口P0、P1、P2、P3。 串行口:一个全双工串行口。 中断控制系统:5个中断源 时钟电路:可产生时钟脉冲序列 MCS-51单片机外部引脚 P3口线的第二功能 MCS-51单片机外部引脚 MCS-51单片机时钟电路 MCS-51 CPU时序 复位工作方式 复位电路 复位电路 硬件连接 软件 //ledone.c 单灯点亮程序,点亮与//P1.0相连的LED #include reg51.h sbit LED0=P1^0; void main() { while(1) { LED0=1; } } 软件 //ledone.c 单灯点亮程序 #include reg51.h void main() { while(1) { P1=0xff; } } 编译、调试 软件 //ledoneflash.c 单灯闪烁程序 #include reg51.h //文件包含,预处理命令 sbit LED0=P1^0; //定义LED0所连I/O口为P1.0 //延时子程序:由Delay参数决定延时时间 void mDelay(unsigned int Delay) { unsigned int i; for(;Delay0;Delay--) { for(i=0;i54;i++) ; } } void main() { while(1) { LED0=1; //LED0点亮 mDelay(1000); //延时约1s LED0=0; //LED0熄灭 mDelay(1000); //延时约1s } } 思考题和作业 思考题 1、编程器、仿真器、ICE、IDE是什么意思? 2、如果要使用片外的程序存储器,硬件应该如何设置? 3、如果要点亮P1.7口所连的LED,软件应该如何修改? 作业 1、教材P26: 二-1、二-9 2、试设计另外一种单片机与LED的硬件连接图,并编写程序 控制LED的闪烁。 * * 硬件结构 指令编程 系统扩展 应用举例 硬件结构 软件编程 应用尝试 任务 片内资源 任务分析:单片机点亮一个LED,进而控制LED闪烁 硬件 MCS-51单片机内部结构 MCS-51单片机最小系统:引脚 + 时钟电路+ 复位电路 (P10、P21-24) 单片机与一个LED的连接 软件 C51 编程 编译与调试 Wave 6000软件 时钟电路 CPU ROM RAM T0 T1 中断系统 串行接口 并行接口 P0 P1 P2 P3 TXD RXD INT0 INT1 定时计数器 内部结构框图 中央处理器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个) 时钟电路:

文档评论(0)

1亿VIP精品文档

相关文档