华大HC32L110系列填坑之USART

先吐槽下,华大的函数库都是坑,而且很浪费CPU资源,在此建议有能力、有时间的一定要去学习他的寄存器操作,一是防坑,二可以提高个人能力,毕竟这是基础的东西(俗话说:基础不牢,地动山摇)

进入主题,这个说是串口BUG,实际是系统时钟问题。本人使用外部8M晶振,按照官方例程,将串口配置完成后,测试。设置波特率为9600,实际使用波特率只有2400。使用仿真查看系统时钟频率,这点华大的库提供了一个比较便利的函数 Clk_GetHClkFreq()

仿真发现,程序运行到u32Val = CLK_XTH_VAL;时,Val值为32000000,GO TO一下

 发现外部高速时钟频率默认值是32000000。我的天呐,以后换个外部高速晶振都得来改下这个值。。。惊掉下巴!!!

        在使用华大MCU的串口时还要注意波特率与系统主频的匹配,在他们的用户手册里有“Mode1/Mode3波特率设置示例”需要跑更高的波特率时,主频速率也要跟上。

        这里备注个“双波特率”,根据华大提供的公式理解,就是将(主频*2),具体功能未查到,也未细研究,如有知道的大佬欢迎留言解惑。

### 关于HC32L110C6UA芯片的串口烧录方法 对于HC32系列MCU,尤其是提到的具体型号HC32L110C6UA,其程序烧录可以通过多种方式实现。其中一种常见的方式是利用串口进行在线调试和程序下载。 #### 使用H7-TOOL作为开发工具 H7-TOOL是一款功能强大的多合一开发工具,它集成了拖曳式脱机烧录、高速DAPLINK仿真以及各种辅助工具(如CAN助手、串口助手、示波器等)。该工具支持多种通信接口,包括WiFi、以太网和USB[^2]。因此,在尝试通过串口HC32L110C6UA进行程序烧录时,可以优先考虑使用此工具。 以下是关于如何配置并执行串口烧录的一些指导: #### 配置环境与操作流程说明 为了成功完成HC32L110C6UA的串口烧录过程,需注意以下几点: 1. **硬件连接** 确保目标板上的UART端口已正确连接到PC或其他主机设备上。通常情况下,TX/RX/GND三根线是最基本的要求。 2. **波特率设置** 在初始化阶段,必须确认所使用的波特率参数匹配官方文档中的推荐值。一般而言,默认初始速率可能设为9600bps或者更高一些的速度比如115200bps[^1]。 3. **软件选择** 推荐采用厂商提供的专用IDE或第三方兼容工具来加载HEX/BIN文件至目标单片机内部存储区。如果选用的是H7-TOOL,则可以直接在其图形界面下指定待写入的数据包路径,并按照提示逐步推进直至结束整个传输动作。 4. **注意事项** - 如果遇到无法识别设备的情况,请核查驱动安装状况; - 对某些特殊版本号的产品来说,也许还需要额外更新固件才能获得最佳体验效果; ```python import serial ser = serial.Serial('COM3', baudrate=115200, timeout=1) def send_data(data): ser.write(data.encode()) send_data("Your command here") response = ser.readline().decode() print(response) ``` 上述脚本展示了一个简单的Python例子用于发送指令并通过串行链路接收反馈消息。 --- ### 提供的相关资源链接地址 由于具体教程文档可能会随时间而有所变动,建议访问原厂官网获取最新资料,同时也可以参考社区讨论帖了解其他开发者分享的经验心得。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值