cc2530协议栈中读取adc的值,然后使用printf函数进行打印
程序员文章站
2022-06-09 14:43:18
...
在初始化函数中添加一下代码,例如在void SampleApp_Init( uint8 task_id );中添加
第一步包含头文件:
#include <stdio.h>
第二步定义putchar函数:
__near_func int putchar(int c)
{
UTX0IF = 0;
U0DBUF = (char)c;
while(UTX0IF == 0);
return(c);
}
第三步:在初始化函数时配置好串口
void SampleApp_Init( uint8 task_id )函数里添加
halUARTCfg_t uart_config;
uart_config.configured = TRUE;
uart_config.flowControl = FALSE;
uart_config.baudRate = HAL_UART_BR_9600;//这里的波特率是9600
uart_config.callBackFunc = uart_My_Event;
HalUARTOpen (HAL_UART_PORT_0,&uart_config);
void uart_My_Event(uint8 port, uint8 event)
{
uint8 data[128] = {0};
uint16 adc_Buf = 0;
if(port == HAL_UART_PORT_0)
{
if(event &(HAL_UART_RX_FULL|HAL_UART_RX_ABOUT_FULL|HAL_UART_RX_TIMEOUT))
{
HalUARTRead (HAL_UART_PORT_0,data,128);
HalUARTWrite (HAL_UART_PORT_0,data,17);
adc_Buf = HalAdcRead (HAL_ADC_CHANNEL_7,HAL_ADC_RESOLUTION_14);
printf("adc_Buf=%d\r\n",adc_Buf);
}
}
}
发一次就读取一次数据。