1. 接口电路 采用MAX232芯片接口的PC机与51单片机串行通信接口 电路如图5.6所示。 MAX232芯片中有两路发送/接收器, 与51 单片机接口时, 只选其中一路即可。 连接时, 应注意其发送与 接收引脚的对应关系, 否则可能造成器件或计算机串口的永久 性损坏。
图 5.6 PC机与51单片机串行通信接口示例电路
图 5.7 PC机发送文件子函数流程
PC机发送文件子函数Sendf( )的程序清单如下: Void sendf(char *fname) { FIlE *fp; char ch; int handle, count, sum=0; if((fp=fopen(fname, ″r″))==NULL) { printf(″不能打开输入文件!\n″);
while(rport( )!=′?′);
ቤተ መጻሕፍቲ ባይዱ
/*收到联络信号″?″*/
sport(′$′);
ch: ′·′;
sport(ch);
/*发应答信号″·″*/
temp=rport( );
/*收总字节数*/
count=temp;
rep:
for(; count; count--)
{ch=rport( );
/*从串口接收一个字符*/
RS-232C主要用于定义计算机系统的一些数据终端设 备(DTE)和数据通信设备(DCE)之间接口的电气特性。 CRT、 打印机与CPU的通信大都采用RS-232C总线。
1. RS-232C接口的电平转换 RS-232C标准是在TTL电路之前研制的, 它的电平不是 +5 V和地, 而是采用负逻辑, 其逻辑电平为: 逻辑“0”:+3 V~+15 V 逻辑“1”: -3 V~-15 V 因此, RS-232C不能和计算机的TTL电平直接相连, 使用 时必须加上适当的电平转换电路芯片, 否则将使TTL电路烧 坏。