ìÀÄÉ, ËÔÏ Ó ÓÁÂÖÅÍ 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_ ... ëÏÎÅà Ó×ÅÔÁ ÏÔÍÅÎÑÅÔÓÑ !!! ÷ÓÅ ÎÁ ÐÏÉÎÔÏ×ËÕ !!!