Команда сброса для последовательного терминала через UART

Я отправляю cmd_clr_scr[] = { 27, 91, 50, 74, 27, 91, 72, 0 }; через UART, чтобы очистить экран и переместить курсор в верхний левый угол экрана на моем последовательном терминале (Putty).

У меня есть два драйвера для UART, один блокирующий, а другой неблокирующий. блокируя, я имею в виду, что UART ISR не возвращается, пока не будут переданы все символы; в то время как в неблокирующем драйвере UART ISR возвращается, как только он отправляет первый байт, следующий байт отправляется при прерывании передающей стороны и так далее.

Проблема в том, что: отправка cmd_clr_scr с помощью драйвера блокировки делает то, что он должен делать, но использование драйвера без блокировки только перемещает курсор в верхний левый угол экрана без очистки текста. Я дважды проверил драйверы, проходя через них, и они оба работают одинаково, то есть отправляют одинаковые символы в одинаковом порядке.

Есть ли какие-либо предостережения относительно использования командной строки clear?

Какие-нибудь мысли?

1 ответ

В итоге я использую строки, которые я нашел здесь, вместо строки, которую я упомянул в вопросе. Я также обнаружил ошибку в драйвере, но это, вероятно, не было проблемой, поскольку проблема была решена еще до ее обнаружения.

Другие вопросы по тегам