单片机原理与实践 第6章 MCS-51单片机功能模块的原理及应用.pptVIP

单片机原理与实践 第6章 MCS-51单片机功能模块的原理及应用.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
单片机原理与实践 第6章 MCS-51单片机功能模块的原理及应用

6. MCS-51单片机功能模块的原理及应用 6.1 MCS-51单片机的通用输入/输出端口 6.1 MCS-51单片机的通用输入/输出端口 6.1 MCS-51单片机的通用输入/输出端口 6.1 MCS-51单片机的通用输入/输出端口 6.1 MCS-51单片机的通用输入/输出端口 6.1 MCS-51单片机的通用输入/输出端口 6.1 MCS-51单片机的通用输入/输出端口 6.1 MCS-51单片机的通用输入/输出端口 6.1.2 MCS-51单片机外部存储器的扩展 6.1.2 MCS-51单片机外部存储器的扩展 6.1.3 MCS-51单片机输入/输出接口的扩展 扩展方式 总线扩展 非总线扩展 并行接口和串行接口 模拟接口和数字接口 输入接口 键盘 模数转换器 Analog-to-Digital converter,ADC、A/D 或A to D 温度传感器 6.1.3 MCS-51单片机输入/输出接口的扩展 输出接口 LED显示器 段——单色 点阵——单色、多色、彩色 LCD显示器 字符/点阵 单色、伪彩色(STN)、彩色(TFT) 数模转换器 Digital-to-Analog converter,DAC、D/A 或D to A 打印机 6.1.3 MCS-51单片机输入/输出接口的扩展 Intel的可编程输入/输出接口芯片,大都可与MCS-51单片机直接连接 并行输入/输出接口芯片8255和8155 可编程串行通信接口芯片8250和8251 键盘显示接口8279 定时/计数接口芯片8253 常用的模拟接口有A/D转换接口芯片0809、 D/A转换接口芯片0832等 6.1.3 MCS-51单片机输入/输出接口的扩展 输入/输出端口操作的读—修改—写特性 MCS-51两种读端口的操作 读引脚——直接读取单片机引脚的逻辑电平 读端口寄存器 读—修改—写(read-modify-write) 读端口寄存器—修改—写端口寄存器 读—修改—写的主要特征 目的操作数为端口或端口的某个位,且操作结果与这些端口或端口的某个位的原数据有关 6.2 MCS-51单片机的定时器/计数器 6.2.2 MCS-51单片机的定时器/计数器的工作原理 定时器/计数器0,1的模式0/1 定时器/计数器0,1的模式0/1 定时器/计数器0,1的模式2 定时器/计数器0,1的模式3 计数器/定时器0有效,计数器/定时器1为停止运行 定时器/计数器2 带捕捉功能的16位的定时器/计数器 带重装功能的16位的定时器/计数器 通用异步收发器的波特率发生器 带捕捉功能的16位定时器/计数器 带重装功能的16位定时器/计数器 定时器/计数器的应用 TMOD、TCON,定时器/计数器0,1 T2CON,定时器/计数器2 TMOD TCON T2CON 6.2.3 定时器/计数器的应用编程 确定定时器的工作模式 计算定时器的初值 对于周期性的定时,一般应使用具有定时初值硬件自动重装的功能。 定时时间不能超出特定定时器的工作模式下的最长定时时间 最长定时时间 = 系统时钟周期 × 12 × 2n 6.2.3 定时器/计数器的应用编程 程序 6?5 250μs定时 #include reg52.h #define SYSCLK#define c_tmr0 -(SYSCLK/12)*250/1000000 // -(SYSCLK/12)/1000/4 sbit P1_0 = P1^0; void main (void) { TMOD |= 2; TH0 = c_tmr0; TR0 = 1; ET0 = 1; EA = 1; while (1); } void tmr0_ISR(void) interrupt 1 { P1_0 =~P1_0; } 6.2.3 定时器/计数器的应用编程 程序 6?6 20ms定时 #include reg52.h #define SYSCLK#define c_tmr0 -(SYSCLK/12)*20/1000 void ini_tmr0_c (void); void main (void) { TMOD |= 1;ini_tmr0_c ();ET0 = 1;EA = 1; while (1); } void tmr0_ISR(void) interrupt 1 { ini_tmr0_c (); } void ini_tmr0_c (void) { TR0 = 0; TL0 = c_tmr0;TH0 = c_tmr08; TR0 = 1; } 6.2.3 定时器/计数器的应用编程 程序 6?9 1s定时 #include

文档评论(0)

cgtk187 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档