|
Есть трабл - имеем адук812, имеем некоторый FIFO буфер. Частота адука - 16 МГц, т.е. машинный цикл - 0,75 мкс. Надо пересылать в ФИФО поток данных с АЦП (12 бит, по порядку старший и младший) с максимально возможной скоростью. Вход WR FIFO подключаю, скажем к P3.5 и делаю следующее:
MOV DATA,ADCDATAL
SETB WR
CLR WR
MOV DATA,ADCDATAH
SETB WR
CLR WR
Итого 2+1+1+2+1+1 = 8 тактов. Даже RETI уже не вставишь :( Поэтому приходится выходить из области обработчиков векторов прерываний, что еще приводит к снижению быстродействия, etc... Что можно сделать?
ЗЫ: Предлоджения выкинуть адук не принимаются ;)
E-mail: info@telesys.ru