реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
juvf
сообщение Oct 11 2016, 08:18
Сообщение #1


Профессионал
*****

Группа: Свой
Сообщений: 1 261
Регистрация: 14-05-09
Из: Челябинск
Пользователь №: 49 045



уарт настроен в блокирующем режиме. UART_write() блокирует задачу на время копирования данных в буфер обмена FIFO UART. Мне нужно заблокировать на время передачи всех данных, т.е. на то время, пока все данные не вылезут с ноги процессора. Можно после UART_write() ждать какое-нибудь событие по окончании передачи. Но какое? Как в TI-RTOS отследить окончание передачи данных из буфера FIFO UART?
Go to the top of the page
 
+Quote Post
gosha
сообщение Oct 18 2016, 10:52
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 216
Регистрация: 15-06-04
Из: Менделеево
Пользователь №: 30



QUOTE (juvf @ Oct 11 2016, 11:18) *
уарт настроен в блокирующем режиме. UART_write() блокирует задачу на время копирования данных в буфер обмена FIFO UART. Мне нужно заблокировать на время передачи всех данных, т.е. на то время, пока все данные не вылезут с ноги процессора. Можно после UART_write() ждать какое-нибудь событие по окончании передачи. Но какое? Как в TI-RTOS отследить окончание передачи данных из буфера FIFO UART?


Есть исходники драйвера uart ?
Легче всего посмотреть исходник ф--ии write(). Есть ли там жидание прерывания "буфер отправки пуст"
Или исходник драйвера в студию.

Go to the top of the page
 
+Quote Post
x893
сообщение Oct 18 2016, 11:39
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 333
Регистрация: 27-10-08
Из: Планета Земля
Пользователь №: 41 226



Да не проблема

Int UART_write(UART_Handle handle, const Char *buffer, UInt size)
{
Assert_isTrue(handle != NULL, NULL);

return (handle->fxnTablePtr->writeFxn(handle, buffer, size));
}
Go to the top of the page
 
+Quote Post
gosha
сообщение Oct 18 2016, 13:26
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 216
Регистрация: 15-06-04
Из: Менделеево
Пользователь №: 30



QUOTE (x893 @ Oct 18 2016, 14:39) *
Да не проблема

Int UART_write(UART_Handle handle, const Char *buffer, UInt size)
{
Assert_isTrue(handle != NULL, NULL);

return (handle->fxnTablePtr->writeFxn(handle, buffer, size));
}


Исходники ф-ии, в студию на которую указывает handle->fxnTablePtr->writeFxn()
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 10th July 2025 - 03:38
Рейтинг@Mail.ru


Страница сгенерированна за 0.01365 секунд с 7
ELECTRONIX ©2004-2016