Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- .set DDRB_o, 0x4
- .equ PORTB_o, 0x5
- PORTD_o = 0x0b
- DDRD_o = 0x0a
- OCR0A_o = 0x27
- TCCR0B_o = 0x25
- TCCR0A_o = 0x24
- .global main
- waitabit: ldi r19, 41
- wait3: ldi r18, 0xFF
- wait2: ldi r17, 0xFF
- wait1: subi r17, 0x01
- brne wait1
- subi r18, 0x01
- brne wait2
- subi r19, 0x01
- brne wait3
- ret
- main: ldi r16, 0b01000010
- out TCCR0A_o, r16 /* Es prepara OCR0A per comparar y el clock es posa en mode CTC */
- ldi r16, 0b0000011
- out TCCR0B_o, r16 /* Es divideix el clock per 64 */
- ldi r16, 125
- out OCR0A_o, r16 /* Es posa el comparador a 125 */
- ldi r16, 0b01000000
- out DDRD_o, r16 /* Es posa la pota 6 com input */
- /* En total el clock a la pota 6 és: 16000000/64/125 = 2000 */
- loop: call waitabit
- ldi r16, 0b00000000 /* No surt res per la pota 6 */
- out DDRD_o, r16
- call waitbait
- ldi r16, 0b01000000 /* Per la pota 6 surt un clock de 2000 */
- out DDRD_o, r16
- rjmp loop
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement