串口的使用–蓝牙模块

串口的使用–蓝牙模块

@(MSP432P401R)

串口的配置

在这里插入图片描述

基本默认即可


串口的API的使用

参数

在这里插入图片描述

  1. UART_Mode即串口模式
    在这里插入图片描述

  2. readTimeout和writeTimeout即读超时和写超时时间(阻塞模式下)

  3. readCakkback和writeCallback即读回调和写回调函数

  4. readReturnMode即读取时的返回模式
    在这里插入图片描述

  5. readDataMode和writeDataMode即读取和写入的数据模式
    在这里插入图片描述

  6. readEcho即读回显
    在这里插入图片描述

  7. baudRate即波特率

  8. dataLength即数据的位数
    在这里插入图片描述

  9. stopBits即停止位
    在这里插入图片描述

  10. parityType即奇偶校验位类型
    在这里插入图片描述

  11. custom即自定义参数

函数表(略)
全局配置(略)
功能函数

在这里插入图片描述

重要函数
  1. 写函数(一次)
    int_fast32_t UART_write(UART_Handle handle,const void * buffer,size_t size

在这里插入图片描述

  1. 读函数(一次)
    int_fast32_t UART_read(UART_Handle handle,void * buffer,size_t size )

在这里插入图片描述

文档链接:file:///D:/MSP%20SDK/simplelink_msp432p4_sdk_3_40_01_02/docs/tidrivers/doxygen/html/_u_a_r_t_8h.html#a1036c2d5258ff70e9afe6cbfc326544f


具体代码说明

  1. 头文件
#include <stdint.h>
/* Driver Header files */
#include <ti/drivers/UART.h>
#include <ti/drivers/apps/LED.h>
/* Driver Configuration */
#include "ti_drivers_config.h"
  1. 主线程函数
void *mainThread(void *arg0)
{
    // One-time initialization of UART driver
    UART_init();
    // Initialize UART parameters
    UART_Params params;
    UART_Params_init(&params);
    params.baudRate = 115200;
    params.readMode = UART_MODE_CALLBACK;
    params.writeMode = UART_MODE_CALLBACK;
    //params.readTimeout = UART_WAIT_FOREVER;
    //params.writeTimeout = UART_WAIT_FOREVER;
    params.readCallback=User_ReadCallback;
    params.writeCallback=User_WriteCallback;
    params.writeDataMode=UART_DATA_BINARY;
    params.readDataMode=UART_DATA_BINARY;
    params.dataLength=UART_LEN_8;
    params.stopBits=UART_STOP_ONE;
    params.parityType=UART_PAR_NONE;
    for(i=0;i<100;i++)
    {
        Transmit_Databuf[i]='a';
    }
    // Open the UART
    UART_Handle uart;
    uart = UART_open(CONFIG_UART_0, &params);
    // Read from the UART
    UART_read(uart,Receive_Databuf,10);
    // Write to the UART
    UART_write(uart,Transmit_Databuf,100);
    // Close the UART
    //UART_readCancel(uart);
    //UART_writeCancel(uart);
    //UART_close(uart);
    return (NULL);
}
  1. 中断回调函数
void User_ReadCallback(UART_Handle handle, void *buf, size_t count)
{
     n++;
}

void User_WriteCallback(UART_Handle handle, void *buf, size_t count)
{
     m++;
}
  1. 变量定义和函数声明
uint8_t Transmit_Databuf[100];
uint8_t Receive_Databuf[10];
uint8_t i,n,m;
void User_ReadCallback(UART_Handle handle, void *buf, size_t count);
void User_WriteCallback(UART_Handle handle, void *buf, size_t count);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值