0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

通过单片机的无线通信软件实现编解码的解决方案介绍

电子设计 作者:电子设计 2018-11-06 08:20 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

随着无线通信芯片技术的发展,越来越多的便携式或电池供电的无线传输设备进入人们日常生活中。例如,遥控车门开关(RKE)系统、汽车轮胎压力监视系统(TPMS)、无线内窥镜系统、蓝牙技术等。利用单片机和无线数传模块来完成无线数据通信在石油、电力、水文、冶金等行业的无线控制、数据采集、报警诸多领域中有着广泛的应用前景。通常采用的办法是用单片机的串行I/ O 口来完成数据通信,但是该方法有许多不足之处:第一、在利用单片机的串口进行发送和接收数据时,对传输的数据只能进行奇偶校验,然而在无线通信场合,被传输的数据极易受到电磁、静电等的干扰,奇偶校验一般不能检测出这类干扰所引起的突发性错误,所以该方法无法满足差错检测要求较高的场合;第二、由于单片机一般采用异步通信方式,接受器通常不能很快的接收到有效数据,因而该方法也不能满足要求多路进行快速切换的场合;第三、单片机的串口通信在传输速率和每帧的有效数据位数等方面都受到了严格的限制,缺乏灵活性。本文针对低速无线通信的场合,提出了一种通过单片机用软件实现编解码的方案,该方案可以有效克服上述单片机串口通信的不足之处, 在无线通信中得到了令人满意的效果。

1 编码原理及程序流程

1.1 编码原理

假设传输的数据精度为12位,以A8BH为例,其帧格式如图1 所示,高位在先,低位在后。

通过单片机的无线通信软件实现编解码的解决方案介绍

数据的编码采用了曼彻斯特编码格式,每帧数据由同步头、有效数据位和校验位三部分组成。其中数据位“1”由高到低的跳变表示,数据位“0”由低到高的跳变表示,而且数据位“1”和“0”高低电平周期各为0.5 T(设T为一个数据位宽度)。根据曼彻斯特码的特点,每个数据位都由高低电平组成,因而在连续传输的有效数据位中不会存在超过一个数据位宽度的高电平或低电平,因此在每个数据的前面设一个同步头,高低电平各为1.5 T 。这样在进行接收数据时,只要采样得到的电平满足1.5T ,则认为该电平是同步头,开始接收数据。因为寻找同步头的时间最长不会超过一个数据的长度,所以此编码方式非常适合于要求多路进行快速切换的场合。为了简化电路和节省功耗,本文采用了单极性曼彻斯特码。

实现曼彻斯特软件编码比较简单,根据曼码和二进制数据的对应关系,一位二进制数据在编码后将占据两位空间。例如1在编码后变为1、0;0在编码后变为0、1。其中,曼码数据低位在前,高位在后;被编码的数据字节的高4位编码后存放在一个字节中,低4位编码后存放在相邻的下一个字节中。

本文采用了循环冗余校验,即后四位为循环冗余校验码。循环冗余校验码简称为CRC( CyclicRedundancy Code) 。循环冗余校验的指导思想是发送端将被传输的数据流多项式除以生成多项式得到冗余位,接收端将被传输的数据(包括冗余位) 除以事先确定的生成多项式,如果余数为零,则认为没有错误发生,不为零则表示有错。由于使用这种方法获得冗余位具有很强的信息覆盖能力,它善于发现各种类型的错误,特别是一些突发性错误,所以它是一种效率极高的差错校验法 。

根据CRC 码的编码思想,对(16,12)码,由x16 + 1确定生成多项式为G(x) = x4 + 1 ,该多项式也可表示成(10001) 。对被传输的12位数据和生成多项式采用模2 运算便可以得到每个数据的四位循环冗余位。

1.2 编码子程序流程图及说明

曼彻斯特编码子程序包括计算冗余位和曼彻斯特编码发送两部分,首先调用CRC 求余子程序(流程图略) ,将得到的冗余校验位作为待发送16 位数据的低四位,然后对该16 位,并通过无线数传模块调制成模拟信号发射出去(单片机的TXD 端与无线数传模块发的DATA IN 端相连) 。同步头及数据位发送是通过对单片机的TXD 端( P3. 1) 置“1”和清“0”并进行软件延时来实现。TIME1 和TIME2 为软件延时,以满足同步头高低电平宽度的要求。值得注意的是,在编写编码子程序时,应确保P3. 1 置“1”和清“0”时间间隔满足数据位或同步头宽度的要求。

2 解码原理及程序流程

2.1解码原理

曼彻斯特解码是编码的逆过程,也就是从曼码数据中提取时钟,并利用这个时钟还原二进制数据的过程。根据曼彻斯特解码过程中完成任务的不同,可以把曼彻斯特解码过程分为起始符识别及获取同步时钟、识别同步头、提取数据信息3个阶段。

(1) 同步头的判定

本系统通过信号高低电平所占的位宽来判断数据。当电平持续时间小于3/4的同步时钟周期时,电平时间为半个位宽,反之电平时间为1个位宽。因为在起始符识别时只用了2个字节0xFF中的一个,所以在开始识别同步头时识别出的第1个数据位肯定是‘1’,由此决定了在码元识别时必须遵循以下2点。

首先对单片机的RXD 端( P3. 0) 进行连续采样,从P3. 0 引脚变低时开始计时,若低电平的时间达到1. 3 T ,则认为该电平为同步头。因为用无线数传模块得到的信号波形一般为梯形,所以接收到的实际高低电平宽度可能变小,因此若接收到低电平宽度达到1. 3 T ,则可近似认为该电平为某数据的同步头。

(2) 数据位的判定

对每个数据位的判定采用“测三取二”的方法,既将每个数据位的前半部分成16 个状态,在第7 、8 、9 状态检测P3. 0 引脚上的电平,取其大于等于2的相同值作为测得值,如表1 所示(表中“ x ”表示“0”或“1”) 。此检测方法是在高电平或低电平的中间位置进行采样,既提高了采样准确度又有一定的滤波功能。

通过单片机的无线通信软件实现编解码的解决方案介绍

通过单片机的无线通信软件实现编解码的解决方案介绍

(3) 循环冗余校验

对解码得到的16 位数据进行循环冗余校验,若余数为零,则认为传输正确,否则进行出错处理。

2.2 解码子程序流程图及说明

解码子程序包括曼彻斯特解码和差错校验两部分,其流程图如图3 所示。首先进行同步头的判定,从RXD 端( P3. 0) 为低电平时开始计时(单片机的RXD 端与无线数传模块收的DATA OU T 端相连) ,并对P3. 0 引脚进行连续采样,采样时间间隔可自行设定,若P3. 0 引脚的低电平时间达到1. 3 T ,则认为该低电平为某数据的同步头,然后对同步头后面的数据位的前半位采用“测三取二”的方法进行数据位的判定,最后对采样得到的16 位数据进行循环冗余校验,若余数为0 ,则置错误标志,若不为0 ,则去掉冗余位, 得到12 位有效数据。TIME1~TIME3 是凑采样的时间间隔。

通过单片机的无线通信软件实现编解码的解决方案介绍

3结论

本文以一个实际工程的一部分为例,阐述了用AVR单片机软件编程实现曼彻斯特编解码方法。经过了实际验证,数据传输可靠性很高,系统运行稳定,样机已经成型,即将投入生产。与其它的数据传输方法和曼彻斯特编解码方式相比,本方法十分灵活方便,它可以白适应射频发射机电池电压变化引起的数据传输波特率的变化。可处理的码速率也很高,极限码速率与所采用的单片机的速度和振荡器的频率以及采用的编程语言都有关系。本设计中采用C编程,振荡器频率为16MHz,数据传输率可达10kbps,用汇编语言编程数据传输率会更高。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 芯片
    +关注

    关注

    462

    文章

    53571

    浏览量

    459386
  • 单片机
    +关注

    关注

    6074

    文章

    45347

    浏览量

    663823
  • AVR
    AVR
    +关注

    关注

    11

    文章

    1137

    浏览量

    81242
  • 无线通信
    +关注

    关注

    58

    文章

    4865

    浏览量

    146476
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    单片机之间可以进行无线数据传输吗

    三个单片机之间进行无线数据传输时,直接通过NB-IoT和4G模块进行“点对点”通信是不可行的。 替代方案: 1. 使用服务器作为中转:第
    发表于 11-28 08:15

    远程无线通信快速集成指南与典型方案剖析

    在工业自动化、远程控制、环境监测等领域,远程无线通信模块因其智能化和便捷性被广泛应用。 一、无线通信模块概述 1. PLC远程无线通信模块 该系列模块专为PLC无线通信设计,支持Mod
    的头像 发表于 11-24 11:22 256次阅读
    远程<b class='flag-5'>无线通信</b>快速集成指南与典型<b class='flag-5'>方案</b>剖析

    音视频编解码封装解封装部件介绍

    是否有探索开源鸿蒙音视频编解码技术的欲望?是否对开源鸿蒙音视频编解码格式支持有诉求?别急——今天这份开源鸿蒙AVCodec Kit介绍文章,就是解答疑惑的指南!参考这份指南,可以使用开源鸿蒙的音视频
    的头像 发表于 10-31 09:15 257次阅读
    音视频<b class='flag-5'>编解码</b>封装解封装部件<b class='flag-5'>介绍</b>

    解决方案】aiTalk:重新定义无线通信的边界,让连接无处不在!

    蜂窝网络环境下的超长距离实时语音通话及数据传输功能。该产品突破了传统通信设备的距离与功耗限制,为用户提供稳定、清晰、低成本的无线通信解决方案。aiTalk超长距离
    的头像 发表于 10-28 10:08 1037次阅读
    【<b class='flag-5'>解决方案</b>】aiTalk:重新定义<b class='flag-5'>无线通信</b>的边界,让连接无处不在!

    基于E203 RISC-V的音频信号处理系统 -CODEC(音频编解码器)配置

    CODEC介绍 本设计采用的音频编解码器是WM8731,该编解码器可以通过I2C进行寄存器配置,可以调节主从模式、数据位数可设置为16bit、24bit、32bit。可以设置的传输模
    发表于 10-28 06:29

    Sub-GHz无线收发单片机,低功耗物联网通信的硬件“基石”

    随着物联网应用持续向规模化部署、广域化覆盖与高效化协同迈进, 作为IoT终端设备实现无线交互的核心通信单元之一——Sub-GHz无线收发单片机
    的头像 发表于 09-18 15:02 506次阅读
    Sub-GHz<b class='flag-5'>无线</b>收发<b class='flag-5'>单片机</b>,低功耗物联网<b class='flag-5'>通信</b>的硬件“基石”

    增强T-BOX设计,新唐编解码器的重要作用

    (工作电压范围:2.5V-5.5V),最大输出功率可达1W。此外,通过软件控制的内部寄存器可以实现灵活的省电模式。 主要优势:T-BOX设计架构中的汽车级编解码器 音频
    发表于 09-05 06:26

    京信通信巩固室内无线通信市场领先地位

    近年来,京信通信凭借其创新的ComFlex MAX解决方案,在室内无线通信市场巩固了其全球地位。据Mobile Experts最新发布的《2024年室内无线通信报告 》(In-Buil
    的头像 发表于 06-16 10:02 853次阅读

    常见的无线通信系统产品解决方案

    互联的愿景成为现实。然而,面对复杂多变的应用场景,无线通信系统的设计与实现也伴随着诸多挑战,包括信号干扰、能耗控制、带宽限制以及数据安全等问题。 为了应对这些挑战,无线通信技术不断演进,并结合各种创新性
    的头像 发表于 05-25 14:38 805次阅读

    无线水位远程监测系统解决方案概述

    无线水位远程监测系统是一种利用无线通信技术实现水位数据实时采集、传输和监控的解决方案,广泛应用于河流、水库、水塔、地下水等场景。
    的头像 发表于 05-13 09:11 519次阅读
    <b class='flag-5'>无线</b>水位远程监测系统<b class='flag-5'>解决方案</b>概述

    工业以太网无线网桥:无线通信的工业级解决方案

    灵活高效的无线通信方案。本文从技术特性、应用场景及核心优势等方面展开解析。 ​ 一、产品定位与核心功能   该无线网桥的核心功能是实现工业以太网协议(如Profinet、EtherNe
    的头像 发表于 04-22 15:50 675次阅读

    EPSON SG-8018CG可编程晶振:无线通信领域的高精度时钟解决方案

    晶振:无线通信领域的高精度时钟解决方案,凭借其高精度、低功耗、超小型封装及灵活可编程性,在通信设备领域展现了其独特的优势。
    的头像 发表于 03-05 10:43 1003次阅读
    EPSON SG-8018CG可编程晶振:<b class='flag-5'>无线通信</b>领域的高精度时钟<b class='flag-5'>解决方案</b>

    无线通信的基本概念

    是不可见也不可听的,所有无线信号都是通过空气传输的。不同的无线服务与不同的无线频谱区域相关联,例如 AM 广播使用 535 到 1605kHz 之间的频率。 三、
    发表于 02-28 13:45

    维控PLC数据采集无线通信系统解决方案

    企业的青睐,广泛应用于装备制造业、农业养殖、节能环保、新能源等领域。 对此,物通博联提供工业智能网关实现维控PLC数据采集无线通信解决方案,旨在通过
    的头像 发表于 01-22 15:30 846次阅读
    维控PLC数据采集<b class='flag-5'>无线通信</b>系统<b class='flag-5'>解决方案</b>

    32位单片机相关资料和解决方案参考指南

    电子发烧友网站提供《32位单片机相关资料和解决方案参考指南.pdf》资料免费下载
    发表于 01-21 14:00 0次下载
    32位<b class='flag-5'>单片机</b>相关资料和<b class='flag-5'>解决方案</b>参考指南