单片机通信教程:系统极化码与非系统极化码对比
需积分: 50 52 浏览量
更新于2024-08-07
收藏 3.81MB PDF 举报
"该资源是一本关于单片机原理与应用及C51程序设计的教材,由唐颖主编,主要涵盖了单片机的基础知识、MCS-51系列单片机的结构、指令系统、C语言编程、硬件资源应用、系统扩展、接口技术和实际应用设计等内容。书中包含大量实例,采用汇编与C语言对照的方式,旨在提升读者的实际编程能力和系统设计能力。适合作为高校相关专业教材和工程技术人员的参考书。"
在单片机通信中,多机通信是一种常见的应用场景,特别是在分布式系统和网络通信中。在MCS-51系列单片机的多机通信中,硬件连接是基础,通常涉及到串行通信接口如UART(通用异步收发传输器)。如图5.28所示的多机通信硬件连接图,可能描绘了多个单片机如何通过串行线路相互连接。
多机通信的程序设计步骤如下:
1. **地址分配**:每个从机需要有自己的独特地址,以便主机能准确地呼叫和通信。
2. **工作模式设置**:主从机需设置为方式2或方式3,这两种工作模式支持多机通信。同时,需要设置相同的波特率,以确保数据传输的一致性。
3. **启动通信**:主机通过设置TB8位为1,发送地址帧,这相当于呼叫一个特定的从机。TB8位在9位数据模式下用于区分地址帧和数据帧。
4. **从机响应**:从机端的SM2位被设置为1,当接收的RB8位为1时,RI标志位被置1,表示接收到地址帧。从机会在RI中断处理程序中检查是否是自己的地址,如果是,则清除SM2位,准备接收数据;如果不是,则保持SM2位为1。
5. **数据传输**:主机随后将TB8位设置为0,发送数据。此时,只有被呼叫的从机(SM2已被清零)会在接收数据时产生RI中断,其他从机因为SM2仍为1,不会对RB8为0的数据产生中断,从而避免接收错误的数据。
本书《单片机原理与应用及C51程序设计》深入讲解了这些通信过程,并通过丰富的实例,特别是第8和第9章,提供了汇编和C语言的编程对照,帮助读者理解和实践单片机的多机通信技术。对于希望掌握和应用单片机技术的工程师和学生来说,这本书是一个宝贵的资源,它不仅提供理论知识,还强调了实践技能的培养。
点击了解资源详情
点击了解资源详情
点击了解资源详情
2021-09-19 上传
点击了解资源详情
2024-10-28 上传
2021-05-20 上传
2021-09-18 上传
2021-09-19 上传
杨_明
- 粉丝: 77
- 资源: 3866
最新资源
- 深入浅出:自定义 Grunt 任务的实践指南
- 网络物理突变工具的多点路径规划实现与分析
- multifeed: 实现多作者间的超核心共享与同步技术
- C++商品交易系统实习项目详细要求
- macOS系统Python模块whl包安装教程
- 掌握fullstackJS:构建React框架与快速开发应用
- React-Purify: 实现React组件纯净方法的工具介绍
- deck.js:构建现代HTML演示的JavaScript库
- nunn:现代C++17实现的机器学习库开源项目
- Python安装包 Acquisition-4.12-cp35-cp35m-win_amd64.whl.zip 使用说明
- Amaranthus-tuberculatus基因组分析脚本集
- Ubuntu 12.04下Realtek RTL8821AE驱动的向后移植指南
- 掌握Jest环境下的最新jsdom功能
- CAGI Toolkit:开源Asterisk PBX的AGI应用开发
- MyDropDemo: 体验QGraphicsView的拖放功能
- 远程FPGA平台上的Quartus II17.1 LCD色块闪烁现象解析