关于使用‘rt-thread-master‘包从新创建对应开发板型号工程遇到相关问题

问题1:裁剪完成后在ENV中使用命令每次使用'scons --target=mdk5'重新生成工程后在工程中自己选择的单片机型号会变成默认问题

解决: 通过生成的"template.uvprojx"打开工程,在devicezhong 更改成自己要选择的单片机型号,然后保存;再次通过"project.uvprojx"打开工程,之后使用过'scons --target=mdk5'重新生成工程,单片机型号就不会再变了;

问题2:KEIL C提示 No Browse information available

解决:在option中->Output->Browse Information 勾选上

问题3:关于keil 编译出现 warning: #1295-D: Deprecated declaration /函数/ - give arg types问题

原因:在声明函数时,没有参数,但是括号里没有加"void"

解决:在函数声明的地方,括号中加"void"

参考资料:关于keil 编译出现 warning: #1295-D: Deprecated declaration /函数/ - give arg types_飞翔的卡布达的博客-CSDN博客

问题4:关于自己在工程中创建文件夹,每次使用'scons --target=mdk5'重新生成工程后文件夹在工程中不显示问题

解决:在该文件夹中放入"SConscript"文件,并将里面group组名字更改为该文件夹名字

**问题5:**在移植EasyFlash和FAL相关组件和驱动过程中出现的问题

5.1 STM32中"drv_flash_f4.c"中和stm32f2_onchip_flash定义的结构体有关问题

在AT32master包中,这个结构体就1个通用的(at32_onchip_flash);在STM32F4中,这个相关的结构体有三个(stm32_onchip_flash_16k/stm32_onchip_flash_64k/stm32_onchip_flash_128k);

我用的stm32f407-st-discovery例程包中,获取完flash相关驱动后,程序中没有"STM32_FLASH_START_ADRESS_16K"等相关宏定义;所以我按照AT32方式修改为一个结构体;

5.2 修改board.h文件中"STM32_SRAM_SIZE"导致程序中heap溢出进入while死循环,程序不能运行问题

解释:STM32F407VET6开发板SRAM大小192k(128k+64k),分成两个RAM,RAM1(128K)+RAM2(64K)两部分,在kile中默认只用RAM1;

cpp 复制代码
#define STM32_SRAM_SIZE        (128)  //RAM1大小
#define STM32_SRAM_END         (0x20000000 + STM32_SRAM_SIZE * 1024)  //开始地址为0x20000000,计算的只有RAM1的大小

解决:刚开始宏定义STM32_SRAM_SIZE设置成总的大小(192)导致计算"#define HEAP_END STM32_SRAM_END"溢出;更改为128k后正常运行;

Note:在查找问题过程中,通过查找资料,了解到制作bsp过程中堆内存配置以及修改链接脚本相关知识

参考资料:RT-Thread 文档中心系列BSP制作教程

问题6:移植完EASYFLASH后fal分区报错

现象如下所示,报红的地方

分析原因:使用的RT-T包中的示例把FLASH大小定义为64k,但是自己使用Fal分区按照现在使用的单片机Flash大小(512K)去定义分区的

解决:在board.h文件中修改定义的FLASH大小,如下图所示

问题7:通过命令直接生成简洁的对应型号的工程,而不是通过删除其他不需要的包

命令:scons --dist

生成文件工程:在dist文件夹下边

相关推荐
Heartache boy14 分钟前
野火STM32_HAL库版课程笔记-TIM通道输出应用之PWM实现呼吸灯
笔记·stm32·单片机·嵌入式硬件
桌面运维家17 分钟前
解决Windows 10打印机脱机:端口、驱动、网络故障排除
windows·stm32·单片机
liwulin05061 小时前
【ROS2】【ESP32S3纯透传方案】ESP32S3+WINDOWS+VMware+ROS2+YDLIDA X导航完整落地方案
windows·stm32·单片机
ACP广源盛139246256731 小时前
IX8024@ACP#重构新一代 AI 算力产品的高速扩展架构
网络·人工智能·嵌入式硬件·计算机外设·电脑
天选硬件打工人2 小时前
第二十三篇:【硬件工程师筑基系列 5-2】PCB 设计核心基础 | 叠层设计、焊盘封装与 DFM 可制造性规范
单片机·嵌入式硬件·硬件架构·硬件工程·制造·基带工程
廷华电子3 小时前
STM32H743+AX58100学习板
stm32·嵌入式硬件·电机控制·ethercat·cia402
busideyang3 小时前
函数指针类型定义笔记
c语言·笔记·stm32·单片机·算法·嵌入式
我的老子姓彭5 小时前
stm32串口hal库
stm32·单片机·嵌入式硬件
爱喝纯牛奶的柠檬5 小时前
【已验证】STM32F103的MPU6050应用一(驱动篇)
stm32·单片机·嵌入式硬件
是翔仔呐5 小时前
第10章 串口通信USART全解:轮询/中断/DMA三种收发模式与上位机通信实战
c语言·开发语言·stm32·单片机·嵌入式硬件·学习·gitee