pic单片机实例篇,基于pic单片机设计测试评估板
pic单片机是单片机系列中的佼佼者,对于pic单片机,想必大家均有一定了解 。在现实中,pic单片机的应用更是随处可见 。本文对于pic单片机的讲解,将为大家介绍基于pic单片机的评估板设计 。
近年来,由于数据通信需求的推动,加上半导体、计算机等相关电子技术领域的快速发展,短距离无线与移动通信技术也经历了一个快速发展的阶段 。短距离无线通信通常指的是l00m到200m以内的通信 。
它被广泛应用于无线数据采集、无线水表、煤气表、电力表抄表、工业遥控、遥测、工业数据采集、楼宇自动化、安防、机房设备无线监控、家庭自动化数据网络组网等领域 。
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的纽扣电池供电 。用户可采用其中的一种 。
以上是该 测试板 的硬件的主要组成部分,每个部分都只是作了比较简单的介绍 。
软件组成框架:
软件流程如图8所示,软件系统在MCU中执行,分为系统初始化、主循环流程与中断服务程序 。下面对其作一个简单的介绍:
MCU初始化函数,主要是对MCU定时器设置、串口、中断设置和各个端口的输入输出设置等等;
按键事件管理函数,它定时检测按键板上的按键输入,设置和保存相应的标志位,并把按键对应信息映射成相应的驱动事件;
主循环函数是整个软件系统的一个核心部分,各种事件的触发和各个用户接口管理都由这个函数完成,每个子程序管理着不同功能 。
图8 软件流程
主循环是软件的基本控制部分,它是一个无限时间的循环,当中包含了许多子程序,诸 如:Check if it’s time to executeevents(定时器时间事件处理)、Mode Handler(模式识别处理)、Key SCANHandler(电源管理)、OSD EventHandler(菜单事件处理——当中也包含了按键处理)、DebugHandler(调试处理) 。通过这一系列的管理函数,不断的检测事件的发生并执行相应的功能操作 。
【pic单片机实例篇,基于pic单片机设计测试评估板】以上便是此次小编带来的“pic单片机”相关内容,通过本文,希望大家对如何基于pic单片机设计测试评估板具备一定的认知 。如果你喜欢本文,不妨持续关注我们网站哦,小编将于后期带来更多精彩内容 。最后,十分感谢大家的阅读,havea nice day!
推荐阅读
- pic单片机应用实例,采用pic单片机设计多回路温度控制系统
- pic单片机实例篇,pic单片机AD转换实例
- 单片机编程软件很简单_六,V5.29 keil mdk单片机编程软件新特性+烧写程序
- 单片机编程软件很简单_五,keil单片机编程软件变量用法(下)
- 单片机编程软件很简单_四,keil单片机编程软件变量用法(上)
- Microchip发布业界首款宇航级基于COTS的耐辐射以太网收发器和嵌入式单片机
- 开关电源Pspice建模及验证分析
- 如何裁剪好人像照片?摄影师用实例分享这6大关键点
- LTspice一条指令轻松解放大器电路大信号带宽就用压摆率
- 现场施工临时用电负荷计算方法实例