| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 嵌入式 -> 国民技术N32G030F6S7使用ymodem协议更新固件 -> 正文阅读 |
|
[嵌入式]国民技术N32G030F6S7使用ymodem协议更新固件 |
一、环境介绍MCU:?N32G030F6S7 TSSOP20 代码开发工具:?Keil5 上位机工具:SecureCRT 协议:?ymodem 本篇文章主要讲解如何在国民技术N32G030F6S7工程里添加移植ymodem协议,最终完成串口升级固件,因为主要是讲ymodem协议栈的移植。 工程源码下载地址: 二、ymodem协议协议通讯过程如图,不需要彻底明白,只需要了解便可。 1、单片机发送'C'字符给上位机 2、上位机发送文件名,文件大小等信息给单片机,数据开头为SOH(0X01) 3、单片机接收数据校验成功后返回ACK给上位机,然后再发送'C'等待上位机发送固件(固件已1K数据包的形式进行发送) 截图链接:https://blog.csdn.net/lcmsir/article/details/80550821 三、移植过程讲解1、跳转程序
注意: ? ? ? ? 1)M0没有中断偏移寄存器,即VTOR ????????2)APPOffset位偏移量 ? ? ? ? 3)此段代码是向原厂索要的,直接用便可(我也不懂) 2、ymodem移植文件修改 1)、command.c ? ? ? ?此文件只需要修改两个函数: ????????void SerialPutChar(uint8_t c);? ? ? ? //发送字节 ????????
2)、flash_if.c ? ? ? ? 此文件为对flash操作的底层文件,需要将其中操作函数使用该芯片库函数代替。 3)、flash_if.h
注意:移植时候这里的芯片参数得根据实际进行修改? ? ? ? (1)、USER_FLASH_LAST_PAGE_ADDRESS? ? ? ? ?//flash倒数第二页的首地址 ? ? ? ? (2)、USER_FLASH_END_ADDRESS? ? ? ? ? ? ? ? ? ? ? ?//flash最后一页的尾地址 ? ? ? ? (3)、FLASH_PAGE_SIZE? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //flash一页的大小 ? ? ? ? (4)、APPOffset? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?//APP地址偏移量? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? 四、keil配置? ? ? ? 1)、IAP工程里的地址按照正常来写便可 ????????2)、APP工程里面的ROM开始地址为APPLICATION_ADDRESS,ROM大小为USER_FLASH_END_ADDRESS-APPLICATION_ADDRESS。我预留给bootloader的空间为16K,所以APP的地址得从0x08004000开始,ROM空间为0x4000 五、效果演示六、工程代码下载链接 |
|
嵌入式 最新文章 |
基于高精度单片机开发红外测温仪方案 |
89C51单片机与DAC0832 |
基于51单片机宠物自动投料喂食器控制系统仿 |
《痞子衡嵌入式半月刊》 第 68 期 |
多思计组实验实验七 简单模型机实验 |
CSC7720 |
启明智显分享| ESP32学习笔记参考--PWM(脉冲 |
STM32初探 |
STM32 总结 |
【STM32】CubeMX例程四---定时器中断(附工 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/25 18:21:19- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |