5.1.2 Передача данных |
Предыдущая Содержание Следующая |
Функции, участвующие в передаче данных, показаны в Распечатке 5.3. Передача начинается с функции my_uart_start_tx(); эта функция вызывается дисциплиной линии для начала передачи. После того, как передан первый символ, остальная часть передачи осуществляется из обработчика прерывания, пока не будут переданы все символы в очереди уровня дисциплины линии. Это реализуется универсальной функцией передачи my_uart_char_tx(). Ядро последовательного порта обеспечивает механизм кругового буфера для хранения символов, которые должны быть переданы. Ядро последовательного порта предоставляет макросы для работы с этим буфером, следующие из которых используются в этом драйвере:
▪uart_circ_empty() используется для проверки, пуст ли буфер. ▪uart_circ_clear() используется для очистки буфера. ▪uart_circ_chars_pending() используется, чтобы узнать число символов, которые ещё не отосланы.
|
Предыдущая Содержание Следующая |