PIC单片机控制Modem的串行通信设计
在工程中,常采用Modem通过模拟线路进行数据的远程传输。我们用工业级PIC16F87系列单片机控制Modem完成串行异步/同步通信,在较低速率的线路上实现了数据的实时传输,收到了很好的效果。
本文就系统中PIC单片机控制Modem的串行通信技术,在硬件、软件两方面进行了分析。
1 PIC单片机及其同步/异步串行接口USART模块功能简介
PIC16F877A单片机内部有8K*14的FLASH程序存储器和512字的RAM数据存储器:不仅采用哈佛体系结构,而且还采用哈佛总线结构,流水线操作,PIC16F877A大大提高了指令执行速度,PIC单片机的系统时钟可以工作在DC-20MHz的频率范围之内。优化的CPU结构,加上精简指令集(RISC)技术,更加快了指令执行速度,这为复杂控制算法的实现提供了良好的条件。
本系统采用的是PIC16F87系列单片机,其内部集成了同步/异步串行接口USART模块,适合同单片机外部扩展独立的外设部件进行串行通信。并且可以定义三种工作方式:全双工异步、半双工同步主控和半双工同步从动方式。
2 PIC单片机控制Modem 实现异步串行通信
利用PIC单片机,可实现对Modem的控制,从而进行异步通信。USART模块在单片机的RX引脚上接收,在TX引脚上发送,串行信息的编码方式采用1位起始位、8位数据位和1位停止位。片内提供了一个专用的8位波特率发生器BRG,利用来自时基振荡器的系统时钟信号,产生标准的波特率时钟。USART 模块的接收和发送数据顺序是地位在前。即首先发送最低位(LSB)。USART模块的接收器和发送器在功能上是相互独立的,但是它们所用的数据格式与波特率是相同的。
2.1异步串行通信硬件连接
PIC控制Modem串行通信的原理图如图1。
PIC将要发送的数据通过串口送给本端Modem,将数字信号调制成可在模拟线路上传输的模拟信号,并通过模拟线路传给远方的Modem。远方的Modem将收到的模拟信号还原为数字信号送给与其相连的PIC,PIC通过异步串口发送AT(请求)命令来实现对Modem控制进行串行通信,与Modem接口按RS-232标准设计。PIC的输入输出电平为TTL电平,我们通过电平转换芯片MAX232,实现与RS-232接口的匹配。系统中对Modem的初始化、呼叫(应答)、传输数据及挂机等都由PIC发送的AT命令通过存于Modem的Flash ROM中的程序控制完成。
2.2 异步串行通信软件设计
2.2.1 PIC单片机与USART模块相关的寄存器
PIC单片机USART模块的两条外接引脚是与输入/输出端口RC模块公用的RC7/RX/DT和RC6/TX/CK两条口线,与USART模块有关的寄存器共有9个。
在此.就PIC工作于USART模式时,所涉及的一些位进行介绍,详见表1。
相关文章
- 2024-03-01基于CAN现场总线的分布式柴油发动机测试系统
- 2021-12-173G室内分布系统解决方案
- 2023-06-23车号识别系统在茂名乙烯电子轨道衡中的应用
- 2023-04-15微机电系统中薄膜结构在静电力和Casimir力作用下的稳定性
- 2023-08-15基于AM402的电流量输出电容式角度传感器
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。