微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > 射频无线通信设计 > ti-RTOS例程,串口例程,无法打印串口,求指教

ti-RTOS例程,串口例程,无法打印串口,求指教

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

你好,这是我写的一段UART的代码,

/*串口声明*/
char input;
UART_Handle uart;
UART_Params uartParams;

static PIN_State ledPinState;
const char echoPrompt[]="\fEchoing characters:\r\n";

PIN_Config ledPinTable[] = {
Board_LED1 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,
Board_LED2 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,
PIN_TERMINATE
};
void echoFxn(UArg a0,UArg a1)
{

while(1)
{
UART_read(uart, &input, 1);
UART_write(uart, &input, 1);
}
}
int main(void)
{


/**************************GPIO灯********************************************/
PIN_Handle ledPinHandle;
Board_initGeneral();
ledPinHandle = PIN_open(&ledPinState, ledPinTable);
PIN_setOutputValue(ledPinHandle, Board_LED1, 1);

/******************************任务初始化*************************************/
Task_Params_init(&taskParams);
taskParams.stackSize=sizeof(task0Stack);
taskParams.stack=&task0Stack;
Task_construct(&task0Struct,(Task_FuncPtr)echoFxn,&taskParams,NULL);

/*************************串口***********************************************/

UART_init(); //USart ini
UART_Params_init(&uartParams); //串口配置
uartParams.writeDataMode = UART_DATA_BINARY; //写数据模式
uartParams.readDataMode = UART_DATA_BINARY; //读数据模式
uartParams.readReturnMode = UART_RETURN_FULL; //返回模式
uartParams.readEcho = UART_ECHO_OFF;
uartParams.baudRate = 9600; //波特率
uartParams.stopBits=UART_STOP_ONE;
uartParams.parityType=UART_PAR_NONE;
uart = UART_open(Board_UART0, &uartParams); //打开串口

UART_write(uart, echoPrompt, sizeof(echoPrompt));
UART_read(uart, &input, 1);
UART_write(uart, &input, 1);
// System_flush();


// /* This example has logging and many other debug capabilities enabled */
// System_printf("This example does not attempt to minimize code or data "
// "footprint\n");
// System_flush();
//
// System_printf("Starting the UART Echo example\nSystem provider is set to "
// "SysMin. Halt the target to view any SysMin contents in "
// "ROV.\n");
// /* SysMin will only print to the console when you call flush or exit */
// System_flush();

/* Start BIOS */
BIOS_start();

return (0);
}

在TI-RTOS例程基础上改了一点,编译没有报错,单步调试时,可以执行UART_write(uart, echoPrompt, sizeof(echoPrompt));但是却无法执行UART_write(uart, &input, 1); 请问是什么问题啊,无法打印出来,求指教!

求指教啊

求指教

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

网站地图

Top