资源简介
串口将收到的数据通过无线发送出去,将收到的无线数据通过串口发送出去.
代码片段和文件信息
#include “my_uart.h“
extern uint8 uartIsReceiving;
/*************************************************************************************************************
* 文件名: uart.c
* 功能: CC2530 串口相关函数
* 创建时间: 2013-06-07 21:33
* 最后修改时间:2013-06-07
* 详细: 串口相关函数串口最大时钟为系统时钟的1/16
*************************************************************************************************************/
#include “my_uart.h“
#define BIT0 0X01
#define BIT1 0X02
#define BIT2 0X04
#define BIT3 0X08
#define BIT4 0X10
#define BIT5 0X20
#define BIT6 0X40
#define BIT7 0X80
typedef struct
{
// The head or tail is updated by the Tx or Rx ISR respectively when not polled.
uint16 bufferHead;
uint16 bufferTail;
uint8 rxBufIsFull;
uint16 maxBufSize;
uint8 *pRxBuffer;
} halUARTBufControl_t;
halUARTBufControl_t halUARTRxControl[2];
//static UartRx_TypeDef UART_RX[2];
uint8 CommRxBuff0[128];
uint8 CommRxBuff1[128];
static const uint8 BAUD_M[11] = {59 59 59 216 59 216 59 216 59 216 216}; //32MHZ系统时钟对应的分频器小数部分
static const uint8 BAUD_E[11] = {6 7 8 8 9 9 10 10 11 11 12}; //32MHZ系统时钟对应的分频器指数部分
/***********************************************************************************
* @函数名 HalUARTInit(HAL_UART_PORT port USART_BAUD Baud FunctionalState RxIntEn)
*
* @描述 串口初始化
*
* @参数 port:通道选择HAL_UART_PORT_0HAL_UART_PORT_1
* Baud:波特率控制见USART_BAUD
* RxIntEn:ENABLE:使能串口接收中断
*
* @返回值 无
************************************************************************************/
void HalUARTInit(HAL_UART_PORT port USART_BAUD Baud FunctionalState RxIntEn)
{
switch(port)
{
case HAL_UART_PORT_0:
{
U0CSR = BIT7 + BIT6; //UART模式使能接收
U0UCR = BIT1; //无流控无奇偶校验8bit1个停止位停止位高电平起始低电平
U0GCR = BAUD_E[Baud]; //波特率分频器指数部分
U0BAUD = BAUD_M[Baud]; //波特率分频器小数部分
P0SEL |= BIT2 + BIT3; //P0.3 TXDP0.2 RXD
IEN2 &= ~(1 << 3); //关闭发送中断
URX0IF = 0; //清除串口接收中断标志
UTX0IF = 0; //清除串口发送中断标志
URX0IE = (RxIntEn == ENABLE) ? 1 : 0; //使能串口接收中断
UART_SetRxBuff(port CommRxBuff0 128); //初始化串口缓冲区
}break;
case HAL_UART_PORT_1:
{
PERCFG |= 0X01;
U1CSR = BIT7 + BIT6; //UART模式使能接收
U1UCR = BIT1; //无流控无奇偶校验8bit1个停止位停止位高电平起始低电平
U1GCR = BAUD_E[Baud]; //波特率分频器指数部分
U1BAUD = BAUD_M[Baud]; //波特率分频器小数部分
P0SEL |= BIT4 + BIT5; //P0.5 TXDP0.4 RXD
URX1IF = 0; //清除串口接收中断标志
UTX1IF = 0; //清除串口发送中断标志
URX1IE = (RxIntEn == ENABLE) ? 1 : 0; //使能串口接收中断
UART_SetRxBuff(port CommRxBuff1 128); //初始化串口缓冲区
}break;
default : break;
}
}
/************************************************************************************
* @函数名 void UART_SendData(HAL_UART_PORT port uint8 *pbuff uint16 len)
*
* @描述 串口发送函数.
*
* @参数 port:通道选择HAL_UART_PORT_0HAL_UART_PORT_1
* pbuff:数据缓冲区
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 20687 2015-04-17 11:50 串口透传程序\components\basicrf\basic_rf.c
文件 5218 2015-04-17 11:50 串口透传程序\components\basicrf\basic_rf.h
文件 4044 2015-04-17 11:50 串口透传程序\components\basicrf\basic_rf_security.c
文件 2887 2015-04-17 11:50 串口透传程序\components\basicrf\basic_rf_security.h
文件 1602 2015-04-17 11:50 串口透传程序\components\basicrf\hal_pkt.h
文件 16709 2015-04-17 11:50 串口透传程序\components\basicrf\hal_rf.c
文件 4940 2015-04-17 11:50 串口透传程序\components\basicrf\hal_rf.h
文件 6227 2015-04-17 11:50 串口透传程序\components\common\cc8051\hal_cc8051.h
文件 3949 2015-04-17 11:50 串口透传程序\components\common\clock.h
文件 9144 2015-04-17 11:50 串口透传程序\components\common\hal_adc.c
文件 6178 2015-04-17 11:50 串口透传程序\components\common\hal_adc.h
文件 5654 2015-04-17 11:50 串口透传程序\components\common\hal_defs.h
文件 5541 2015-04-17 11:50 串口透传程序\components\common\hal_dma.c
文件 12790 2015-04-17 11:50 串口透传程序\components\common\hal_dma.h
文件 8577 2015-04-17 11:50 串口透传程序\components\common\hal_drivers.c
文件 4701 2015-04-17 11:50 串口透传程序\components\common\hal_drivers.h
文件 6703 2015-04-17 11:50 串口透传程序\components\common\hal_flash.c
文件 4967 2015-04-17 11:50 串口透传程序\components\common\hal_flash.h
文件 3960 2015-04-17 11:50 串口透传程序\components\common\hal_int.c
文件 4434 2015-04-17 11:50 串口透传程序\components\common\hal_int.h
文件 6007 2015-04-17 11:50 串口透传程序\components\common\hal_mcu.c
文件 9043 2015-04-17 11:50 串口透传程序\components\common\hal_mcu.h
文件 11172 2015-04-17 11:50 串口透传程序\components\common\hal_timer.c
文件 8473 2015-04-17 11:50 串口透传程序\components\common\hal_timer.h
文件 4109 2015-04-17 11:50 串口透传程序\components\common\hal_types.h
文件 8766 2015-04-17 11:50 串口透传程序\components\common\hal_uart.c
文件 1303 2015-04-17 11:50 串口透传程序\components\common\hal_uart.h
文件 5745 2015-04-17 11:50 串口透传程序\components\common\util.c
文件 3386 2015-04-17 11:50 串口透传程序\components\common\util.h
文件 16271 2015-04-17 11:50 串口透传程序\components\common\_hal_uart_isr.c
............此处省略88个文件信息
- 上一篇:WGS84坐标转换经纬度
- 下一篇:winSMITH v2.0.rar
评论
共有 条评论