Hello Rifkat!
Thursday May 13 2004 09:27, you wrote to me:
SS>> Hе уверен, что это прокатит с пиками (не работал), но для 51 я SS>> такой трюк: перед передачей последнего байта переключаю uart в 9- SS>> // прерывание после вывода последнего байта прийдет RA> Вот здесь и проблема - нет в пиках прерывания по выводу байта - только RA> по загрузке в буфер передатчика ;-)
Hу наверное не по загрузке, а скорее по "выгрузке" из буфера в сдвиговый регистр ;)
Я посмотрел немного доки по пикам. Если рассматривать момент формирования последнего прерывания относительно выхода uart, то отличие от 51 в том, что, последнее прерывание приходит в начале стопового бита _предпоследнего_ выдвигаемого байта.
Тогда напрашивается такое решение: последний байт пакета выдавать, как я уже говорил, в режиме 9-бит (чтобы не резать стоп-бит), а потом еще выдать дополнительный фиктивный байт, только для того чтобы получить прерывание в нужном месте, отключить там драйвер 485 и дальше или тормозить uart или не трогать и дать ему отмолотить фиктивный байт в пустоту.
RA> -- RA> Rifkat < Team /Grave\ >
Best regards, Sergey.