请选择 进入手机版 | 继续访问电脑版

国际车载网

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 4365|回复: 1

运用数传模块实现无线语音通信的方案设计

[复制链接]

4

主题

4

帖子

4

积分

车载新手

积分
4

社区居民

发表于 2009-3-6 10:22:13 | 显示全部楼层 |阅读模式
运用数传模块实现无线语音通信的方案设计/ N" ]/ M) `% ^/ F- c
7 a& c6 {6 ?. B  \/ M/ u- J5 _
在各种通信系统中,无线语音通信系统应用广泛。但由
: G5 ?) e0 N1 s1 s' @0 k于其传输信道的特殊性而对语音信息传输的安全性、语音质
' r) E: _6 P6 F2 Z( ?; o3 c+ K量、传输延时、系统工作的可靠性等有着更高的要求。, v) L1 r, y2 {
本文提出一种基于DSP平台构建的一种无线语音保密
: ]$ C" a0 B, T0 _/ r: V通信系统,采用无线数传模块实现无线保密语音的传输。文2 N- V. g. E/ s% H( m: x, `
中着重讨论了其数据传输交换部分的软硬件设计。. R3 y) L4 @9 V# b% v8 N$ r) t3 u
l 无线数传模块
+ _6 @8 t6 w5 l% h! B0 W6 y" t" V/ Y无线数传模块是由射频模块及外围控制电路组成的在无% Z7 U) R" `8 |1 |3 k# m7 ?
线信道上进行数据传输的电路,结构如图1所示。在短距离
4 M. @; i9 P/ l% |; I, X, |8 m无线数据传输应用方面具有接口方便、通信速率较快、成本低; F" K" K- V/ c+ O7 r
廉等优点。
- ~* U- F6 u+ G; P% R. t图1 无线数传模块内部结构& y, A$ n! K, U3 {6 u& H$ W( S
数传模块的串口在接收到串行数据信息后自动形成一帧
- K5 k  D  T0 l: ]5 ~' {; r# u4 x数据消息帧,并对该数据消息帧进行奇偶校验,将校验结果加
0 o0 Q) e3 a8 n" _6 @$ t: m本文于2O04一O6—25收到,2O04一O9一o3收到修改稿。
) L7 N# D8 M- F*本文的研究项目得到2002年度江苏省高新技术研究基金的支持。
. I3 G7 l4 Z: \3 P6 l1 |到尾部,并进行前向纠错编码(FEC)重传,然后再加上比特同
* b# Z, }; p  y2 {步、帧同步,送调制解调后在无线信道上传送。接收方在收到2 ^9 v+ m  p/ N9 J# q1 `
无线数据后,通过比特同步,帧同步后,进行大数判决,纠错译
! Q: f, t+ N# |; p码和奇偶校验以证实是否为正确的数据消息帧,确认为正确
5 F' b3 g9 p1 P: E5 N' _数据后再以串行数据的形式发送出去。为了方便各种用户的
; d  u! G3 h- X/ c应用,串行数据的收发不加任何协议,对用户进行透明传输。8 C' A- g" m% B6 Y$ r3 B  _
本系统选用PTR4500型数传模块,该模块射频部分以/ w' d' w/ D; c* U! p, u
nRF24E1芯片为核心,工作在2.4G开放频段,最大发射功率: s# }  J  j6 J" U
0dBm,在视距情况下可靠传输距离超过1000m。在复杂环境
+ {/ _& a# X/ [3 E# y( e中,传输距离及质量均会有所下降,对于数据需要在软件上作# i. X9 ?8 J8 k/ \% K- z/ z
进一步处理。该模块具有125个频道,满足多频、跳频及点对
8 W; k3 M! f3 {0 X+ g' J& {  g3 t: w点、点对多点无线通信的需求,无线速率最高1Mbps,内置硬
5 \% x! N" u1 U& a% i8 l" }件CRC纠错编码,具有可靠的无线通信性能。提供RS2326 Z% d1 ~6 ]0 t* x, w& T6 b! L" Q6 @
标准串口,串口最高速率115200bit/s,使用方便。模块收发+ @% t) z2 h9 n6 f4 p( m+ o. e9 c
延时10ms,状态转换时间小于1ms。
! B( P. v; h8 o7 e% D2 无线数传模块的通信特点
: R$ v* _8 C7 J, L, f! b利用无线数传模块构建无线信道实现语音通信,在硬件
  B; j/ \2 Y8 o& g! o连接上可视为一个两端口的传输设备,分别对应于TX和$ O0 b$ @* G5 @* U2 z- x2 ~; P) D% R
维普资讯 http://www.cqvip.com  M, P( r! v+ G$ }
692 微计算机应用 2005钲" |) x6 n( F$ w0 Q
RX。但与有线连接方式不同,无线信道通信方式有几个特- m- ~; `; [( y) t% R! C
点:
: j% D# Q# c3 y9 M(1)通信中串口数据的帧格式、串口速率为一固定值,程9 `: X) m8 R' k  Y" T. p
序在这两个参数上应与模块一致。且所选模块传输速率要能! ~" C+ X$ c5 S. T' N) ~0 [
满足实时语音通信码率要求。
: l) \! v5 e; m1 g) P# {(2)有线通信为全双工方式,通信的双方分别在两个信道+ C' W  c& Y1 ^" H* G( L: l8 A
中完成各自的数据收与发。而无线通信为半双工方式,为实
. ?8 \1 i8 y& q5 y4 r- v9 s0 @现在一个无线信道中收发数据,在数据收发时要进行收发状. I# [( w* h. U( e9 ^
态的转换及时钟同步。同时,无线通信时设备A发出数据的
$ M- [+ f4 E- h" H时刻与设备B收到数据的时刻有一定延时T。( d# _: I4 f5 a' O$ j7 c
(3)数传模块在发送和接收两状态之间进行转换时需要% X# O0 h. F( m  O0 n. [
有数毫秒的转换时间。
4 r3 E% u$ n1 n+ G* B霹 fli~辑l S P_M胎4A5l9 m' g7 ]- t2 s+ A% t  q" ]3 g
匝 f r医8 I" A$ x' j- s4 s
匪 I团
) b* @# [3 @6 ]+ Sl 器/ f( u4 G( G8 w! y! U' j
3 系统硬件方案及接口电路设计. C7 `2 i; c( E
我们选用TI公司的TMS320VC5409芯片构建硬件平: C& m% f# h% }! N) G
台,系统的结构如图2所示。正常工作时,通信双方的A/D
% b& T) }( H) r转换芯片(TI 口2OAD5Oc)分别同时对放大和滤波后的语音
& n: V4 ]) O1 w) Q信号进行采集,经数字化成为每秒8kX16bit的数据流存入$ z' h/ e5 _$ P) s0 X8 P
DSP芯片的缓冲区。A/D芯片每30ms发出一次中断要求' C% G* b. u- s; B* V( \& k/ X& Q1 q
DSP对该数据进行处理,包括对语音信号的压缩、解压缩和6 `; G, L; O+ {4 [0 Y
加解密,并最终经由标准异步串行接口通过无线数传模块实3 g9 h8 L- @* e/ q1 E
现数据收发。
8 ~# L; D' S+ z9 S( w  {9 jDSP与数传模块之间以标准异步串口方式通信,UART5 b5 o9 \& L( j8 ~
硬件接口设计如图3所示。通信过程中,DSP只需对串口控
, [( Y1 \4 q' M, O; K+ c. k制芯片进行初始化,即可通过标准串口收发数据。对UART
/ e: D3 e( x# e' t的初始化设置见下面程序。
; f  S# ?- V" Z: n  u' N( e7 [STI M B。AR0- I; n: ?" R. A: i% Y' T% {8 N
P0RTW AR0.UART_ RBR_ REG
: r; ^+ q* o7 |S LM A。AR0
) K6 E  ^' V: u; T/ _P0RTW AR0.UART_ MSB_ REG
' d, c- s8 L, W1 I(LS=2 MS=0,即波特率因子为0002h)
) K: T9 S& U2 ^; A" V$ NSTM #03,AR0- B: Y4 r" m7 |7 H2 P
DO.D7 DO.D7 OUT1\ T1 N T1OUT DCD, 、% T* F  n: x0 s# o
AO.A2 A .A2 DTr\ T2 N T2OUT DSR 18 n: a. t. g, F* |5 J; u2 Z- C- x
6
- l, G, E6 C! I5 q' k地址 CSO SOUT TxD 3% `8 }% J) D  ~) V
A3.A22 译码 CS1 RTS\ T41N T4OUT CTS 8
2 t8 v$ L  r; Y7 t* e墨r_L一 CS2\OUT2\ T5IN T5OUT R1 : 9
  b0 ~# ~+ G$ n" [R/#W 、 [] RDI\ FTS - 5
" i  K( t  A+ ]( w! ?#IS LDI WR1\ CST1NS\ R12OUT R211N ’RxD 7 撑10STRB ’DTR 42( }( r7 w- Y3 Q% _+ G: m, d  i/ L
DSR\ R3OUT R31N
5 x% c" V( _4 \' p' S% u  a& o  O撑INT2 NTRPT1 M! X* j" f$ n& Q2 W
BAUDOUT\2 t! i% G5 i  k
[ WR2\ RCLK __J' k0 b( A. v7 Z6 K3 O0 ~+ \
1-- ARD2S\& M0 D" G+ u0 F5 G. a$ w* G9 O
图3 硬件接口原理图
( ?  ^& D* R) G1 R$ }PORTW AR0,UART_ I CR_ REG
. m5 C, m4 z* ^& P(DI AB=0,正常工作状态), @/ l& U9 p8 _3 r/ U3 ?5 H( J
STM #01,AR0' q3 p2 H+ d- e0 t9 c4 E
P0RTW AR0,UART_ IER_ REG
5 O& k2 d" g! u+ O  e(IER—O1,只允许接收缓冲器满中断)
" }6 A' @; b2 A9 M$ OSTM #OBh,AR0
* W* L3 S7 h6 PPORTW AR0,UART_1 ^6 w1 s. S; {/ G! \* h' u
MCR_ REG8 v. Z2 }, t6 L1 L6 r0 n
RET. _$ \' Y5 }& O  P
3 系统串口通信软件设计" f* h* v7 n  O, p; v3 T
3.1 通信协议
0 D# W. y% `* s# M( v: h# i4 Y接口数据包通信格式:
, J# I8 @/ P2 k3 ~6 a' S* p. u4 U匮丑 .·回. r" k9 o8 {5 I! w; a2 B5 a4 l
(1)数据帧头数据包帧头固定标志0xFF。6 n( M  a( X8 O
(2)数据长度表示数据内容的长度(包括本字节),该字8 O6 v% ^. O6 Q0 {+ u
节数值不大于25,即每个数据包有效数据长度不超过24字
3 y4 Z; t- w  }& E, A) M9 E节。发送及接收到的数据均遵循这一格式。
4 Q+ Z/ r" s$ K# \# w(3)PTR4500每次成功接收DSP系统的数据包后进行数- b+ a( w5 z9 Y
据打包和纠错编码,并通过无线模块发送出去,然后回送  l' O8 ]* |0 J( `
0x5A,表示发送正确,准备下一个数据包的发送。6 X/ E  n4 g; C
该DSP无线语音保密通信系统中,采样后的语音信号经
# f0 o  g2 `1 l4 i3 P% ]G.723.1语音压缩编码和混沌数字加密后,每30ms数据量0 F5 q) p6 J7 S* O" Y# _
为24字节,恰好组成一帧。发送完毕后需额外读取接收端,
+ P* E) a4 n6 i* S0 g7 Y收到0x5A表示成功发送。
' D) H7 O; `3 r0 a4 半双工通信的处理0 ^/ \* ?+ f9 C
半双工的通信过程中只能实现A到B或B到A一条信
3 |  R' m& L$ e- \2 ?道的数据传输,绝对不能出现两个设备同时发送接收的情况。" U3 o( Z+ X1 T: K6 M2 _
. 为此,在通信过程中使接收机和发射机在同一信道上分时交
+ w# a5 a& C! R$ g2 l3 Q0 `, M替工作,而音频部分则是同时工作的。% @% c+ t( a( f
系统中对语音模拟信号采用8K采样,每30ms产生240
7 e4 h) \9 R0 i. K( r6 swords数据,经过G.723.1语音压缩编码得到5.3Kit/s或
' i0 r- ~: ]* f4 {$ y! C3 b  [5 S! S* ?" I2 V% i
6期 马赞等:运用数传模块实现无线语音通信的方案设计 693
( W2 M, Y7 Y9 D# T1 E8 P6.3Kbit/s两种速率码流(可任选一种)。语音的混沌加密并, I+ G% }8 @% L2 }" }; U7 y6 t
不改变其数据量。也就是说,数传模块要实现30ms之内双
& G8 M- w; p# b. U  {2 e方各24 bytes的数据交换。这样,对通话双方来说,其语音通/ V3 A$ {/ W8 `+ E
信是实时的。通信过程如图4。. o, @; k7 C9 |% B1 w, D
中断
$ T% c: O8 Z+ Y9 f3 B6 H/ e一一.. .. . .笙堕 竺
' y1 |0 w" e7 W) z2 3ms 10ms" U) @1 K6 E* ], E! D$ m. J* ~% p+ M2 z7 G
塑塑L壁 .
7 h9 a! B; J* a, y) q2 3 ms 1 ms  r' x+ b& H$ c5 I: u) I+ }
图4 半双工通信信道占用时间分配& |" g& p# v% r4 M; |9 D
4.3 握手通信同步方法
5 x# l2 L5 \* V3 `5 u: l4 m该方案中A、B两端的发和收是同步交替工作的。因此. x, e# f! s: }1 @
系统开始通信时,必须首先实现收发端的同步。即先开机者& {* N9 ~: Q( n8 s3 i+ _9 h
A发出同步字符1,并随后进入循环等待。B启动后亦发出* T  n: T6 k- Q) H  h2 T+ a
同步字符1,此时,A收到B发出的同步字符1,启动DSP系
7 m8 b+ C5 s1 N6 d$ g统中的30ms处理流程,发送同步字符2。B收到同步字符2
( d6 A% X) s* n  i! U后,随即启动30ms流程。这样,A和B的信道占用时间刚好
" U1 U- b; C* L1 b1 ~错开,实现了同步,时序如图5,流程如图6所示。+ l: M9 g& `4 K4 u2 Q& M
AD使能进入: :, V9 z" O& M8 R; g0 {. s
B开机 I30ms流程j 30ms中断;
/ v/ ~  _6 o. {) c. P& X  Z圆委翌 蔓 巫圈i i6 v) f4 j- Q6 d) V
图5 同步时序图* N7 d2 D& V. _5 u, G
图6 同步流程图( ?$ n, D" l; o9 l! F  s4 o
采用发送两次同步字的方法,对先后开机的顺序没有要: C' f. C4 ~* }# @. y+ c
求。在同步字长度的选择上,我们让其恰为24 bytes,这样可
: R0 D! ^; W9 Q6 `以准确控制两边的时序间隔,并实现系统运行过程中失步后
# n( [/ D/ j1 V. q的再同步。在同步字中如果加入身份认证信息,还可实现多
3 B7 L) Y& r- i0 n8 m6 L机通信的身份识别。7 b0 Q5 K- m# [8 W+ W+ v8 H$ S
5.4 数据的乒乓方式存储
" }7 F  S1 _9 b* w3 O在系统运行过程中,通话双方的数据交换非常频繁,每! |. [8 Y6 s# j4 w# Q& z3 ^
30ms一次定时更新数据,由于串行通信中的数据接收采用中
  I+ n7 H+ Y3 Z4 J9 k断方式,中断响应程序需要对数据进行解密解压操作,可能出( U' Z; v6 R0 w8 z# G3 n
现一帧数据还未处理好就被下一帧所更新。为避免冲突,程5 T3 |9 ]4 N1 Y) C
序中采用了乒乓存储方式,即将长度为N的数据缓冲区扩展. A; F; J: s6 A' @! E- U
为长度为2N的数据缓冲区,中断进来的数据根据数据存储
% M. S1 B: Y2 p% x9 Y地址指针分别填人两个数据缓冲区,数据处理时亦根据数据
* r/ a) h/ L5 B; ]# t' p存储地址指针选择一个半区进行。
" u. C% B& t/ p7 E5 结束语
. `4 _" o  S8 ?, `6 w) W& {实时DSP无线语音保密通信系统采用了以上介绍的几
7 z; V$ c$ h- e" _5 q; z' E/ X种串口通信处理方法,在实际的运行过程中证明:这种数据通
5 O( M( O5 l' z2 M( `) q信的结构是合理的,系统总体方案是可行的,它数据获取准* R( K: {1 P/ N' G
确,通信过程控制方便。同时本通信程序可移植性好,对同类
$ g- j* j( s% R8 B- Q系统的数传模块串行通信设计和实现有一定的启发。, V7 ]5 `* W- W8 s6 x$ a

: j6 b$ D% J/ o! B1 c  {
( k* s( C7 c! u3 V; |  I" t1 d1 k1 \, S/ }* N6 K
3 R9 U; F- O! h. p" l& X7 x5 d
专业无线总汇
1 v8 K# L: ~" d( N% j9 oQQ:1002421875 无线技术交流群(群号81070007  65332649 )
4 e9 D' _% }/ q8 b, s& D, MMSN:yunjiakeji@hotmail.com
6 |4 Z) q' _3 x3 ESkype:yunjiakeji EMAIL:myb33695@163.com
! e. S% K" ~" `: zPHONE:13430970167    http://shop35991384.taobao.com
回复

使用道具 举报

0

主题

1

帖子

702

积分

天使

积分
702
发表于 2010-12-1 18:37:01 | 显示全部楼层
我也想得到"高新技术研究基金的支持". 5 ]" _6 a2 b9 _3 ^2 J+ i+ Q! b( K! _9 v
前几天我也在感叹,我怎么变成了一个废人.做的产品,一点创新也没有,对于民族的供献一点也没有.甚至,以为骄傲的数字对讲机模块,最后发现,现在的工作量只完成了一半.非常感叹. 对比论主发表的文章,更是以感叹,我们国家的民族产业,怎么就这点水平吗.. _$ a2 s+ x3 f" P; z8 V
我先说说我们的做说,大家可以对比一下.   对于语音编解码,一定要选择一颗 dsp,其主要的原因:mcu只能做 adpcm,比较简单的算法,就会有一个问题,bps波特率下不来,同时adpcm具有相关性,根本就行不通. 其原因是如果你压缩不是很高的话,做无线时灵敏度就上不去;大家可以记一个经验公式; 4kbps,8kbps的灵敏度相差一般是 3dbm, 当加了lna的话,会相差 2dbm左右.除此之外,如果你用的是mcu,你的DA,AD有问题,有人说用pwm,最后会发现听上去有金属声.听感不好.当然客户接受的话另当而论. 对于DSP,大多数人都会选择TI的,最主要的原因是因为它的语音编解码不需要自己去做,完全可以调用其库函数.这是一个完全不考虑成本的做法. 而且电流也比较大,在我看来不是做工程的,做学术研究还可以. 对于RF,首先考虑的是应用,认证,所以一定要选择窄带RF,有人说用cc1100做数字对讲机,完了,这就做错了,根本不能买.因为有监督局会抓你的.   对不起,要上去带孩子,吃饭了.有时间大家一起讨论. QQ:3637323
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|国际车载网 ( 皖ICP备08006832号 ) 皖公网安备 34082602201801号  

GMT+8, 2019-11-22 05:19 , Processed in 0.525914 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表