Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
Hardfault
移植stm32f405vg时遇到程序进入hardfault的问题
发布于 2018-03-07 11:38:56 浏览:1584
订阅该版
* 本帖最后由 moebius.ever 于 2018-3-7 12:37 编辑 * 采用[https://github.com/RT-Thread/rt- ... sp/stm32f429-apollo](https://github.com/RT-Thread/rt-thread/tree/master/bsp/stm32f429-apollo)复制了一份文件出来,并采用stm32f4xx最新的hal库,使用sw4stm32最新版本作为开发环境,现象:程序不能正常获得USART1的地址,serial1的地址为NULL,程序执行到如下位置rt_hw_serial_register```int stm32_hw_usart_init(void) { struct stm32_uart *uart; struct serial_configure config = RT_SERIAL_CONFIG_DEFAULT; #ifdef RT_USING_UART1 uart = &uart1; uart->UartHandle.Instance = USART1; serial1.ops = &stm32_uart_ops; serial1.config = config; /* register UART1 device */ rt_hw_serial_register(&serial1, "uart1", RT_DEVICE_FLAG_RDWR | RT_DEVICE_FLAG_INT_RX, uart); #endif /* RT_USING_UART1 */ #ifdef RT_USING_UART2 uart = &uart2; uart->UartHandle.Instance = USART2; serial2.ops = &stm32_uart_ops; serial2.config = config; /* register UART1 device */ rt_hw_serial_register(&serial2, "uart2", RT_DEVICE_FLAG_RDWR | RT_DEVICE_FLAG_INT_RX, uart); #endif /* RT_USING_UART2 */ #ifdef RT_USING_UART3 uart = &uart3; uart->UartHandle.Instance = USART3; serial3.ops = &stm32_uart_ops; serial3.config = config; /* register UART3 device */ rt_hw_serial_register(&serial3, "uart3", RT_DEVICE_FLAG_RDWR | RT_DEVICE_FLAG_INT_RX, uart); #endif /* RT_USING_UART3 */ #ifdef RT_USING_UART4 uart = &uart4; uart->UartHandle.Instance = USART4; serial4.ops = &stm32_uart_ops; serial4.config = config; /* register UART4 device */ rt_hw_serial_register(&serial4, "uart4", RT_DEVICE_FLAG_RDWR | RT_DEVICE_FLAG_INT_RX, uart); #endif /* RT_USING_UART4 */ #ifdef RT_USING_UART5 uart = &uart5; uart->UartHandle.Instance = USART5; serial5.ops = &stm32_uart_ops; serial5.config = config; /* register UART5 device */ rt_hw_serial_register(&serial5, "uart5", RT_DEVICE_FLAG_RDWR | RT_DEVICE_FLAG_INT_RX, uart); #endif /* RT_USING_UART5 */ return 0; }``` 进入hardfault 折腾了3天,发现使用scons编译后,参照《[AN0006 RT-Thread QEMU BSP应用指南.pdf](https://pan.baidu.com/s/1pM4kr6F?errno=0&errmsg=Auth%20Login%20Sucess&&bduss=&ssnerror=0&traceid=#list/path=%2F%E5%85%AC%E5%BC%80%E5%88%86%E4%BA%AB%E7%9B%AE%E5%BD%95%2FRT-Thread%20%E7%9B%B8%E5%85%B3%E6%96%87%E6%A1%A3%2FRT-Thread%E5%BA%94%E7%94%A8%E7%AC%94%E8%AE%B0AN%2FAN0006%20QEMU&parentPath=%2F%E5%85%AC%E5%BC%80%E5%88%86%E4%BA%AB%E7%9B%AE%E5%BD%95%2FRT-Thread%20%E7%9B%B8%E5%85%B3%E6%96%87%E6%A1%A3)》能正常运行和调试,使用eclipse能编译,但是不能运行和调试。 eclipse的编译参数是根据rtconfig.py中配置的。 打印详细的编译信息,对比scons的和eclipse的,发现scons的-fPIC选项实际编译的时候没有用,最后把-fPIC这个选项去掉eclipse可以运行和调试了。不知道rtconfig.py中的fPIC选项是起什么作用的。
查看更多
2
个回答
默认排序
按发布时间排序
bernard
2018-03-07
这家伙很懒,什么也没写!
-fPIC一般不用的,是指以浮动地址方式执行。 你这里是使用eclipse来编译的吗?有些没弄明白你的状况
moebius.ever
2018-03-07
这家伙很懒,什么也没写!
>-fPIC一般不用的,是指以浮动地址方式执行。 > >你这里是使用eclipse来编译的吗?有些没弄明白你的状况 ... --- 不能正常运行和调试的是用eclipse编译的,使用scons编译的能正常运行和调试
撰写答案
登录
注册新账号
关注者
0
被浏览
1.6k
关于作者
moebius.ever
这家伙很懒,什么也没写!
提问
3
回答
19
被采纳
0
关注TA
发私信
相关问题
1
RTT1.0,STM32调试时会跑到HardFault【已解决】,出现新问题
2
新手请教关于hardfault怎么查
3
github最新版本库中stm32f0X分支,运行切换任务时候出现hardfault[已解决]
4
实现iap功能,bootloader使用了rtt操作系统,在跳转到app代码的时候提示出现hardfault的问题
5
ymodem在on_begin内发送can无法断开连接,而且RTT会报hardfault
6
挂载UFFS文件系统执行到退出_BuildTreeStepOne函数时hardfault异常
7
STM32F1+RTT串口接收中断进入hardfault
8
STM32F746NG随机进入hardfault(已解决)
9
[已解决]自已建了个STM32F103的MDK工程,初始化时总是进入HardFault,求教!
10
将 Cortex M3 的 hardfault 处理与 M4、M7、M0 保持一致?
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
机器人操作系统 (ROS2) 和 RT-Thread 通信
4
五分钟玩转RT-Thread新社区
5
国产MCU移植系列教程汇总,欢迎查看!
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
最新文章
1
【学习分享】初探RT-Thread系统调度
2
FRDM-MCXN947 Flash实践--W25Q64
3
NXP MCXN947测评(一)开箱+环境配置
4
stm32f103的adc+dma多通道采集数据
5
恩智浦FRDM-MCX947上的 IIC(硬件) 实践
热门标签
RT-Thread Studio
串口
LWIP
Env
SPI
Bootloader
AT
ART-Pi
CAN总线
Hardfault
FinSH
USB
文件系统
RT-Thread
DMA
SCons
线程
RT-Thread Nano
MQTT
STM32
RTC
FAL
rt-smart
ESP8266
WIZnet_W5500
ota在线升级
cubemx
I2C
flash
UART
packages_软件包
freemodbus
潘多拉开发板_Pandora
PWM
定时器
BSP
ADC
keil_MDK
socket
中断
编译报错
MicroPython
GD32
Debug
ulog
SDIO总线
msh
rt_mq_消息队列_msg_queue
C++_cpp
SFUD
本月问答贡献
xiaorui
20
个答案
3
次被采纳
Juggernaut
12
个答案
3
次被采纳
踩姑娘的小蘑菇
12
个答案
2
次被采纳
小小李sunny
10
个答案
2
次被采纳
crystal266
4
个答案
2
次被采纳
本月文章贡献
ZVML_9668
4
篇文章
6
次点赞
Lu_盼盼
4
篇文章
3
次点赞
Z_Y
3
篇文章
5
次点赞
ThinkCode
2
篇文章
2
次点赞
oxlm
2
篇文章
1
次点赞
回到
顶部
发布
问题
分享
好友
手机
浏览
扫码手机浏览
投诉
建议
回到
底部