;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; Soubor: tuu-tuu.asm ; Datum: 20.12.2011 09:33 ; Autor: Marek Nožka, nozka <@t> spseol cz ; Licence: GNU/GPL ; Úloha: 3 pípnutí reproduktoru ; Popis: Akord C-dur ; C1 262 <- T = 3816 us; T/2 = 1908 us ; D1b 277 ; D1 294 ; E1b 311 ; E1 330 <- T = 3030 us; T/2 = 1515 us ; F1 349 ; G1b 370 ; G1 392 <- T = 2551 us; T/2 = 1275 us ; A1b 416 ; A1 440 ; B1b 466 ; B1 494 ; C2 523 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; repro bit P1.7 akord: ; tón C délky 650ms mov R0,#170D periodaC: setb repro call delayC clr repro call delayC djnz R0, periodaC ; tón E délky 650ms mov R0,#214D periodaE: setb repro call delayE clr repro call delayE djnz R0, periodaE ; tón G délky 650ms mov R0,#254D periodaG: setb repro call delayG clr repro call delayG djnz R0, periodaG ; přestávka call del1s ; zase znovu jmp akord delayC: ; START: Wait loop, time: 1903 us ; Clock: 12000.0 kHz (12 / MC) ; Used registers: R7, R6 MOV R6, #005h MOV R7, #0BCh NOP DJNZ R7, $ DJNZ R6, $-5 NOP ; Rest: 0 ; END: Wait loop RET delayE: ; START: Wait loop, time: 1510 us ; Clock: 12000.0 kHz (12 / MC) ; Used registers: R7, R6 MOV R6, #00Dh MOV R7, #038h NOP DJNZ R7, $ DJNZ R6, $-5 ; Rest: 0 ; END: Wait loop RET delayG: ; START: Wait loop, time: 1270 us ; Clock: 12000.0 kHz (12 / MC) ; Used registers: R7, R6 MOV R6, #003h MOV R7, #0D1h NOP DJNZ R7, $ DJNZ R6, $-5 NOP NOP ; Rest: 0 ; END: Wait loop RET include delay12MHz.inc END