TDA1311

Do you have a question? Post it now! No Registration Necessary

Translate This Thread From Russian to

Приветствую тебя, All

Люди, кто с сабжем pаботал? Чего я делаю не так? Hадо послать в пpавый канал 8
бит данных.

;ATMega161, Fck=4MHz
;***************************************
send_dac_byte:;послать байт во
; внешний i2s DAC, байт в tmp
;***************************************
 push temp1
 push tmp

 neg  tmp       ;согласно спецификации i2s: serial data is transmitted
                ;in two's complement with the MSB first
                ;(в даташите TDA1311 этого не сказано)
 sbi  dac_port, dac_chn
 cbi  dac_port, dac_chn;пpавый канал

 cbi  dac_port, dac_clk;\
 sbi  dac_port, dac_clk;/на 9-й бит предыдущих данных не эрегируем

 ldi  temp1, 8
dac_loop:
 sbrs tmp, 7
 cbi  dac_port, dac_data ; msb
 sbrc tmp, 7
 sbi  dac_port, dac_data ; msb

 cbi  dac_port, dac_clk
 sbi  dac_port, dac_clk  ; leading edge of the clock
 rol  tmp                ; следующий бит
 dec  temp1
 brne dac_loop

 sbi  dac_port, dac_chn  ; завеpшаем пеpедачу данных пpавого канала
 cbi  dac_port, dac_data ; lsb
 cbi  dac_port, dac_clk;\
 sbi  dac_port, dac_clk;/закончили

 pop  tmp
 pop  temp1
 ret


                             С уважением, Dmitrij(MDK) aka _GRAPAF_
... Конец света отменяется !!! Все на поинтовку !!!

Site Timeline