基于STM32单片机的通信技术实验系统设计
2019-10-08朱向庆何昌毅朱万鸿钟创平
朱向庆,何昌毅,朱万鸿,钟创平
(嘉应学院 电子信息工程学院,广东 梅州 514015)
近年,互联网+、智能制造 2025、工业 4.0等概念的提出,加大了对电子信息技术人才的需求[1]。高等教育是知识传播、应用和创新的主要途径,也是培养创新创业人才的重要途径[2-3]。很多高校电子信息类专业都开设单片机、嵌入式系统、移动通信、物联网技术等课程。实验仪器是实践教学必不可少的装备,而市场上现有的设备基本都是实验箱或实验台,通常存在价格贵,体积大,硬件电路资料不够公开等问题,不利于学生全面学习课程知识。例如:移动通信实验箱多侧重于原理方面的验证,不利于做二次开发[4];物联网实验箱则侧重于传感检测、短距离无线通信[5],且通常追求功能大而全,不利于推广;单片机实验系统有很多,以51单片机和AVR单片机居多,STM32单片机也有,但侧重于通信技术应用的单片机实验系统目前还没有;即使涉及通信技术的单片机实验板,也只是单纯的某种通信技术而已,不够全面。此外,因为实验箱或实验台造价高、体积大,通常只能存放在实验室,不可能随时向学生开放,所以利用率不高。
与传统的51系列单片机相比较,资源更为丰富的STM32单片机日益受到企业和消费者的青睐[6]。因此,本文设计了一款基于 STM32单片机的小型通信技术实验系统,以满足创新实践教学的需求。
1 总体设计思路与方案
为了让设计的实验系统具有较强的适用性、扩展性及性价比,主要从下面几个方面构思功能模块及硬件电路:
(1)遵循“以芯为主,软硬结合”的设计原则[1]。系统集成输入输出模块、有线通信模块、无线通信模块及信源编译码模块等,能够完成常见的通信实验。
(2)采用“核心板+功能模块”的设计理念,软硬件可剪裁,便于组装、拆卸和升级[7]。价格较贵的通信模块都没有焊接在PCB板,而是安装在PCB板上的排座,方便拆卸,以在其他系统中重复使用。
(3)系统“小而精”,可扩展至“大而全”。STM32单片机的闲置I/O口由排针引出,方便操作者以其为母板,控制其他外设,拓展实验项目。
2 系统硬件结构
实验系统电路结构连接关系见图1[8]。
图1 电路结构连接关系
2.1 STM32单片机最小系统
STM32单片机最小系统由STM32F103ZET6单片机、时钟电路、复位电路、JTAG接口、I/O口扩展接口构成。STM32F103ZET6是基于ARM Cortex-M3内核的32位微控制器,具有512 KB片内Flash,64 KB片内RAM;多达80个I/O,4个通用定时器,3路SPI接口,2路I2S接口,2路I2C接口,5路USART,1个USB从设备接口,1个CAN接口,SDIO接口;3路共16通道的12位AD输入,2路共2通道的12位DA输出;支持JTAG和SWD调试[9]。时钟电路采用的晶振频率为8 MHz,复位电路包含上电复位和按键复位。JTAG接口用于给STM32单片机下载固件,或调试程序。I/O口扩展接口将单片机闲置的 I/O口引出,以方便使用者连接其他外设。
2.2 输入输出模块
输入输出模块主要用于实现人机交互功能,它包括IPS(In-plane switching,平面转换)液晶触摸屏接口、4位LED流水灯、1×4独立按键和蜂鸣器,可完成声、光输出,及按键和触摸输入。IPS触摸屏接口用于安装127 mm(5英寸)TFT(thin film transistor,薄膜晶体管)电容触摸液晶彩屏,它具有响应速度快、可视角度大、色彩真实、画面出色、触摸无水纹、环保节电、色彩准确等优点。
2.3 有线通信模块
有线通信模块包括UART串行通信电路、以太网模块接口、CAN(controller area network、控制器局域网络)收发器电路和数字温湿度传感器电路。
UART串行通信电路通过CH340G芯片,将USB总线转成TTL UART串行总线,让STM32单片机通过USART1口与计算机进行串行通信。
以太网模块接口用于安装 W5500以太网模块,STM32单片机通过SPI1口连接W5500模块,完成以太网通信实验[10]。RFID模块和nRF24L01无线模块也使用 SPI1口,它们与 W5500模块共用 SPI1口的MOSI、MISO和SCK,3个模块的片选及中断输出引脚由单片机的其他I/O口独立控制,单片机为主设备,各通信模块为从设备。
CAN收发器电路的核心是一款高速CAN收发器TJA1042,它是CAN控制器和物理总线之间的接口,为CAN控制器提供差动发送和接收功能。
数字温湿度传感器电路核心器件是奥松公司生产的湿敏电容数字温湿度芯片 AM2302,可完成单总线(1-Wire)通信实验,测量环境温湿度[11]。
2.4 无线通信模块
无线通信模块包括RFID模块接口、Wi-Fi模块接口、蓝牙模块接口、红外接收头电路、nRF24L01短距离无线通信模块接口和GPRS+GPS模块接口。
RFID模块接口安装RFID模块MF RC522,该模块内置应用于13.56 MHz非接触式通信中高集成度的读写卡芯片 RC522,STM32单片机通过 SPI1口与RFID模块通信,完成近场通信实验。
Wi-Fi模块接口安装串口Wi-Fi模块ESP8266,其内置核心器件是乐鑫公司的 ESP8266EX,STM32单片机通过USART2口连接Wi-Fi模块ESP8266,可以通过该模块上网,或连接智能手机。
蓝牙模块接口安装HC-05蓝牙模块,它是汇承信息科技公司设计的一款高性能、主从一体蓝牙串口模块。STM32单片机通过 USART3口连接串口蓝牙模块,可以与智能手机、带蓝牙功能的计算机等智能终端交换数据。
红外接收头电路由一体化红外接收头 1838T构成,STM32单片机通过PG9连接1838T接收头的I/O引脚,即可用软件完成红外接收、解码实验。
nRF24L01短距离无线通信模块接口安装nRF24L01短距离无线通信模块。其核心器件是Nordic公司的单片射频收发器nRF24L01,工作于2.4 GHz~2.5 GHz免许可证的ISM频段[12-13]。单片机通过SPI1口连接该无线模块,即可控制nRF24L01无线模块与其他实验系统的nRF24L01无线模块通信。
GPRS+GPS模块接口安装安信可科技推出的GPRS+GPS A7模块。STM32单片机通过USART4和USART5这两个串口与该模块连接,即可完成手机短消息收发、GPRS上网及GPS定位导航实验。
2.5 信源编译码模块
信源编译码模块包括模数转换输入电路及数模转换输出电路。模数转换输入电路为一个阻值为10 kΩ的精密多圈电位器,它将3.3 V的电压进行分压,再送到STM32的PF7引脚,利用STM32单片机内置的12位模数转换器,实现信源编码(模拟信号数字化)。
数模转换输出电路利用STM32单片机内置的12位数模转换器,由 PF6引脚输出模拟电压,实现信源译码。PF6引脚接LED,通过观察LED的亮度,可感受输出电压的大小;也可用示波器观测输出信号波形。
2.6 电源模块
电源模块主要由 5 V电源接口及 MP2303ADNLF-Z构成。如果实验使用的模块不多、工作电流小于0.5 A时,系统可直接采用计算机USB电源;反之,则采用普通5 V直流电源供电。因为STM32单片机及大部分模块采用 3.3 V供电,故用转换效率高的DC-DC电源变换器MP2303ADN,将5 V直流电压转换成3.3 V输出。
3 实验系统功能模块布局
图 2是实验系统 PCB板各功能模块布局示意,STM32单片机位于中央,IPS液晶触摸屏覆盖在单片机上方。用于供电和通信的USB接口位于左边,JTAG口位于右边,各模块分布于PCB板的四周。
图2 PCB板功能模块布局
实验系统PCB板长171.2 mm,宽152.5 mm,上下两边各有3个铜柱安装孔,用于安装6角铜柱及螺母,以支撑PCB板。也可将PCB板直接安装在实验箱上,方便长期保存、使用。
4 实验系统使用
借助ST-LINK/V2仿真/编程器,实验系统可以完成表1所示的18个实验项目。ST-LINK/V2是意法半导体为评估、开发STM8和STM32系列MCU设计一款集在线仿真与下载为一体的开发工具[14]。如图3所示,STM32单片机通过JTAG/SWD接口与ST-LINK/V2连接,ST-LINK/V2通过高速USB2.0与计算机连接,在计算机端运行ST-LINK Utility、STVD、STVP、IAR EWARM或Keil RVMDK等软件,可以实现编程功能,进行JTAG/SWD下载,或实现仿真功能,进行全速运行、单步调试、断点调试等,实时查看I/O状态、变量数据[15]。
图3 实验系统工作方式
表1 实验系统可以完成的实验项目
5 应用效果
图4为实验系统照片,其应用效果如下:
图4 实验系统照片
(1)用于学习多种有线通信、无线通信技术和通信编译码技术。有线通信包括以太网、CAN总线、单总线、UART总线、SPI总线等;无线通信包括短距离无线通信技术,有蓝牙、Wi-Fi、红外、RFID等;远距离无线通信技术有GPRS、GSM和GPS等;通信编译码技术包括信源编译码(AD转换和 DA转换)信道编译码(差错控制编译码)。
(2)用于学习 STM32单片机、嵌入式系统。实验系统的控制核心是STM32F103ZET6单片机,它除了可以当单片机使用、完成基础性的单片机实验外,还可以将 μC/OS-III操作系统、eCos、μCLinux、FreeRTOS和djyOS(都江堰操作系统)移植至其中,完成综合性的嵌入式系统实验[16]。
(3)扩展性强。实验系统将STM32闲置I/O口扩展引出,各模块拆下来后,其接口也可以另作他用。只需用杜邦线将其他设备与PCB板上的I/O口扩展接口或各模块拆下来后的接口连接,即可用 STM32单片机控制其他设备,如ZigBee模块、北斗模块等,完成扩展的实验项目。
(4)用途广泛。实验系统可在“实验教学、课程设计、科技创新、学术竞赛、毕业设计、教师科研”等环节使用。近两年,我院学生获得省级一、二、三等奖共16项;获得国家级、省级大学生创新创业训练计划项目,广东省大学生科技创新培育专项资金项目合计15项;获得授权专利12项。
6 结语
本实验系统具有综合性强、性价比高、功能强大等特点。该实验系统对单片机、嵌入式系统、移动通信和物联网技术等课程的实践教学及学生课外科技创新活动也有促进作用。本系统已获得国家专利,在第四届全国高等学校自制实验教学仪器设备评选中获三等奖,得到校内外同行的认可。