专栏名称: NXP客栈
恩智浦半导体(纳斯达克代码:NXPI)专为互联汽车、网络安全、便携和可穿戴式应用以及物联网打造强大解决方案,帮助人们实现“智慧生活,安全连结”。
目录
51好读  ›  专栏  ›  NXP客栈

围观!基于双核MCU的无线数字对讲机 | LPC双核大赛获奖方案

NXP客栈  · 公众号  ·  · 2018-08-15 08:00

正文


恩智浦LPC双核设计大赛已经完美收官,可是小伙伴们还是有点意犹未尽,想更多地了解利用LPC双核MCU的新特性,在开发中究竟有哪些新玩法?


本期开始,NXP客栈将邀请本次大赛的获奖选手现身说法,分享他们的设计思路和开发经验。今天我们在这里向大家隆重介绍的,就是本次大赛的一等奖获奖作品——双核无线数字对讲机,Ta的开发者是王志超。


项目简介


本项目是基于 LPC54114 为主控,采用射频SI4463的无线数字对讲机。主要实现了数字对讲、波道切换、功能设置三大功能。该项目充分利用片载的外设资源(DMIC+DMA+双核等),M4内核负责语音数据编解码,M0+内核负责实时控制,双核协作,稳定高效。


通过语音数据压缩,不仅减少了数据量,减轻了射频传输的负担,保证了话音的实时性,而且实现了较好的语音效果,通讯距离比较远。

该项目采用数字传输方案,具有很强的扩展性,未来可以广泛应用到餐饮点菜机、工业应用、人员搜救等方面,具有很好的市场前景 。


图1,双核无线对讲机实物图


硬件设计


方案的主控芯片采用恩智浦的双核MCU—— LPC54114 ,射频芯片采用SI4463,音频芯片是WM8904,数字MIC采用SPH0641LM4H,其他硬件资源还包括OLED显示模块、3.5mm接口耳机和音箱等音频输出设备,


图2,双核无线对讲机硬件资源


图3,双核无线对讲机硬件框图


软件设计


软件设计中,发送端M0+内核做实时控制,检测到按键之后通过邮箱发送给M4内核,对语音进行采集、压缩和发送。在接收端,M0+内核同样做实时控制,M4内核做语音的解压缩,通过扬声器播放出来。


图4,双核无线对讲机软件框图


本方案采用ADPCM语音编解码,ADPCM是自适应差分脉冲编码调制的简称,最早使用于数字通信系统中。它是一种针对16 bit声音波形数据的有损压缩算法,压缩比为1:4,能够将声音流中每次采样的16 bit数据以4 bit存储, 压缩/解压缩速度快,算法相对简单, 是一种低空间消耗、高质量声音获得的好途径。


本项目采用8K音频采样率,16 bit数据深度,结合ADPCM编码算法具有复杂度低,压缩比大,延时短的特点,且SI4463满足空中速率100kbps、> 32kbps@8khz传输速率的条件,故选用此编解码。


项目优化


为进一步增强无线传输稳定性,提高对讲机通讯距离,通过多次实验,进行了三个方面的优化:


  • 方法1:射频SI4463单独供电,匹配10UF以上的电容;

  • 方法2:降低SI4463空中速率从300Kbps至100Kbps;

  • 方法3:将原先64Byte的音频长帧数据变为32Byte短帧数据,实时性更好,用户体验更佳。


图5,LPC双核设计大赛决赛中,双核无线数字对讲机项目进行展示


开发心得


在此项目开发过程中,使用恩智浦LPC双核MCU有两点突出的体会:


1
双核协作,性能高效

LPC54114 中的M4内核主要负责音频数据的编解码,完成一些复杂的工作,M0+内核负责实时控制,例如按键检测、交互显示等一些费时操作,双核之间通过邮箱、MailBox交互数据,简洁高效。


2
外设资源丰富,性能强劲

LPC54114 自带的DMIC和 I 2 S 接口,结合多路DMA,解决了语音录入和播放的大问题,可以很轻松的获取到PCM格式的音频数据,完成音频数据编解码,然后通过无线发送出去;接收端通过PIT中断,实时接收无线数据,最后推送给WM8904播放语音。







请到「今天看啥」查看全文