CMX469A和单片机的外部接口电路比较简单,可通过单片机AT89C2051方便设置CMX469A的各功能引脚。CMX469A与单片机AT89C2051的接口关系如图1所示。
在工作过程中,首先通过单片机的P1口设置CMX469A的传输速率,引脚设置及其所对应的传输速率如表1所示。设定好其工作状态后,开启收/发使能,从而启动CMX469A。
软件设计
单片机AT89C2051分别通过外中断0和外中断1控制CMX469A的数据发送和接收。系统中的其他数据设备则通过RS-232或RS-485接口与单片机连接。
在数据接收模式下,单片机首先等待外中断INT1的到来,然后通过P1端口接收CMX469A的解调数据,并将接收的数据通过标准串口发送至RS-232或RS-485接口,从而最终将数据发送至其他设备。
在数据发送模式下,单片机则首先通过串口接收来自其他外部设备的数据,存于数据缓冲区;然后启动CMX469A的发送使能TXENABLE,并等待外中断INT0的到来;在每一次中断产生后,单片机通过P1端口发送1bit数据至CMX469A的TXDATA引脚,调制后的FFSK信号则经TXSIGNAL引脚发送至数传电台进行射频调制,或直接经电缆传输。
系统实现过程中,可以采取在数据包中附加数据同步头的形式,首先收发同步头,从而保持收发同步并保证数据传输的正确性。
需要注意的是,在对CMX469A进行接收使能操作并收到FSK信号后,其载波检测电路至少需要8bit的数据周期才能达到稳定状态,并在其载波检测CARRIERDETECT引脚端有稳定的高电平输出。因此,CMX469A应用在数据突发传输系统中时,如果仅通过其载波检测引脚的状态判断是否有数据接收,将造成数据丢失。
基于MSM7512B的数字MODEM的设计与实现
硬件设计
相比较CMX469A而言,由于MSM7512B为固定传输速率的MODEM芯片,其与单片机的接口更简单。MSM7512B与单片机AT89C2051的接口电路如图2所示。
实际应用中,通过单片机AT89C2051的P1.7引脚设置MSM7512B的模拟发送信号的幅度:数字“1”对应-10dBm的幅度典型值,数字“0”对应-4dBm的幅度典型值。通过设置MSM7512B的MOD1、MOD2引脚的状态,可定义其工作模式,具体定义如表2所示。
软件设计
MSM7512B数字MODEM的软件设计比较简单。由于MSM7512B为半双工MODEM芯片,因此在系统软件设计中,采用查询方式收发数据。为了进行收发同步并保证数据传输的正确性,也采用在数据包前附加数据同步头的方式。
结语
通过以上的设计与论述可以看出,基于MSM7512B的数传MODEM设计更加简单,更加易于实现。但由于MSM7512B芯片的传输速率和双工方式的限制,其只能应用于传输速率为1200bps的半双工数传领域。而基于CMX469A的数传MODEM控制相对复杂一些,但其最大传输速率可达4800bps,且可全双工工作。
总之,基于CMX469A和MSM7512B的无线数传MODEM均具有设计简单、易于实现、功能完善的优点,可广泛应用于安防监控、数据采集等无线数传领域。