基于PIC单片机的IAI无线模块测试板
扫描二维码
随时随地手机看文章
近年来,由于数据通信需求的推动,加上半导体、计算机等相关电子技术领域的快速发展,短距离无线与移动通信技术也经历了一个快速发展的阶段。短距离无线通信通常指的是l00m到200m以内的通信。
它被广泛应用于无线数据采集、无线水表、煤气表、电力表抄表、工业遥控、遥测、工业数据采集、楼宇自动化、安防、机房设备无线监控、家庭自动化数据网络组网等领域。
美国SILICon Laboratories公司作为专业的无线芯片开发和生产商,它的IAI系列无线芯片具有集成度高,外围元件少,功耗低,性能稳定可靠,芯片内部集成了FSK无线收发必需的全部功能模块,包括多边带PLL合成器、PA、LNA、混频器、基带滤波器、中频放大器、信号强度指示RSSI、数据质量侦测DQD、电池电压侦测、AFC和微控制器等,非常适合用于短距离无线通讯产品。本文介绍了贝能科技采用IA4421芯片开发的两种无线通讯模块PHY和EV-IA4421-433M-3(如图1,图2)。PHY模块是不带MCU而向外提供一个SPI接口;EV-IA4421模块是带MCU并向外提供一个串口。这样可以方便用户使用和开发。
图1 PHY
图2 EV-IA4421
针对这两种模块,我们设计了一个适用这两种模块的测试评估板。该 测试板 可以对这两个模块进行设置(主要对IAI4421寄存器设置),这样方便客户评估,测试IA系列产品的的性能。
基本概述:
该测试板的组成采用 PIC单片机PIC16F777作为主控芯片;一个LCD1602作为显示器件;4个轻触按键作为作为用户输入;一个可以连接电脑的串口;还有连接两通讯模块的接口。用户可以通过按键和LCD可以很直观地对IAI4421芯片寄存器、通讯速率等进行设置,还可以通过LCD监控数据传输过程的正确性和完整性。
本文主要介绍该测试板的一些主要功能和原理以及其使用的方法,以便大家对其有一个初步的了解。
主要功能:
可设置4位的发射地址码:用户可以通过菜单设置4位的地址即0~F,并与从机地址设置对应,这样就可以不受其他模块的干扰,可以多个模块同时工作。
可设置模块的工作频段:由于IAI系列芯片支持3频段分别为433MHz、868MHZ、915MHZ,通过设置不同的频段可以适应使用不同频段的硬件。
可设置模块的发送速率:芯片支持不同的发射速率,用户可以根据需要进行调整;
可设置发送数据的时间间隔和发送的次数;
可以设置串口波特率(与硬件连接相对应);
可显示接收数据的内容和接收数据的次数,当前通讯速率等信息;
硬件组成框架:
各部分硬件接口:
LCD1602接口(图3)
LCD1602采用8数据线接口(data0-data7),有利于快速刷新需要显示的数据,RS、RW、E三线控制。
图3 LCD电路接口
串口电路(图4)
串口电路采用MAX232作为电平转换芯片,与电脑连接,接收电脑 的输入命令。TX串行数据输出(无线接收到的 数据),CRX串行数据输入(要发送的数据)。
图4 串口电路接口
EV-IA4421-433M-3模块接口电路(图5)
EV-IA4421-433M-3是已经带有一个PIC16F690的模块。VCC使用5V电源供电;TX、RS作为一个标准的波特率可选的串口作为与测试板之间的通讯,所有对模块的操作都使用这个串口完成;/PD待机控制,/PD=0时,模块进入待机状态,/PD=1,模块正常工作;RSSI无线信号强度输出,输出电压和信号强度成正比,是一个模拟信号,测试板通过AD转换对其捕捉。
图5 EV-IA4421接口电路
PHY模块接口电路(图6)
PHY只需使用5个I/O口即可工作,它采用SPI兼容的控制接口作为数据通讯接口。我们测试板也正是使用这种方式与PHY模块进行谅解的。各个接口功能如下:SCK:SPI串口时钟输入;SDI:SPI串口数据输入;NSEL:SPI片选输入(低电平有效);SDO:SPI串口数据输出;NIRQ:中断请求输出(低电平有效)。
图6 PHY模块接口电路
按键电路(图7)
四个轻触按键作为用户的输入,用户按键的输入判断是采用普通的I/O方式。具体每个按键定义为:UP键用于上移菜单;DOWN键用于下移菜 单;ENTER键用于确认选择;SEND用于启动发送数据。
图7 按键电路
电源部分:
考虑到使用的方便性,再电源供电上采用了两种供电方式:一种直流9V~12V 电源适配器的输入;另一种是用9V的纽扣电池供电。用户可采用其中的一种。
以上是该 测试板 的硬件的主要组成部分,每个部分都只是作了比较简单的介绍,如果大家想得到更详细的资料,可以到贝能公司网站( www.burnon.com )上查找 。
软件组成框架:
软件流程如图8所示,软件系统在MCU中执行,分为系统初始化、主循环流程与中断服务程序。下面对其作一个简单的介绍:
MCU初始化函数,主要是对MCU定时器设置、串口、中断设置和各个端口的输入输出设置等等;
按键事件管理函数,它定时检测按键板上的按键输入,设置和保存相应的标志位,并把按键对应信息映射成相应的驱动事件;
主循环函数是整个软件系统的一个核心部分,各种事件的触发和各个用户接口管理都由这个函数完成,每个子程序管理着不同功能。
图8 软件流程
主循环是软件的基本控制部分,它是一个无限时间的循环,当中包含了许多子程序,诸 如:Check if it’s time to execute events(定时器时间事件处理)、Mode Handler(模式识别处理)、Key SCANHandler(电源管理)、OSD Event Handler(菜单事件处理——当中也包含了按键处理)、Debug Handler(调试处理)。通过这一系列的管理函数,不断的检测事件的发生并执行相应的功能操作。
小结
本文对DEMO板的功能、硬件和软件作了一个简单的介绍,该demo板主要是为贝能公司开发的PHY和EV-IA4421-433M无线模块提供一个方便的使用和测试平台,以便用户可以对其作评估,使其更快地应用于产品当中。