Цитата(beer_warrior @ Jul 18 2006, 12:53)

Передача.
Делается буфер, в него кладуться данные.В хх_TPR записыватся указатель на буфер, в хх_TCR его размер. Дальше срабатывает автомат.По достижении 0 хх_TCR выставляется флажок ENDTX.
Его можно поллить или запускать прерывание. По его взводу мы принимаем решение о передаче новой посылки или об останове.
Если передаем дальше, заново инитим указатель и размер.
Это для случая с использованием одного буфера.
Для двух последовательность действий будет следующая:
1. В хх_TPR и хх_TCR записываем адрес и размер первого буфера, в хх_TNPR и xx_TNCR - второго.
2. Во время передачи одного буфера заполняем второй данными
3. По прерыванию ENDTX обновляем хх_TNPR и xx_TNCR, возвращаемя к п.2