工具/软件:TI-RTOS
您好!
我在我的应用中使用两个线程。
一个线程用于根据 IO 在 UART1上传输数据。
另一个线程具有较高的优先级、用于从外部器件接收 UART2上的数据并通过 UART1进行传输。
我的代码如下所示:
void * Thread2 (void * arg0)
{
while (1){
UART_READ (uart2、&INPUT、1);
UART_WRITE (uart1、&INPUT、1);
}
}
void * Thread1 (void * arg0)
{
while (1){
开关(COND) //根据开关位置
{
UART_WRITE (uart1、&INPUT、1);
}
}
}
在这里、如果我操作 IO、则 Thread2在该操作之后不会执行。 我想、它被震撼了、因为 uart1已经在其他线程中打开以进行写入操作。
是否有人可以解释如何使"UART_write"在两个线程中都工作?
我尝试使用信标、但我没有成功。 我在线程2中的 uatr_write 之后放置了"semaphore_post"
和"Semaphore_pend"之后的线程1中的开关条件。
此致
Kalyan。
