您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 广告经营 > 单片机在微型低功耗数据广播接收机中的应用
MSP430单片机在微型低功耗数据广播接收机中的应用北京广播学院数据广播研究所杨霏摘要摘要摘要摘要本文详细阐明了MSP430单片机的特点及它在微型低功耗CPFSK调频多工数据广播接收机中的应用并重点分析了用MSP430单片机实现位同步和帧同步的方法以及采用的序列去扰卷积交织RS纠错码等技术亦对整套系统的功能实现做了简要介绍关键字关键字关键字关键字位同步帧同步前方保护时间后方保护时间一一一一引言引言引言引言我们独立自主开发了数据广播编码器和微型低功耗调频数据广播接收机整套系统采用连续相位频移键控CPFSK调制方式副载波频率为72KHz占用带宽约16Khz数据传输速率4.8KHZ采用CPFSK调制方式使接收机易于实现与QPSK的调制方式相比对相位稳定度要求不高不易受外界温度噪声的影响而且在信号解调处理时实现低功耗由于在发送端先后进行了数据编码信道调制线性调频所以接收设备要完成信号逆处理硬件结构框图二二二二MSP430单片机的特点及在接收机中的应用单片机的特点及在接收机中的应用单片机的特点及在接收机中的应用单片机的特点及在接收机中的应用TI公司MSP430系列单片机的超低功耗特性运行在1MHz时钟条件下工作电流视工作模式不同为0.1-400uA强大的外围模块功能体积小等优点适合作为接收机的CPUMSP430系列中的各成员集成了较多的片上外围资源包含12位A/D精密模拟比较器硬件乘法器2组频率可达8MHZ的时钟模块2个带有大量捕获/比较寄存器的16位定时器看门狗2个可实现异步同步及多址访问的串行通信接口数十个可实现方向设置及中断功能的并行输入输出端口等MSP430F123单片机作为CPFSK数据广播接收机的CPU主要对基带数据进行处理完成数据链路层的工作数据解码三三三三数字通信中的同步问题数字通信中的同步问题数字通信中的同步问题数字通信中的同步问题数据通信中同步是非常重要的问题通信系统是否可靠接收灵敏度是否达到标准很大程度上依赖于同步技术的优劣1同步不确定性的来源实际通信系统中收发站之间会由于电波传播中的多径效应引起码相位载波中心频率相位的延迟而且在传输信道中随机噪声的叠加引起传输波形的失真连接在接收滤波器之后的判决电路也很难保证无差错的恢复基带信号这些都会导致同步的不稳定性2实现同步的几种方法按同步功用分类可分为载波同步位同步群同步和网同步按传输同步信息的方式可分为外同步法和自同步法外同步法是由发送端发送专门的同步信息接收端把这个专门的同步信息检测出来作为同步信号自同步法发送端不发送专门的同步信息而是由接收端设法从接收信号中提取同步信息本接收机的CPU要完成的功能中只涉及到位同步和帧群同步由于不能从硬件解调FSK信号中恢复位同步时钟所以采用自同步的方法来实现位同步以下结合MSP430单片机的特点分析位同步和帧同步的实现方法四四四四位同步位同步位同步位同步由于本接收机接收的码元速率为4.8KHZ用CPU捕捉位同步信息然后进行采样在配合RS纠错即可达到数据准确传输的要求一位同步的方法方法一图1设置接收端恢复出的同步时钟的频率为5倍的码元频率这样就在一个码元周期内设置了5个采样点位同步可以分为两个过程捕获同步跟踪位同步帧同步序列去扰去交织R-S纠错解码CRC-16校验1捕获即找到正确的同步时钟起始点在接收的数据中只有01跳变沿才能为我们提供位同步信息如果数据长时间为1或为0这将给接收端恢复位定时信息造成一定困难所以发送端对数字基带信号进行随机化处理一方面起到能量扩散的作用另一方面限制连0码和连1码的长度易于位同步的捕获和同步时钟的恢复捕获过程是通过测量数据流中两个跳变沿中间的时间宽度W如果W等于码元周期便以第二个跳变沿为起始时刻设置同步时钟如果W不等于码元周期则需要重新捕获2同步跟踪在接收数据的过程中还要保证同步时钟的变化跟随码元相位或频率的偏移同样依据数据流中01跳变沿来实现同步时钟的跟踪如图1如果同步时钟与码元之间没有任何偏差时数据的跳变沿每次都应出现在第5个计数时刻与下一个计数时刻之间这时把第三个计数时刻作为数据采样时刻当同步时钟与码元之间有偏差时数据跳变沿不能准确的落在第5个与下一个计数时刻之间如果数据跳变沿出现在第4与第5个计数时刻之间说明同步时钟相对于码元相位滞后为保证每次采样时刻在码元的中心位置就要把采样点提前至第2个计数时刻相反如果数据跳变沿出现在第1与第2个计数时刻之间说明同步时钟相对于码元相位超前就要把采样点错后至第4个计数时刻这样不断调整采样点使每次此采样时刻均位于码元中心位置跟随其变化方法二根据MSP430单片机硬件特点我们对上述同步方法进行了优化并达到了良好的同步跟踪效果设置接收端恢复出的同步时钟的频率等于码元频率每一个计数中点均为采样时刻与5倍时钟法相同它也需要捕获和同步跟踪两个步骤捕获的过程与上述的方法相同同步跟踪可以使采样时刻基本稳定在码元中心位置如果同步时钟不跟随码元相位的变化进行调整则采样点必然相对于码元滑动当向前或向后偏移半个码元周期时采样值就出现错误如图2恢复出的同步时钟与码元同步时数据跳变沿的发生时刻与前一采样时刻的距离D等于二分之一码元宽度M在同步时钟与码元相对偏移时则有D≠M若DM同步时钟超前就要将下一采样时刻滞后若DM同步时钟超前就要将下一采样时刻提前在接收过程中同步跟踪就是根据D与M的关系不断调整二方法二的具体实现MSP430单片机的Timer_A可支持同时进行的多种时序控制多个捕获/比较功能各模块独立编程中断可以由计数器溢出引起也可以来自捕获外部信号的跳变沿MC1和MC0选择计数器工作模式MC1=0MC0=1时定时器增计数至比较寄存器CCR0的值就会产生中断用这种模式可以产生固定频率的中断信号作为同步时钟当增大或减小寄存器CCR0的值时即可改变定时的时间间隔从而调整同步时钟的频率由于定时计数器的调整精度为一个时钟周期1/4.3ms外部时钟晶振4.3MHz所以可以产生频率精确的同步时钟捕获模式用于确定事件发生的时刻可用于速度计算或时间测量等场合如果在选定的输入引脚如图P1.2上发生选定的脉冲触发沿上升沿下降沿任意跳变则定时器的计数值被复制到捕获寄存器CCR1中并产生中断因此读出CCR1中的值就可以记录跳变沿发生的时刻根据跳变沿发生时刻与前一采样点比较的结果调整同步时钟超前或滞后重新预置CCR0图2定时器时钟源使用ACLK即外部晶振f=4.194MHz所需同步时钟的频率f=4.8KHz计数器计数值CCR0=4.194MHZ/4.8KHZ=873如图可见当同步时钟与码元完全同步时捕获中断后所读到值CCR1应等于CCR0的二分之一即当时说明同步时钟超前需要增大计数值CCR0即,使下一bit的采样点错后当时说明同步时钟滞后需要减小计数值CCR0即使下一bit的采样点提前在上式中的称为数据速率的误差容限值dataratetolerance如果设置的这个容限值太高即时钟调整的步进值过大就会导致同步时钟的频率不能稳定反之这个容限值太小即时钟调整的步进值过小同步时钟就不能跟踪上码元的变化只有这个容限值合适同步时钟产生的采样点就会逐渐收敛到接收码元的中心位置实现同步跟踪根据对噪声和频偏的估计根据这个标准计算的值在本接收机中的时钟调整并不是捕获到每一次跳变沿都要进行时钟调整根据接收信号频偏大小每8bit调整一次时钟即可实现同步时钟的跟踪下表给出实验中捕获中断读出的CCR1的值时采样点基本位于码元中心375385407421440426445438440433446436439448432430421434447437420405412419426429433438439420431435439429439422436439426435从表中看出同步时钟的采样点逐渐收敛在码元中心位置并且-在以后的接收过程中实现跟踪三小结由于采样时钟恢复和同步捕捉跟踪都需要响应中断服务程序占用CPU开销而CPU的主要工作是进行每帧数据的解码和发送如果使用第一种同步方法时钟频率4.8K*5CPU时钟为4.3MHz即程序每运行41.6us约20条程序语句就要响应一次定时器中断服务程序增大了运算量如果提高CPU的工作频率会增大电流的消耗所以在达到相同的采样效果时使用第二种同步方法同理为节约CPU开销并不需要捕捉每个数据跳变沿进行同步跟踪实验证明每8比特数据捕捉一次跳变沿调整采样时钟即可实现良好的同步跟踪五五五五帧同步帧同步帧同步帧同步在数字信息传输中帧同步信号是一些特定的码组这种帧同步码组通常是在某段时间集中插入信息码流考虑到时间位置的确定要在建立了各码元的正确时间关系后才有能实现所以帧同步一般是在位同步的基础上实现一对帧同步系统的要求1帧同步的捕捉同步建立时间要短2在一定的同步引入时间要求下帧同步信号占用的码组长度应越短越好3同步系统的工作要稳定可靠一旦建立同步状态后系统不应因信道的正常误码而失步即帧同步系统应具有一定的抗干扰能力能识别假失步和避免伪同步数字信号在传输过程中总会出现误码而影响同步一种是由信道噪声等原因引起的随机误码此类误码造成帧同步码的丢失往往是一种假失步现象因此一般规定帧同步信号丢失的时间超过一定限度时才宣布帧同步态丢失然后开始新的同步搜索捕捉态这段时间称作前方保护时间然而无论选用何种帧同步码型信息码流中都有可能出现与帧同步码图案相同的码组即伪同步码所以也不能一经发现符合帧同步码组的信号就进入同步态只有当帧同步信号连续来了几帧或一段时间后同步系统才可发出指令进入同步态这段时间成为后方保护时间(二)帧同步的实现本接收机使用集中插入特殊码元的帧同步方法集中插入就是把特殊的帧同步码组集中插在一帧的特定位置一般是一帧的开始接收机一旦检测到这个特定码组就确定了帧的起始位置从而获得帧同步此种方法可以迅速纠正帧失步即一旦帧失步只要在下一帧同步码就能恢复帧同步本接收机收到的数据帧格式为每192个信息字节加上2字节的帧同步码组成一帧数据如图选用的帧同步码为0x19D7接收端采用帧同步码的滑动法来恢复帧同步信号其实现方法为在单片机里设置16bit移位寄存器前后方保护计数器来完成前方保护时间和后方保护时间的计数和帧同步状态位SFLAG标志系统的同步状态当数据流进入移位寄存器与帧同步码0x19d7相比较如果不同则移位寄存器高位移出低位移入下一比特再进行比较同步系统从不断接收输入的数据流中捕获到0x19d7码组相当于第N帧有同步码置SFLAG=1后方保护时间计数器开始如果经过192byte信息码在第N+1帧处检出同步码后方保护时间计数器加1应在第N+2帧再一次检出同步码后方保护时间计数器加1系统进入帧同步状态进行数据定时接收如果在第N+1帧处不能检出同步码或在第N+1帧处检出同步码而在第N+2帧处不能检出同步码同步系统都要重新进入捕获状态当系统处于同步状态即SFLAG=1时检测出错误的帧同步码则打开前方保护时间计数器如果连续丢失4或5个帧同步码计数器计满清SFLAG=0标志系统进入捕捉状态并停止数据定时接收在本接收机MSP430的程序中将前方保护时间计数器和后方保护时间计数器简化为一个时间计数器即SCOUNTSCOUNT的初始值为0每接收到一个正确的帧同步码SCOUNT加1当连续接收到三个正确的帧同步码时SCOUNT=3进入同步状态SFLAG=1如果在同步状态中SCOUNT=4时再检测到正确的帧同步码SCOUNT不再加1也就是说SCOUNT的最大值为4当检测到一个错误的帧同步码SCOUNT减1如果出现连续4个错误的帧同步码SCOUNT减为0则从同步状态进入捕获状态六六六六数据链路层数据链路层数据链路层数据链路层MSP430单片机进行位同步帧同步后将定时接收的数据经过以下处理经串口输出1去扰伪随机序列发生器的生成多项式为,每帧同步字后进行一次初始化,加扰不包括帧同步字数据由伪随机序列加扰,可破坏数据中的连零,有利于解码器位同步的锁定,并分散数据信号的能量分布,使对主信号的干扰呈类似白噪音的背景噪音,提高多工数据对主信道干扰的主观评价得分2去交织和纠错码每一子帧用缩短R-S4832编码,可纠8个符号(64Bit)的
本文标题:单片机在微型低功耗数据广播接收机中的应用
链接地址:https://www.777doc.com/doc-1472740 .html