admin管理员组文章数量:1531466
2024年6月4日发(作者:)
龙源期刊网
基于STM32和CH9343的手机虚拟信号源
设计
作者:王鹏 李红波 苏加斌
来源:《无线互联科技》2018年第11期
摘要:文章利用Android智能手机作为应用平台,通过设计信号调理电路、主控电路和
CH9343主机接口电路,实现DAC数模转换,使得模拟数据按照设定参数产生波形输出,通
过编写手机APP应用软件,完成波形参数输入功能。实验证明,该虚拟信号源实用新颖,使
用方便。
关键词:CH9343; STM32;虚拟信号源;手机示波器
实验室信号源是电子实验中常用的仪器,目标电路通过接入信号评估测试电路参数或性
能。实验用信号源往往采用交流供电,体积大,功能多,使用起来也较为复杂。本文设计了一
种基于STM32和CH9343的手机配件,通过利用安卓手机和接入应用配件,制作了一款便携
式虚拟信号源。该信号源具有携带方便、新颖实用、即插即用等特点,较好地解决了工程技术
人员的快速测试需要。近年来,有关智能手机在虚拟信号源方面的应用,更多的只是论述硬件
设计方面[1-5],较少的结合智能手机平台方面的应用设计。
1 STM32单片机
本设计采用意法半导体(STMicroelectronics,ST)公司的STM32F103RC单片机,以
ARM Cortex-M3为内核的增强型32位微控制器,专门为高性能、低成本、低功耗的嵌入式应
用设计。工作频率高达72 MHz,是同类产品中性能最高的;256 kB 片上FLASH ROM, 48
kB SRAM; 5个超高速USART;支持DMA操作的2通道12位同步DAC转换器;8个定时
器;支持多路PWM带死区控制的通道等,其资源丰富,可以满足数据快速传输和复杂的数据
运算等功能。
2 CH9343接口芯片
该芯片是沁恒公司的一个单芯片全速USB安卓主机接口芯片,符合Android开方文式配
件(Android Open Accessory,AOA)规范,芯片内部配置有USB协议解析器,用于内置安卓
设备对外部组件的访问。该芯片提供了 USB转GPIO,UART,SPI和I2C等多种可配置硬件
接口,可方便地实现安卓设备接口的扩展,用途广泛。
3 系统硬件设计
龙源期刊网
系统硬件主要包括智能手机和信号源配件两部分。信号源配件由CH9343主机接口电路、
STM32主控电路和信号调理电路组成。系统框如图1所示。
3.1 信号调理电路
信号调理电路主要用来实现信号电流放大和极性变换功能,信号调理电路如图2所示,图
中给出了其中1路。输入信号uil范围为0〜+3 V,输出信号uol范围为-3〜+ 3 V。由前级运放
进行信号的双极性变换,后级进行了 2倍增益和50Ω阻抗输出等功能。
3.2 STM32主控电路
该电路完成用户参数到高速的数模转换,以产生需求的模拟信号。主控电路如图3所示。
图中ui1和ui2分别是数字模拟转换器(Digital to analog converter,DAC)通道0和通道 1的
输出信号,它们分别连接至信号调理电路上。STM32控制器的串口(TXD和RXD)与
CH9343芯片的扩展串口(RXD和TXD)交叉相连。
3.3 CH9343主机接口电路
STM32控制器高速串口连接至CH9343的串口上,串口采用交叉连接。CH9343芯片的
USB端口信号连接至安卓手机的USB接口上。当用户设定好波形参数后,数据从手机虚拟信
号源软件中下传到CH9343的USB接口电路,后由CH9343主机接口电路转发至STM32的高
速串口。CH9343主机接口电路如图4所示。
4 固件程序设计
固件程序设计主要包括主程序和定时器中断程序两部分,其中主程序用于完成控制器初始
化设置和数据接收功能,定时器中断程序主要完成波形产生等功能。
4.1 主程序设计
主程序主要包括初始化数据缓冲区、I/O口、串口 1、DAC模块和定时器TIM1及产生波
形等。主程序主要代码如下:
int main()
{
ClearBuffer 。; //数据缓冲区清零ConfigurationPort(); //配置 I/O端口
ConfigurationUart ();//配置高速串口,波特率
921600bps
龙源期刊网
ConfigurationDAC(); //配置DAC,12位分辨率ConfigurationTIMlO; //初始化定时器
while(1)
4.2 定时器中断程序设计
在该子程序中,启用了定时器TIM1的中断功能。当定时时间到达设定值时,进入
TIM2_IRQHandler。中断服务程序,完成一次数据DAC数据发送工作。定时周期与波形频率
和周期采样点数有关,由下位机计算设置。
定时器中断服务程序主要代码如下:
void TIM2-IRQHandler(void)
{
DACSetChannel 1 Dat a(DAC-Align-l 2b-R,DA-ROMValue[0][k]); //发出通道0数据
DAC- S etChannel 1 Dat a(DAC- Align- 12b-R ,D A-ROMValue[l][k]); //发出通道 1 数
据cnt++;
if(cnt>=Count)//每通道 20 个点
{
cnt=0;
flagOK=l;
……
}
}
5 应用软件设计
虚拟信号源应用软件采用Eclispe开发环境编写。沁恒公司为安卓手机用户使用外部组件
提供了固件支持,只要通过CH9343的安卓Demo模板,就可方便地完成手机APP界面设计和
逻辑功能编写。APP运行时,智能手机与CH9343的通信建立分4个过程:(1)检测安卓设
备是否连接;(2)判断安卓设备是否支持AOA模式;(3)试图在AOA模式下启动设备;
(4)支持AOA协议的情况下,建立通信连接。运行在华为安卓智能手机上的虚拟信号源软件
界面如图5所示,图中通道1为双极性,幅值1.0 V,频率为1 kHz的正弦波设定情况,通道2
龙源期刊网
为单极性,幅值2.0 V,频率为5 kHz的三角波设定情况。如图6所示为图沖设定参数的实测
波形,上面波形为通道1波形,下面为通道2波形。由图可知本手机虚拟信号源工作效果良
好。
6 结语
本文利用STM32控制器和安卓主机接口芯片,设计了一款手机虚拟信号源。该信号源创
新性地把传统信号发生器和智能移动终端相结合,扩展了信号源的应用空间,是传统信号源的
有利补充,给工程技术人员带来便利。实验证明,该信号源能较好地满足中低频信号的发生需
要,使智能手机成为一种便携式信号源,可以较好地满足快速便捷测量需求。
[参考文献]
[1]张海鹏.简易信号发生器及手持信号检测仪[J].电子世界,2017(9):85.
[2]姜建国.基于STM32的新型信号发生器设计[J].化工自动化及仪表,2017(3):273.
[3]苏加斌,李红波.基于IAP15W和CH9343的手机虚拟示波器设计[J].电子世界,2016
(5):76.
[4]牟光红.STM32的双路信号源及其配置平台设计[J].单片机与嵌入式系统应用,2014
(10):37.
[5]王永胜.USB+OTG在手持数字存储示波表中的应用研究[D].成都:电子科技大学,2009.
龙源期刊网
龙源期刊网
龙源期刊网
版权声明:本文标题:基于STM32和CH9343的手机虚拟信号源设计 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/shuma/1717447650a573320.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论