[方案相关]

国产MCU专栏 第35期:独门秘籍!小华MCU 开发经验及问题分享

[复制链接]
6454|8
手机看帖
扫描二维码
随时随地手机跟帖
21ic小能手|  楼主 | 2022-11-30 20:00 | 显示全部楼层 |阅读模式

小华.jpg
*阅读说明:以下仅摘录帖子内容展示,详细说明及相关源码、资料等请戳原链接查看


1、前言
选择了HC32D391FEUA-TFN32TR这一款。
2、学习时钟树
3、焊接最小系统,调试掉电模式功耗
在学习完时钟树后,就把之前画好的PCB打样,准备先做一个最小系统,使用内部时钟跑起来。
4、跑例程,实测功耗PD1模式6ua,PD3模式2ua
3.png


与其他的开发板不同,在HC32F460开发板上配置了小巧别致的I2C接口OLED屏。有了它,我们需要显示的数据和信息就不必完全借助于串口通信了!
好像是华大要测试测评者的水平,尽管开发板配置了OLED显示屏,但在例程中却没有提供相应的程序支持。
好在要驱动它并不难,所做的无非是两件事,一是了解GPIO口的使用方法,将SDA和SCL引脚设置为输出口,然后定义好输出高低电平的语句,
以对OLED屏厂商的例程加以衔接;另一件事就是配置相应的延时函数,以控制OLED屏的时序要求。
此外,为了在OLED屏上实现汉字显示功能,可使用相应的字模提取软件来获得所需用到的字模,以构建专用的小字库。字模的提取过程参见图1所示。
1.jpg
图1 提取字模


用华大的串口USART1做RS485通信。
一开始设置的通讯波特率为115200,串口发送数据正常,一开始以为是TVS管的结电容过大导致的发送频率上不去
然而,去掉TVS管D11之后,发送乱码问题依然没有解决。
然后再次考虑到是因为是因为控制接收和发送的PMOS管电平逻辑不对导致的,用示波器测得0-2.2V
4.png


调试华大F460KETA芯片,遇到了DMA串口发送的问题,来和大家分享一下。
华大的DMA和STM32的DMA不一样,STM32系列的DMA发送只需要使能DMA通道,就可以触发一次DMA发送,而华大的需要用用软件触发只能触发一次DMA一个字节的发送,后来改用串口发送完成中断来触发DMA发送。


在不懈的努力下完成了U8g2的移植工作,难点在于HC32的硬件IIC与u8g2对应的接口理解。
1、复制CSRC文件夹文件到工程,然后把他们加入Keil工程
2、加入keil工程时u8x8_d_开头的文件之加入与你使用的显示器对应的文件即可
3、定义回调函数和延时函数
4、例程文件
5.png


打开一个GPIO输出点亮LED的工程就可以初步上手这个开发板了。
2.png


决定自己移植一下Xmodem协议。
因为框架已经写好,所以只需要修改对应的接口就可以了。在进行IAP的过程主要涉及到如下四个外设
1、系统时钟设置(选择设置)
2、串口发送接收
3、IO操作
4、flash擦除写入
5、定时器中断


使用特权

评论回复
海滨消消| | 2022-12-2 20:52 | 显示全部楼层
这份整合起来的独门秘笈就厉害了

使用特权

评论回复
Innercourage| | 2022-12-7 15:07 | 显示全部楼层
挺有点意思啊,这很不错,很有参考价值

使用特权

评论回复
binoo7| | 2022-12-15 16:39 | 显示全部楼层

使用特权

评论回复
单片小菜| | 2022-12-27 10:38 | 显示全部楼层
这个还是不错的选择,感谢楼主的分享。

使用特权

评论回复
lmq0v9| | 2022-12-31 22:21 | 显示全部楼层
华大DMA串口发送遇到的坑整合起来就很厉害啦!~

使用特权

评论回复
lvyunhua| | 2023-1-16 13:53 | 显示全部楼层
路过学习了。

使用特权

评论回复
weifeng90| | 2023-1-16 21:53 | 显示全部楼层
建议弄个问题集锦文档,方便查阅。

使用特权

评论回复
麻花油条| | 2023-1-28 11:18 | 显示全部楼层
练好了这份独门秘笈我就无敌了,哈哈哈

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则