数话同传控制器的设计与实现

[09-12 17:48:11]   来源:http://www.88dzw.com  单片机学习   阅读:8232

文章摘要:2.3 数据的调制和解调6字节的帧头包括两字节的位同步、两字节的帧步以及两个自定义的控制字节。这两个控制字节可用于区分语音数据和外部数据。以及在半包发送时指示数据块中实际数据的多少。每18个字节作为一个小数据包,数话同传时,语音数据和外部数据各占一小包。一个字节的帧尾标示一般为0x33。这样的一帧数据传给FX909,带上FEC和CRC位后,这样的一帧数据传给FX909,带上FEC和CRC位后,最大数据量为:(6+1+30+30+1)×8bit=544bit。在60ms的时间内,Modem有能力完成一帧数据的发送(60ms×9600bps=576bit>544bit)。

数话同传控制器的设计与实现,标签:单片机开发,单片机原理,单片机教程,http://www.88dzw.com

2.3 数据的调制和解调

6字节的帧头包括两字节的位同步、两字节的帧步以及两个自定义的控制字节。这两个控制字节可用于区分语音数据和外部数据。以及在半包发送时指示数据块中实际数据的多少。每18个字节作为一个小数据包,数话同传时,语音数据和外部数据各占一小包。一个字节的帧尾标示一般为0x33。这样的一帧数据传给FX909,带上FEC和CRC位后,这样的一帧数据传给FX909,带上FEC和CRC位后,最大数据量为:(6+1+30+30+1)×8bit=544bit。在60ms的时间内,Modem有能力完成一帧数据的发送(60ms×9600bps=576bit>544bit)。这从一个侧面证明了本系统采用的数话同传方案的可行性。FX909工作在任务方式下,单片机通过写任务到FX909的命令寄存器去指示Modem的工作,当FX909完成工作后以中断的形式通知单片机当前操作已经完成。软件实现发送和接收数据的过程如下:发送数据时,设置FX909的工作模式为发送状态,写帧头数据,设置任务=T7H,发7个字节帧头(FX909内部帧头带一个字节的FEC和CRC);然后往FX909数据缓冲区中写入18个字节的数据,设置任务=TDB,发送数据块;若本帧未结束,继续发送数据块,发送结束后再发一个字节的帧结束标志;如此反复直到所有的数据发送结束为止。接收数据时,先设置FX909的工作模式为接收状态,检测到载波信号后,写帧同步字节至数据缓冲区,设置任务=LFSB,进行比特同步;然后设置任务=SFH,查找帧头,读出帧头控制字节后设置任务=RDB,读出18个字节的数据;若本帧未结束,继续读数据块,否则查找下一个帧头;如此反复,直至接收完所有的数据。同时还可以读出CRC和FEC标志位信息,进行相应的处理。

图4

本文实现的数话同传控制器具有话音延迟短、数据传输量大的特点,有效地解决了语音信号延迟比较大和外部数据传输量受限问题,能够满足绝大多数场合下话音通信和数据传输的要求,有着广泛的应用前景。




上一页  [1] [2] [3] 


Tag:单片机学习单片机开发,单片机原理,单片机教程单片机学习

《数话同传控制器的设计与实现》相关文章

分类导航
最新更新
热门排行