qqtfh 发表于 2013-1-20 22:58:49

RT-Thread在STM32F103运行时,没有输出log,怎么回事?

如题,RT-Thread在STM32F103运行时,按要求作了移植,LED指示灯亮,但是串口没有输出RT-Therad的log。串口Finsh命令,能正常输出。MDK虚拟彷真也有输出。求解答!

戒指320 发表于 2013-1-22 17:48:53

Lavion 发表于 2013-1-22 17:55:41

好像要根据具体的USART要更改,然后也要修改printf映射的函数,如果使用接受,还要修改中断,相关的东西,

Stargazer-1986 发表于 2013-1-22 20:33:53

在rtthread输出logo的时候,串口是不是还没有初始化啊?或者还没有把串口选择成FINSH设备?

qqtfh 发表于 2013-1-23 08:15:49

戒指320 发表于 2013-1-22 17:48 static/image/common/back.gif
官方bsp包中的工程,直接编译就可以正常输出啊

我用的是正点原子的板,芯片是STM32F103RBT6,与bsp包中STM32F10X所用的芯片有区别,因此按照RT-Thread的官网介绍作了如下的修改:
修改board.h里的SRAM大小(官方的默认是64K):
1.修改board.h里的SRAM大小(官方的默认是64K):
#define STM32_SRAM_SIZE         20
#define STM32_SRAM_END          (0x20000000 + STM32_SRAM_SIZE * 1024)
2.修改led引脚;打开led.c文件:
#else#define led1_rcc            RCC_APB2Periph_GPIOA
#define led1_gpio                   GPIOA
#define led1_pin                  (GPIO_Pin_8)
#define led2_rcc                  RCC_APB2Periph_GPIOD
#define led2_gpio                   GPIOD
#define led2_pin                  (GPIO_Pin_2)

qqtfh 发表于 2013-1-23 08:18:46

Stargazer-1986 发表于 2013-1-22 20:33 static/image/common/back.gif
在rtthread输出logo的时候,串口是不是还没有初始化啊?或者还没有把串口选择成FINSH设备? ...

使用的是RT-Thread 1.1.0/bsp/stm32f10x中的工程,并作了如下修改:
我用的是正点原子的板,芯片是STM32F103RBT6,与bsp包中STM32F10X所用的芯片有区别,因此按照RT-Thread的官网介绍作了如下的修改:
修改board.h里的SRAM大小(官方的默认是64K):
1.修改board.h里的SRAM大小(官方的默认是64K):
#define STM32_SRAM_SIZE         20
#define STM32_SRAM_END          (0x20000000 + STM32_SRAM_SIZE * 1024)
2.修改led引脚;打开led.c文件:
#else#define led1_rcc            RCC_APB2Periph_GPIOA
#define led1_gpio                   GPIOA
#define led1_pin                  (GPIO_Pin_8)
#define led2_rcc                  RCC_APB2Periph_GPIOD
#define led2_gpio                   GPIOD
#define led2_pin                  (GPIO_Pin_2)

初学RT-Therad,不知道还有哪些参数需要修改,求指点!

Stargazer-1986 发表于 2013-1-23 08:42:51

qqtfh 发表于 2013-1-23 08:18 static/image/common/back.gif
使用的是RT-Thread 1.1.0/bsp/stm32f10x中的工程,并作了如下修改:
我用的是正点原子的板,芯片是STM32F ...

如果单单修改这些内容,估计也不会有太大的问题...
现在还是找不到原因的话,单步调试一下吧...

qqtfh 发表于 2013-1-23 09:14:40

Stargazer-1986 发表于 2013-1-23 08:42 static/image/common/back.gif
如果单单修改这些内容,估计也不会有太大的问题...
现在还是找不到原因的话,单步调试一下吧... ...

使用j-link单步调试时,能正常输出。但是无j-link时没输出。

戒指320 发表于 2013-1-23 22:47:50

dingxmhan 发表于 2013-1-24 00:28:00

目测打印logo的那个函数被斜杠掉了

qqtfh 发表于 2013-1-24 08:13:20

戒指320 发表于 2013-1-23 22:47 static/image/common/back.gif
你的串口接的是串口几?默认是uart1

是的,uart1.

qqtfh 发表于 2013-1-24 08:14:30

dingxmhan 发表于 2013-1-24 00:28 static/image/common/back.gif
目测打印logo的那个函数被斜杠掉了

哪个文件有打印logo的函数的定义项??

dingxmhan 发表于 2013-1-24 12:30:11

qqtfh 发表于 2013-1-24 08:14 static/image/common/back.gif
哪个文件有打印logo的函数的定义项??

rt_show_version();

qqtfh 发表于 2013-1-24 17:25:40

dingxmhan 发表于 2013-1-24 12:30 static/image/common/back.gif
rt_show_version();

没有注释这个函数。

dingxmhan 发表于 2013-1-24 19:41:18

qqtfh 发表于 2013-1-24 17:25 static/image/common/back.gif
没有注释这个函数。

那有可能是电源问题哈,你串口是不是用了MAX232之类的,如果有的话,启动要延时,否则MAX232的boost还没用启动你的串口就打印了,然后就出错了

doushinide 发表于 2013-1-29 20:50:06

好想串口输出打印操作系统信息 版本号什么的 要申请一个单独的线程吧

hotwind 发表于 2013-2-27 08:33:04

问题楼主解决了没

qqtfh 发表于 2013-2-27 08:34:23

hotwind 发表于 2013-2-27 08:33 static/image/common/back.gif
问题楼主解决了没

木有~~
页: [1]
查看完整版本: RT-Thread在STM32F103运行时,没有输出log,怎么回事?