【经验】解析航顺芯片老版本MCU HK32F103串口USART通讯时偶尔出现数据错误的原因及解决方法
有部分客户在使用航顺芯片HK32F103系列MCU的串口通讯时,偶尔出现数据错误的原因具体有以下几点:
1.串口通讯时因为可能存在累计误差偶尔造成数据错误。
2.用户在配置串口波特率参数时因为HK有细微地方与ST不同。
下面就以上原因,用户根据如下修改,可以使串口通讯正常工作。
对于波特率累计误差,用户可以采用三种方式来解决:
1.修改STOP bit位数,把stop bit设成0.5,但是我们芯片的发送stop bit宽度也会变成0.5。这种方法要注意的是:对方芯片有可能无法接受0.5 stop bit。
2.把波特率设置稍微提高1%左右。比如对方发出115200bps,HK的芯片波特率需要设置为115200*1.01=116352bps(偏差小于1%)。
3.建议HK芯片和对方发送数据时,都不要背靠背发送。
关于上述第二种波特率参数配置,主要是用户需要较高的波特率时,导致波特率配置寄存器的整数部分为1,还存在小数部分的情况。这时HK芯片对小数部分会被忽略掉,导致USART输出的bit宽度不对。出现这种应用时,用户需要调整USART工作频率和波特率的关系,避免波特率配置寄存器的整数部分为1,还存在小数部分。
另外应用串口(USART)还应注意以下2点:
1.串口USART RX IDLE中断问题
用户串口通讯打开了RX IDLE中断后出现反复进入的原因是因为IDLE中断标志不能清除。
◆解决方法:
Step 1. 关闭IDLE 中断.
Step 2. 在RXNE 事件后:
A. 清除IDLE标志.
B. 然后使能IDLE中断.
Step 3. 在IDLE中断触发后: 除能IDLE中断.
2.串口USART使用DMA传输时, DMA通道关闭后DMA_CNDTRn值Reload的问题。
这个与我们HK的DMA设置与ST略有不同,HK的DMA通道在关闭后,对应的DMA_CNDTRn的值会被重新加载为本次发送开始前用户配置的值(即已经发送的数据个数)。如果客户在dma发送完成后关闭了对应的通道,然后读取其DMA_CNDTRn的值就会出现非零值.如果用户想要使用拼接方式发送数据(在一次数据未发完前追加新的数据发送)且前一次数据已发送完成的情况下就会出现错误的数据拼接。
处理数据拼接的解决方案:
如果是单次数据发送模式,用户在DMA数据发送完成后不用关闭DMA通道,在追加新的数据发送时,先在未关闭DMA通道的情况下调用库函数读出DMA_CNDTRn寄存器的值,再关闭DMA通道,然后追加新的数据到缓存buffer(可能是用户在RAM中定义的一个数组),再启用DMA发送,这样来完成数据的拼接发送。
- |
- +1 赞 0
- 收藏
- 评论 0
本文由ll转载自航顺芯片,原文标题为:航顺HK32MCU(第4课)I 关于老版本HK32F103串口USART偶尔出现数据错误的应用笔记(四),本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。
相关推荐
【经验】HK32F030M系列MCU使用GCC配置开发环境教程
航顺芯片推出的HK32F030M系列MCU采用Cortex-M0内核,内置32KB Flash,4 KB SRAM,以及448B的EEPROM,有着丰富的接口和外设资源,性价比高,被广泛使用在多种场合。
【经验】航顺32位MCU HK32F030M FLASH擦写操作非法操作解决方案
HK32F030M是航顺一款入门级经济型32位MCU,使用ARM® Cortex®-M0内核,最高工作频率32MHz。本文将介绍HK32F030M FLASH擦写操作非法操作解决方案。
【经验】航顺32位MCU芯片HK32F103xC/D/E USB枚举失败情况分析及解决方案
HK32F103x/C/D/E是航顺芯片推出的中大容量的32位MCU芯片,内部集成丰富且强大的外设。有客户在快速替换使用过程中,遇到过使用HAL库的USB枚举失败的情况,本文航顺将为您介绍HK32F103xC/D/E USB枚举失败情况分析及解决方案。
航顺芯片和意法半导体的MCU参数对照表
航顺芯片和意法半导体的MCU型号PIN TO PIN 兼容对照表,航顺芯片32位MCU、低功耗蓝牙 SoC 芯片,最高工作频率32MHz-120MHz,闪存16KByte-512KByte。
产品型号
|
品类
|
系列
|
意法半导体型号
|
内核
|
最高工作频率(MHz)
|
闪存(KByte)
|
ST系列
|
内核
|
ROM (KB)
|
SRAM (KB)
|
IIC
|
UART
|
SPI/I2S
|
工作电压VDD(V)
|
封装形式
|
工作温度(℃)
|
兼容类型
|
描述
|
HK32F103RBT6
|
32位MCU
|
HK32F103
|
STM32103RBT6 STM32F103R8T6
|
32位ARM® Cortex®-(M3)
|
96MHz
|
128KByte
|
S**32F103
|
Cotex-M3
|
128KB
|
20KB
|
2
|
3
|
2
|
2.0V~5.5V
|
LQFP64
|
-40℃to105℃
|
PIN TO PIN 软硬件兼容
|
支持1.6uA低功耗,外设丰富,USB/CAN
|
选型表 - 航顺芯片 立即选型
Top Chinese 8/32-bit MCU Manufacturers with ARM Cortex-M0, M0+, M3, M4 and Stable Supply
In the face of rising semiconductor raw material prices and a continued shortage of production capacity, Sekorm has joined Civil Technology, Arteli, Chipsea, China Microelectronics, Fudan Microelectronics, Aerospace Shun, and other mainstream MCU manufacturers to provide stable MCU supply guarantees
【工程师秘籍】航顺芯片一文教会你中级性能的MCU应该怎么选
本文以航顺芯片HK32F407系列M4内核MCU为例讲解了如何根据自己的项目进行产品选型,希望为广大工程师作者带来一些启发。
基于航顺芯片车规级MCU HK32A040的车窗升降防夹解决方案
基于航顺芯片M0系车规级MCU HK32A040C8T3的车窗玻璃升降防夹开关方案,无需专用传感器,可通过学习弥补多次运行带来的偏差,安全性高,同时可极大地降低车窗控制器总成本,已得到众多主机厂的青睐。
基于航顺芯片车规级MCU HK32A040C8T3的汽车拨档开关解决方案
航顺芯片M0系车规级MCU HK32A040C8T3就是这样一颗“大脑”,应用在拨档开关方案中,其主要作用是接收来自拨档开关的信号,并将这些信号转换为能够控制汽车发动机、变速器等部分的电信号,从而简化驾驶操作,为驾驶员提供极大的便利。
航顺芯片32位MCU选型表
航顺芯片ARM Cortex-M0、M0+、M3、M4及RISC-V等二十六大系列,300余款工业/商业/车规级、通用/专用/定制化32位MCU提供选型帮助,P2P软硬件兼容S**32
产品型号
|
品类
|
系列
|
内核
|
ROM(KB)
|
SRAM(KB)
|
最高工作频率(MHz)
|
闪存(Kbyte)
|
IIC
|
UART
|
SPI/I2S
|
工作电压VDD(V)
|
封装
|
工作温度(℃)
|
HK32F103RBT6
|
32位MCU
|
HK32F103
|
32位ARM® Cortex®-(M3)
|
128KB
|
20KB
|
96MHz
|
128KB
|
2
|
3
|
2
|
2.0V~5.5V
|
LQFP64
|
–40℃ to 105℃
|
选型表 - 航顺芯片 立即选型
【选型】航顺芯片MCU HK32F103CBT6兼容GD32F103CBT6,功耗低至1.6μA,工作温度最高105℃
HK32F103CBT6是一颗高性能的ARM CortexTM-M3 32位的RISC内核的MCU,最高工作频率96MHz,内置高达128KB FLASH、20KBSRAM,本文主要介绍航顺HK32F103CBT6与GD32F103CBT6性能对比。
国产MCU厂商,靠什么从内卷中脱颖而出?航顺联合创始人兼CTO王翔:产品的质量和独特性才是关键
SIA数据显示,中国MCU市场占全球25%左右。尽管市场规模庞大,但国内MCU厂商的产品主要集中在中低端市场,同质化竞争严重。本土厂商面临着巨大的内卷压力,市场价格混乱,利润空间不断压缩。Big-Bit借此机会采访航顺芯片的联合创始人兼CTO王翔,与他探讨了国内高端MCU市场的发展现状、航顺芯片的策略与思考,以及未来规划。
【选型】国产ARM架构MCU用于电机控制,兼容STM32F103RBT6,性能封装基本一致
驱动电机离不开MCU的控制,STM32F103RBT6是一款常用的用来控制电机的MCU。研发过程中部分用户提出要求,希望推荐其他型号作为备选对比,综合评估。本文推荐航顺芯片的ARM架构MCU HK32F103RBT6,封装兼容,参数对齐,满足使用要求。
【IC】航顺芯片HK32S0192——打破传统!新世代指纹传感专用MCU
航顺芯片推出HK32S0192——打破传统!新世代指纹传感专用MCU,具有低功耗触摸侦测唤醒,专用高速数据传输接口ASPI@24MHZ等核心特点。
【选型】国产MCU HK32F103CBT6可兼容STM32F103CBT6,最高工作频率96MHz
伴随着国产替代的浪潮,某客户一直使用的STM32F103CBT6想寻找一颗国产替代的物料,我们推荐国产品牌航顺芯片的HK32F103CBT6(以下简称HK),可PTP兼容STM32F103CBT6(以下简称STM),软硬件兼容,本文是2款MCU的参数性能对比。
航顺携高性能HK32F4系列MCU等产品及解决方案,正式亮相慕尼黑上海电子展
慕尼黑2024上海电子展正式开展,航顺HK32MCU上海新国际博览中心E4号馆4616号展位,高性能迭代HK32F4系列MCU新品闪耀全场!HK32F4系列采用ARM Cortex-M4F内核,运行频率168MHz,内置1024KB Flash,192KB SRAM和64KB CCM。
电子商城
现货市场
服务
可定制显示屏的尺寸0.96”~15.6”,分辨率80*160~3840*2160,TN/IPS视角,支持RGB、MCU、SPI、MIPI、LVDS、HDMI接口,配套定制玻璃、背光、FPCA/PCBA。
最小起订量: 1000 提交需求>
可烧录IC封装SOP/MSOP/SSOP/TSOP/TSSOP/PLCC/QFP/QFN/MLP/MLF/BGA/CSP/SOT/DFN;IC包装Tray/Tube/Tape;IC厂商不限,交期1-3天。支持IC测试(FT/SLT),管装、托盘装、卷带装包装转换,IC打印标记加工。
最小起订量: 1pcs 提交需求>
登录 | 立即注册
提交评论