实验步骤 1、编写并添加串口驱动 1)写一个串口驱动GUA_Uart.c(存放在“……\ble_cc26xx_2_01_00_44423\Projects\ble\SimpleBLEPeripheral\CC26xx\Source\Application\GUA”路径下)
[cpp] view plain copy
- //******************************************************************************
- //name: GUA_Uart.c
- //introduce: 香瓜的串口驱动
- //author: 甜甜的大香瓜
- //email: 897503845@qq.com
- //QQ group 香瓜BLE之CC2640(557278427)
- //changetime: 2017.03.24
- //******************************************************************************
- #include
- #include
- #include
- #include
-
- #include
- #include
- #include "hci_tl.h"
- #include "../../npi/inc/npi_tl_uart.h"
-
- #include "GUA_Uart.h"
-
- /*********************宏定义************************/
- #ifndef U8
- typedef unsigned char U8;
- #endif
-
- #ifndef U16
- typedef unsigned short U16;
- #endif
-
- /*********************内部变量************************/
- static GUA_8 sbGUA_RxBuf[256];
- static GUA_8 sbGUA_TxBuf[256];
-
- /*********************内部函数************************/
- static void GUA_UART_CallBack(GUA_U16 rxLen, GUA_U16 txLen);
-
- //******************************************************************************
- //name: GUA_UART_WriteTransport
- //introduce: 香瓜的串口驱动写函数
- //parameter: str:发送的数据
- // len:数据长度
- //return: none
- //author: 甜甜的大香瓜
- //email: 897503845@qq.com
- //QQ group 香瓜BLE之CC2640(557278427)
- //changetime: 2017.03.24
- //******************************************************************************
- void GUA_UART_WriteTransport(GUA_U8 *pGUA_Str, GUA_U8 nGUA_Len)
- {
- memset(sbGUA_TxBuf, 0, sizeof(sbGUA_TxBuf));
- memcpy(sbGUA_TxBuf, pGUA_Str, nGUA_Len);
- NPITLUART_writeTransport(nGUA_Len);
- }
-
- //******************************************************************************
- //name: GUA_UART_CallBack
- //introduce: 香瓜的串口驱动回调函数
- //parameter: rxLen:接收数据长度
- // txLen:发送数据长度
- //return: none
- //author: 甜甜的大香瓜
- //email: 897503845@qq.com
- //QQ group 香瓜BLE之CC2640(557278427)
- //changetime: 2017.03.24
- //******************************************************************************
- static void GUA_UART_CallBack(GUA_U16 nGUA_RxLen, GUA_U16 nGUA_TxLen)
- {
- //如果有接收数据,则处理
- if(nGUA_RxLen > 0)
- {
- //将接收到的数据发出去
- sprintf(sbGUA_TxBuf, sbGUA_RxBuf, nGUA_RxLen);
- NPITLUART_writeTransport(nGUA_RxLen);
- }
- }
-
- //******************************************************************************
- //name: GUA_UART_WriteTransport
- //introduce: 香瓜的串口驱动写函数
- //parameter: str:发送的数据
- // len:数据长度
- //return: none
- //author: 甜甜的大香瓜
- //email: 897503845@qq.com
- //QQ group 香瓜BLE之CC2640(557278427)
- //changetime: 2017.03.24
- //******************************************************************************
- void GUA_UART_Init(void)
- {
- //初始化
- NPITLUART_initializeTransport(sbGUA_RxBuf, sbGUA_TxBuf, GUA_UART_CallBack);
-
- //打印Hello GUA
- sprintf(sbGUA_TxBuf, "Hello GUA\n");
- NPITLUART_writeTransport(strlen(sbGUA_TxBuf));
- }
2)写一个串口驱动头文件GUA_Uart.h(存放在“……\ble_cc26xx_2_01_00_44423\Projects\ble\SimpleBLEPeripheral\CC26xx\Source\Application\GUA”路径下)
[cpp] view plain copy
- //******************************************************************************
- //name: GUA_Uart.h
- //introduce: 香瓜的串口驱动的头文件
- //author: 甜甜的大香瓜
- //email: 897503845@qq.com
- //QQ group 香瓜BLE之CC2640(557278427)
- //changetime: 2017.03.24
- //******************************************************************************
- #ifndef _GUA_UART_H_
- #define _GUA_UART_H_
-
- /*********************宏定义************************/
- //类型宏
- #ifndef GUA_U8
- typedef unsigned char GUA_U8;
- #endif
-
- #ifndef GUA_8
- typedef signed char GUA_8;
- #endif
-
- #ifndef GUA_U16
- typedef unsigned short GUA_U16;
- #endif
-
- #ifndef GUA_16
- typedef signed short GUA_16;
- #endif
-
- #ifndef GUA_U32
- typedef unsigned long GUA_U32;
- #endif
-
- #ifndef GUA_32
- typedef signed long GUA_32;
- #endif
-
- #ifndef GUA_U64
- typedef unsigned long long GUA_U64;
- #endif
-
- #ifndef GUA_64
- typedef signed long long GUA_64;
- #endif
-
- /*********************函数声明************************/
- extern void GUA_UART_Init(void);
- extern void GUA_UART_WriteTransport(GUA_U8 *pGUA_Str, GUA_U8 nGUA_Len);
-
- #endif
|