RT-Thread学习之路(二)

RT-Thread学习之路--裸串口程序,还是采用STM32F103RC的正点原子mini板

串口使用步骤:

这里我采用的是串口2做实验

(一)扫描发送数据

首先,需要在ENV选项里面,把串口2的选项打开

其次,查找串口设备:serial = rt_device_find("uart2");   serial为自己定义的串口句柄,函数rt_device_find为查找串口,获得串口的配置信息。

再次,修改参数配置:

    config.baud_rate = BAUD_RATE_9600;        //修改波特率为 9600
    config.data_bits = DATA_BITS_8;           //数据位 8
    config.stop_bits = STOP_BITS_1;           //停止位 1
    config.bufsz     = 128;                   //修改缓冲区 buff size 为 128
    config.parity    = PARITY_NONE;           //无奇偶校验位

config结构体变量是自己定义的,一开始的时候可以设置为默认数据 RT_SERIAL_CONFIG_DEFAULT;该默认数据是115200,8,1,64,NO,可以在程序中找到默认定义:

#define RT_SERIAL_CONFIG_DEFAULT           \
{                                          \
    BAUD_RATE_115200, /* 115200 bits/s */  \
    DATA_BITS_8,      /* 8 databits */     \
    STOP_BITS_1,      /* 1 stopbit */      \
    PARITY_NONE,      /* No parity  */     \
    BIT_ORDER_LSB,    /* LSB first sent */ \
    NRZ_NORMAL,       /* Normal mode */    \
    RT_SERIAL_RB_BUFSZ, /* Buffer size */  \
    0                                      \
}

定义的config结构体变量就是可以根据自己需要进行设置。

然后打开串口设备:

rt_device_open(serial, RT_DEVICE_FLAG_INT_RX);  这个函数第一个参数为自己定义的串口句柄,第二个参数与定义的模式RT_DEVICE_FLAG_INT_RX--中断接收及轮询发送模式打开串口设备

这样, 自己写一个回调函数就可以进行数据收发了。

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值