张亚飞 发表于 2017-7-19 15:59:56

在RTT系统上串口怎么使用通过stm32的串口输出信息

在源码中找了一圈找到下面截图里边的内容,但是源码没有说明调用哪个函数输出和接收数据。论坛上都是信号量互斥锁线程的内容,最基本的串口使用都没有。哪位片子上跑着RTT用过串口的麻烦给说一下。







洛千叶 发表于 2017-7-20 08:59:56

在rtconfig.h文件里配置

// <bool name="RT_USING_SERIAL" description="Using Serial" default="true" />
#define RT_USING_SERIAL

/* SECTION: Console options */
#define RT_USING_CONSOLE
/* the buffer size of console*/
#define RT_CONSOLEBUF_SIZE                128
// <string name="RT_CONSOLE_DEVICE_NAME" description="The device name for console" default="uart1" />
#define RT_CONSOLE_DEVICE_NAME          "uart1" //使用串口1作为控制台输出,board.h中要使能串口1

/* SECTION: finsh, a C-Express shell */
#define RT_USING_FINSH
/* Using symbol table */
#define FINSH_USING_SYMTAB
#define FINSH_USING_DESCRIPTION

张亚飞 发表于 2017-7-19 16:41:05

有朋友说用rt_device_write函数,但是函数第一个参数应该指定串口,参数类型是下边那张图,很明显需要初始化,初始化的内容不知道从哪获取。





斜阳__ 发表于 2017-7-20 08:42:46

RTT不需要指定串口。打开gdbserver再打开rtt既可以收到rtt传出来的消息了

张亚飞 发表于 2017-7-20 09:40:52

洛千叶 发表于 2017-7-20 08:59
在rtconfig.h文件里配置

//


感谢,那改完之后调用哪个函数输出信息? 并且函数的参数是什么呢?

张亚飞 发表于 2017-7-20 09:41:09

斜阳__ 发表于 2017-7-20 08:42
RTT不需要指定串口。打开gdbserver再打开rtt既可以收到rtt传出来的消息了

gdbserver 什么东西?

发表于 2017-7-20 10:02:40

这个类似linux的操作,通过设备打开、关闭、写入,读取来实现数据传输。加载驱动时,都写好了指针指定的函数。

张亚飞 发表于 2017-7-20 10:08:57

安 发表于 2017-7-20 10:02
这个类似linux的操作,通过设备打开、关闭、写入,读取来实现数据传输。加载驱动时,都写好了指针指定的函 ...

你对linux也有研究?也就是说我需要自己写函数打开串口1,然后写数据,写完再关闭?

发表于 2017-7-20 10:18:32

只是研究一些简单功能,差不多就是这样操作。

洛千叶 发表于 2017-7-20 10:22:29

张亚飞 发表于 2017-7-20 09:40
感谢,那改完之后调用哪个函数输出信息? 并且函数的参数是什么呢?

rt_kprintf和printf一样使用,就是不能输出浮点
页: [1] 2
查看完整版本: 在RTT系统上串口怎么使用通过stm32的串口输出信息