EDA365电子论坛网
标题:
基于PIC的FSK/ASK超外差收发机的设计
[打印本页]
作者:
House
时间:
2019-7-29 10:31
标题:
基于PIC的FSK/ASK超外差收发机的设计
基于PIC的FSK/ASK超外差收发机的设计
: l6 P! k% Q) n
基于FSK/ASK的超外差收发机在远程无线进入、汽车胎压检测、无线传感器等方面都有很广泛的应用。本文以PICl6F819和MAXl471、MAXl479为基本部件,设计并实现FSK/ASK超外差射频收发机的过程。
: T( q) N# L" \3 h/ z# Y
1 元器件的选择
: Z+ a5 w& e; i- {5 q! n
(1)控制器的选择
. o# M }( e0 s8 M1 }2 O
在本系统设计中,需要涉及到以下几个方面:处理器性能、所支持的开发工具、处理器的成本和功耗.综合以上几个方面考虑,微控制器选择Microchip公司的一款高性价比的8位微控制器PICl6F819。PICl6FSl9采用20脚贴片封装,在线方式进行程序调试和烧写;可采用内部晶振,工作频率可选31 kHz~8 MHz;工作电压从2~5.5V;正常工作时使用2V电压供电、使用内部晶振频率为32kHz、电流为7μA;睡眠状态时使用2V电压供电、电流为0.7μA。
& W+ r$ r/ I g1 m- S( K
(2)收发器件的选择
2 q- l9 P( ^. d' y1 `
随着无线技术的发展,无线收发芯片的集成度和性能都得到大幅度提高,芯片性能也各有特色。生产此类芯片的厂商主要有Nordic、TI和Maxim等。选择无线收发芯片时,应考虑以下几点因素:功耗、发射功率、接收灵敏度、传输速率和芯片成本等。Maxim公司的MAXl479和MAXl471分别是超外差射频发射机和接收机,都采用+2.1~+3.3V的单电源供电,可以选择FSK/ASK调制方式,低工作电流,小贴片封装。
" d) [1 V5 s; j7 i3 `; d
2 系统硬件构成
/ z6 t: ?/ P. e. P
2.1 发射部分
4 k( O. q9 I! `& A( N3 ^
发射部分由微控制器PICl6F819和射频发射芯片MAXl479组成,其系统构成原理图如图1所示。
* r+ F9 a# j. U7 v3 c
+ P5 _- A9 p5 a: @# }, H
. y! r+ o5 D6 S5 J8 t% {
微控制器PICl6F819通过PA口的8个引脚控制MAXl479的发射工作。MAXl479的主要引脚功能如表l所列。
0 ~6 o$ u% x; D7 q+ g! w( D
' p# Q! d: L. b# N
其中,Mode引脚用于选择发射芯片是FSK模式或ASK模式。Enable引脚为高电平,则MAXl179进入发射状态。DIN引脚输入串行数据。
. S/ I9 a* ?# [* F4 w
Clk0和Clk1共同决定Clkout引脚的输出频率,该频率可以作为微控制器的时钟频率输入。Clk0和Clkl的状态组合如表2所列。
4 U4 s) q4 X O1 ^& G
6 a- O: _7 b& j+ r
Dev0、Devl、Dev2共同决定FSK调制时的背离频率的大小,其组合状态表如表3所列。
7 Z$ w0 z1 T( X) }6 L1 q
- V' R0 i' y- M- j! w3 B
发射的载波频率由MAXl479所用的晶振决定,晶振同发射载波频率间的关系是:
- n7 N; t; ^ U3 v8 v7 i
fXTAL=32×晶振频率
: e' I+ r; Q t# i, Y( E
如果选择的发射载波频率为315MHz,则所使用品振为9.8437MHz;如发射载波频率为433MHz,则所使用品振为13.56MHz。
- @( Q' s- r: {# h8 U) t* s
MAXl479使用的天线要符合50Ω阻抗匹配,天线可以采用l/4波长的鞭状天线,也可以使用PCB布线作为天线。
& o) Z( n9 e+ ?
2.2 接收部分
1 F( x9 S e% N8 A. Z K9 w
接收部分由射频接收芯片MAXl47l和微控制器构成,接收方一般和其他系统连接在一起,故不需要刻意根据低功耗选择微控制器,而是根据数据处理的需要自行选择。构成框图如图2所示。
4 ~0 a8 y0 F+ B0 r u
z8 e, u# G8 N* J; y1 m
MAXl47l需要外接一个lO.7MHz的低通滤波器,晶振的频率同接收载波的频率的关系为:
* e" b6 C! W) n! }+ [1 f/ @
fRRECEIVE=(fXTAL×32)+l0.7MHz
3 t* A" u: k2 i T
如果接收载波的频率为315MHz,则晶振的频率为9.509MHz;接收载波的频率为433.92MHz,则晶振的频率为13.2256MHz。
. V( x1 Y8 @" b2 e2 M
MAXl47l的主要引脚如表4所列。
- h5 N6 f' S; u, e- h
# ~( m% [/ R- d) X! e
其中,IFIN+MIXOUT、AGND连接10.7MHz的低通滤波器,用于ASK数据的解调。ADATA引脚为高,表示到来的是ASK解调数据;FDATA为高,表示到来的是FSK解调数据。微控制器连接SCLK、CS、DIO引脚对MAXl472内部的寄存器进行读写。
: W& ~) i8 x" w( k% n/ O( N) s+ r2 |
MAXl471同样要求50Ω阻抗匹配的天线,可以使用PCB布线作为天线。
3 {6 v0 Z9 h1 ~9 d$ W c( X
3 系统软件设计
9 N" z* [- Q) B+ Q* r$ H
3.1 发射部分
/ T2 x8 K0 l7 y0 ^+ Q2 J! A
发射部分的编程主要是对PIC16F819的操作。程序由PlCl6F8l9初始化、MAXl479初始化和数据发射三部分组成。
% S. {7 _; Y7 E9 |( |' N
对PICl6F819的初始化包括设置内部晶振的工作频率和PA口的状态。对MAXl479的初始化包括设置工作模式、晶振输出频率选择和FSK背离频率的选择。数据发射部分包括:设置数据帧格式、发送位“0”或“l”子程序、发送一个字节数据子程序和循环发送多个字节数据子程序。程序流程图如图3所示。
4 B9 c; W @" g( @
& t) Z* ?/ _7 m+ g( w- m3 Y
3.2 接收部分
9 \. ]) t% {0 @. N4 I$ S4 F# z4 c
接收部分程序主要是微控制器通过SCLK、CS、DIO等引脚对MAX147l内部寄存器进行读写的过程。
' ?5 o7 P$ v! ^8 W. e S
对MAXl471内部寄存器进行写操作的时序图如图4所示。CS引脚为低,MAXl47l进入工作状态,SCLK引脚产生串行输入时钟,DIO向MAXl47l串行输出命令。命令的格式为;4位命令码、4位地址、8位数据。命令码共有3个:0x01代表写、0x02代表读、0x03代表复位。
% s& D3 g0 w. I, V
5 f2 [; K) z+ N3 i5 x5 {/ z5 V
- h* |) x# C+ y5 W! h9 L3 G
对MAXl47l内部寄存器进行读操作的时序图如图5所示。CS引脚为低,MAX147l进入工作状态,SCLK引脚产生串行输出时钟,DI0从MAXl471串行输出数据。当ADATA为高,输出ASK解调数据;当FDATA为高,输出FSK解调数据。输出数据遵循同样的数据格式。
+ j( E* p! @$ A) y- g% n
MAX147l内部常用寄存器和地址的对照表如表5所列。
- a2 M2 J. `9 j, A
& v) ~( N% m! ~. s9 h0 t
以接收315MHz的FSK数据为例说明接收数据的编程步骤。
% h7 y, }" G1 [5 ?5 S
①写0x3000对芯片进行复位。
6 ~% i/ }* _/ q/ t) O- X7 d
②写0x10f0使能所有的RF和基带部分。
1 i, H# p2 c% Y, a! y1 ~
③写0x135f设置晶振寄存器,芯片工作于315 MHz频率。
# o2 n: K# |* q/ G. l. j
④写0x1120置配置寄存器的FSKCALLSB位,使能FSK校准。
+ b+ Q4 J( j5 ^) `5 n; o. Y$ q
⑤写0x1121开始FSK校准。
& S1 W9 ?- g" @2 K/ ~) S- f% H4 v
⑥读0x2900读状态寄存器位0和位1的状态,以确定FSK校准已完成。
5 L1 F( _# L! j
⑦读FSK调试后的数据,由微控制器进行处理。
. W3 D! Q l5 P" F$ r- [+ r8 x2 i
o: `! r0 j h3 H7 C
结 语
" k4 g: I, x/ E
该系统已成功应用在一款无线遥控门锁上,使用效果良好,可以在20m的距离内无误差的识别不同的电子钥匙。发射部分使用3V的锂电池供电,发射时的工作电流在FSK模式为10.5mA,在ASK工作模式为6.7mA。FSK/ASK超外差射频收发机由于其自身的优点,在无线射频领域将会得到广泛的应用。
# q# Y& C+ T& O( u+ R
( A* }; k K: s- A# X- p
作者:
gaoxings
时间:
2019-7-29 18:36
基于PIC的FSK/ASK超外差收发机的设计
作者:
wu68aq
时间:
2019-7-30 16:38
看看
欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/)
Powered by Discuz! X3.2