【前言】
单片机学习差不多3年了,接触与评测试用的MCU差不多十余个厂商,超三十多个品种,从国外的厂商到国内的厂商。从ARM M3到M7,以及RISC-V的单核多核。从C到C++,python,lua等等多种语言开发,开发环境从MDK、IAR、STM32CubeIDE,到国产的沁恒、雅特力等开发工具。MCU的基础外设如GPIO、FMS、IIC等到最近的I3C、FDCAN。网络也掌握了LwIP,TCP、MQTT等等。操作系统从FreeRTOS,RT-Thread,ToubundOS等等。接触了这么多,有过自己的作品,参与了多次比赛也拿到了好的成绩。
最近受一位UP主”超子说物联网“的启发,准备使用国产芯片武汉芯源CW32L083来做一系列的OTA升级的项目,以此来梳理自己的所学习到的知识。
【目的】
本次准备介绍开发板开始,逐一介绍UART、GPIO、IIC、SPI、FLASH的外设使用。使用
CW24C02AD来储存配置信息,使用W25Q64JVSSIQ来储存升级固件,实现从串口实现人机交互的OTA升级固件的一系列的知识。
【目录】
1、开发板介绍、硬件准备、资料分享。
【武汉芯源CW】OTA升级系列之一CW32L083VxTx开发板介绍-电子产品世界论坛 (eepw.com.cn)
2、基础模板工程创建。
【武汉芯源CW32】OTA升级系列之二创建基础Keil工程-电子产品世界论坛 (eepw.com.cn)
3、串口实现DMA不定长接收
【武汉芯源CW32】OTA升级系列之三串口驱动-电子产品世界论坛 (eepw.com.cn)
4、IIC外设库的制作。
【武汉芯源CW32】OTA升级系列之五软件模拟IIC驱动-电子产品世界论坛 (eepw.com.cn)
5、实现CW24C02AD配置信息的读写。
【武汉芯源CW32】OTA升级系列之六驱动CW24C02AD-电子产品世界论坛 (eepw.com.cn)
6、实现SPI读写W25Q64JVSSIQ。
7、实现APP启动跳转。
8、实现串口IAP升级。
9、实现下载固件到FLASH中。
10、shell命令交互。
11、实现shell指定APP的启动。
12、时钟切换与微秒精准延时
【武汉芯源CW32】OTA升级系列之四时钟转换以及Systick微秒精确延时-电子产品世界论坛 (eepw.com.cn)
【感谢】
此次根据【手把手教程 4G通信物联网 OTA远程升级 BootLoader程序设计】GD32F103C8T6单片机来学习,在cwL083开发板上实现。