微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI Zigbee设计交流 > zigbee cc2530 bootloader serial boot

zigbee cc2530 bootloader serial boot

时间:10-02 整理:3721RD 点击:

when i use cc2530 bootloader , i ....发现了一个问题不是很理解。

我们开始是先是初始化UART ISR

static void sblInit(void)
{
halUARTCfg_t uartConfig;
/* This is in place of calling HalDmaInit() which would require init of the other 4 DMA
* descriptors in addition to just Channel 0.
*/
HAL_DMA_SET_ADDR_DESC0(&dmaCh0);

HalUARTInitISR();
uartConfig.configured = TRUE;
uartConfig.baudRate = HAL_UART_BR_115200;
uartConfig.flowControl = FALSE;
uartConfig.flowControlThreshold = 0; // CC2530 by #define - see hal_board_cfg.h
uartConfig.rx.maxBufSize = 0; // CC2530 by #define - see hal_board_cfg.h
uartConfig.tx.maxBufSize = 0; // CC2530 by #define - see hal_board_cfg.h
uartConfig.idleTimeout = 0; // CC2530 by #define - see hal_board_cfg.h
uartConfig.intEnable = TRUE;
uartConfig.callBackFunc = NULL;
HalUARTOpenISR(&uartConfig);

SB_INIT_LEDS();
}

然后比如我们要send 一个 halo 到串口,SB_TX("halo", 5);,此函数调用HalUARTWriteISR(uint8 *buf, uint16 len);把"halo"写到isrCfg.txBuf[]里,然后HalUARTPollISR()的时候,调用halUartTxIsr();把isrCfg.txBuf[]里的内容一个个写到UxDBUF里。so........ 我并没有看到有定义#pragma vector = UTX0_VECTOR  __interrupt void halUart0TxIsr(void){}的地方。还是我对中断理解的有误。

发送直接拷贝到寄存器,不需要中断处理函数。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top