Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- .include "tn13Adef.inc"
- .def temp = R16
- .cseg
- .org 0
- ldi temp, RAMEND
- out SPL, temp
- ldi temp, 0x80
- out ACSR, temp
- cbi DDRB, 2 ; knopka uvelicheniya yarkosti
- cbi DDRB, 3 ; knopka umenscheniya yarkosti
- cbi DDRB, 4 ; knopka VKLYUCHENIYA VYKLYUCHENIYA
- sbi DDRB, 0
- ldi temp, 0b00011100 ;
- out PORTB, temp
- ; ZDES PRONSHODIT TOLKO VKLYUCHENIE
- main0: rcall WG
- rcall WG
- rcall WG
- rcall WG
- rcall WG
- rcall WG
- main: in temp, PINB
- sbrc temp, 4
- rjmp main
- rcall WG ;zaderzha
- main2: in temp, PINB
- sbrs temp, 4
- rjmp main2
- rjmp VK
- ; VKLYUCHENIE TAIMERA
- VK: ldi temp,(1<<COM0A1)|(1<<COM0A0)|(0<<COM0B1)|(0<<COM0B0)|(1<<WGM01)|(1<<WGM00)
- out TCCR0A, temp
- ldi temp,(0<<FOC0A)|(0<<FOC0B)|(0<<WGM02)|(0<<CS02)|(0<<CS01)|(1<<CS00)
- out TCCR0B, temp
- rjmp B6
- ;UPRAVLENIE YARKOSTYU
- B0: rcall WG ; caaa??ea ?oia ia auno?i oaaee?eaaeinu
- ldi temp, 0xFA
- out OCR0A, temp
- C0: in temp, PINB
- sbrs temp, 4 ; i?iione neaa eiiaiau anee eiiiea aee??aiey ia ia?aoa
- rjmp T0
- Z0: sbrs temp, 2 ; esli knopka2 uvelicheniya NE nazhata to propusk komandy
- rjmp K0
- rjmp C0
- T0: rcall WG
- J0: in temp, PINB
- sbrc temp, 4
- rjmp OFF
- rjmp J0
- K0: rcall WG
- in temp, PINB
- sbrc temp, 2
- rjmp C0 ; esli 2 ne nazhata to k knopke4
- U0: in temp, PINB
- sbrc temp, 2
- rjmp B1
- rjmp U0
- B1: rcall WG ; caaa??ea ?oia ia auno?i oaaee?eaaeinu
- ldi temp, 0xE6
- out OCR0A, temp
- C1: in temp, PINB
- sbrs temp, 4 ; i?iione neaa eiiaiau anee eiiiea aee??aiey ia ia?aoa
- rjmp T1
- Z1: sbrs temp, 2 ; esli knopka2 uvelicheniya NE nazhata to propusk komandy
- rjmp K1
- L1: sbrs temp, 3 ;esli knopka3 umenschenie yarkosti ne nazhata to propusk sled komandy
- rjmp W1
- rjmp C1
- T1: rcall WG
- J1: in temp, PINB
- sbrc temp, 4
- rjmp OFF
- rjmp J1
- K1: rcall WG
- in temp, PINB
- sbrc temp, 2
- rjmp L1 ; esli 2 ne nazhata to k knopke3
- U1: in temp, PINB
- sbrc temp, 2
- rjmp B2
- rjmp U1
- W1: rcall WG
- in temp, PINB
- sbrc temp, 3
- rjmp C1 ; esli 3 ne nazhata to k knopke4
- P1: in temp, PINB
- sbrc temp, 3
- rjmp B0
- rjmp P1
- B2: rcall WG ; caaa??ea ?oia ia auno?i oaaee?eaaeinu
- ldi temp, 0xD2
- out OCR0A, temp
- C2: in temp, PINB
- sbrs temp, 4 ; i?iione neaa eiiaiau anee eiiiea aee??aiey ia ia?aoa
- rjmp T2
- Z2: sbrs temp, 2 ; esli knopka2 uvelicheniya NE nazhata to propusk komandy
- rjmp K2
- L2: sbrs temp, 3 ;esli knopka3 umenschenie yarkosti ne nazhata to propusk sled komandy
- rjmp W2
- rjmp C2
- T2: rcall WG
- J2: in temp, PINB
- sbrc temp, 4
- rjmp OFF
- rjmp J2
- K2: rcall WG
- in temp, PINB
- sbrc temp, 2
- rjmp L2 ; esli 2 ne nazhata to k knopke3
- U2: in temp, PINB
- sbrc temp, 2
- rjmp B3
- rjmp U2
- W2: rcall WG
- in temp, PINB
- sbrc temp, 3
- rjmp C2 ; esli 3 ne nazhata to k knopke4
- P2: in temp, PINB
- sbrc temp, 3
- rjmp B1
- rjmp P2
- B3: rcall WG ; caaa??ea ?oia ia auno?i oaaee?eaaeinu
- ldi temp, 0xB4
- out OCR0A, temp
- C3: in temp, PINB
- sbrs temp, 4 ; i?iione neaa eiiaiau anee eiiiea aee??aiey ia ia?aoa
- rjmp T3
- Z3: sbrs temp, 2 ; esli knopka2 uvelicheniya NE nazhata to propusk komandy
- rjmp K3
- L3: sbrs temp, 3 ;esli knopka3 umenschenie yarkosti ne nazhata to propusk sled komandy
- rjmp W3
- rjmp C3
- T3: rcall WG
- J3: in temp, PINB
- sbrc temp, 4
- rjmp OFF
- rjmp J3
- K3: rcall WG
- in temp, PINB
- sbrc temp, 2
- rjmp L3 ; esli 2 ne nazhata to k knopke3
- U3: in temp, PINB
- sbrc temp, 2
- rjmp B4
- rjmp U3
- W3: rcall WG
- in temp, PINB
- sbrc temp, 3
- rjmp C3 ; esli 3 ne nazhata to k knopke4
- P3: in temp, PINB
- sbrc temp, 3
- rjmp B2
- rjmp P3
- B4: rcall WG ; caaa??ea ?oia ia auno?i oaaee?eaaeinu
- ldi temp, 0xA0
- out OCR0A, temp
- C4: in temp, PINB
- sbrs temp, 4 ; i?iione neaa eiiaiau anee eiiiea aee??aiey ia ia?aoa
- rjmp T4
- Z4: sbrs temp, 2 ; esli knopka2 uvelicheniya NE nazhata to propusk komandy
- rjmp K4
- L4: sbrs temp, 3 ;esli knopka3 umenschenie yarkosti ne nazhata to propusk sled komandy
- rjmp W4
- rjmp C4
- T4: rcall WG
- J4: in temp, PINB
- sbrc temp, 4
- rjmp OFF
- rjmp J4
- K4: rcall WG
- in temp, PINB
- sbrc temp, 2
- rjmp L4 ; esli 2 ne nazhata to k knopke3
- U4: in temp, PINB
- sbrc temp, 2
- rjmp B5
- rjmp U4
- W4: rcall WG
- in temp, PINB
- sbrc temp, 3
- rjmp C4 ; esli 3 ne nazhata to k knopke4
- P4: in temp, PINB
- sbrc temp, 3
- rjmp B3
- rjmp P4
- B5: rcall WG ; caaa??ea ?oia ia auno?i oaaee?eaaeinu
- ldi temp, 0x8C
- out OCR0A, temp
- C5: in temp, PINB
- sbrs temp, 4 ; i?iione neaa eiiaiau anee eiiiea aee??aiey ia ia?aoa
- rjmp T5
- Z5: sbrs temp, 2 ; esli knopka2 uvelicheniya NE nazhata to propusk komandy
- rjmp K5
- L5: sbrs temp, 3 ;esli knopka3 umenschenie yarkosti ne nazhata to propusk sled komandy
- rjmp W5
- rjmp C5
- T5: rcall WG
- J5: in temp, PINB
- sbrc temp, 4
- rjmp OFF
- rjmp J5
- K5: rcall WG
- in temp, PINB
- sbrc temp, 2
- rjmp L5 ; esli 2 ne nazhata to k knopke3
- U5: in temp, PINB
- sbrc temp, 2
- rjmp B6
- rjmp U5
- W5: rcall WG
- in temp, PINB
- sbrc temp, 3
- rjmp C5 ; esli 3 ne nazhata to k knopke4
- P5: in temp, PINB
- sbrc temp, 3
- rjmp B4
- rjmp P5
- B6: rcall WG ; caaa??ea ?oia ia auno?i oaaee?eaaeinu
- ldi temp, 0x78
- out OCR0A, temp
- C6: in temp, PINB
- sbrs temp, 4 ; i?iione neaa eiiaiau anee eiiiea aee??aiey ia ia?aoa
- rjmp T6
- Z6: sbrs temp, 2 ; esli knopka2 uvelicheniya NE nazhata to propusk komandy
- rjmp K6
- L6: sbrs temp, 3 ;esli knopka3 umenschenie yarkosti ne nazhata to propusk sled komandy
- rjmp W6
- rjmp C6
- T6: rcall WG
- J6: in temp, PINB
- sbrc temp, 4
- rjmp OFF
- rjmp J6
- K6: rcall WG
- in temp, PINB
- sbrc temp, 2
- rjmp L6 ; esli 2 ne nazhata to k knopke3
- U6: in temp, PINB
- sbrc temp, 2
- rjmp B7
- rjmp U6
- W6: rcall WG
- in temp, PINB
- sbrc temp, 3
- rjmp C6 ; esli 3 ne nazhata to k knopke4
- P6: in temp, PINB
- sbrc temp, 3
- rjmp B5
- rjmp P6
- B7: rcall WG ; caaa??ea ?oia ia auno?i oaaee?eaaeinu
- ldi temp, 0x64
- out OCR0A, temp
- C7: in temp, PINB
- sbrs temp, 4 ; propusk komandy esli knopka vklyucheniya ne nazhata
- rjmp T7
- Z7: sbrs temp, 2 ; esli knopka2 uvelicheniya NE nazhata to propusk komandy
- rjmp K7
- L7: sbrs temp, 3 ;esli knopka3 umenschenie yarkosti ne nazhata to propusk sled komandy
- rjmp W7
- rjmp C7
- T7: rcall WG
- J7: in temp, PINB
- sbrc temp, 4
- rjmp OFF
- rjmp J7
- K7: rcall WG
- in temp, PINB
- sbrc temp, 2
- rjmp L7 ; esli 2 ne nazhata to k knopke3
- U7: in temp, PINB
- sbrc temp, 2
- rjmp B8
- rjmp U7
- W7: rcall WG
- in temp, PINB
- sbrc temp, 3
- rjmp C7 ; esli 3 ne nazhata to k knopke4
- P7: in temp, PINB
- sbrc temp, 3
- rjmp B6
- rjmp P7
- B8: rcall WG ; caaa??ea ?oia ia auno?i oaaee?eaaeinu
- ldi temp, 0x50
- out OCR0A, temp
- C8: in temp, PINB
- sbrs temp, 4 ; propusk komandy esli knopka vklyucheniya ne nazhata
- rjmp T8
- Z8: sbrs temp, 2 ; esli knopka2 uvelicheniya NE nazhata to propusk komandy
- rjmp K8
- L8: sbrs temp, 3 ;esli knopka3 umenschenie yarkosti ne nazhata to propusk sled komandy
- rjmp W8
- rjmp C8
- T8: rcall WG
- J8: in temp, PINB
- sbrc temp, 4
- rjmp OFF
- rjmp J8
- K8: rcall WG
- in temp, PINB
- sbrc temp, 2
- rjmp L8 ; esli 2 ne nazhata to k knopke3
- U8: in temp, PINB
- sbrc temp, 2
- rjmp B9
- rjmp U8
- W8: rcall WG
- in temp, PINB
- sbrc temp, 3
- rjmp C8 ; esli 3 ne nazhata to k knopke4
- P8: in temp, PINB
- sbrc temp, 3
- rjmp B7
- rjmp P8
- B9: rcall WG ; caaa??ea ?oia ia auno?i oaaee?eaaeinu
- ldi temp, 0x3C
- out OCR0A, temp
- C9: in temp, PINB
- sbrs temp, 4 ; propusk komandy esli knopka vklyucheniya ne nazhata
- rjmp T9
- Z9: sbrs temp, 2 ; esli knopka2 uvelicheniya NE nazhata to propusk komandy
- rjmp K9
- L9: sbrs temp, 3 ;esli knopka3 umenschenie yarkosti ne nazhata to propusk sled komandy
- rjmp W9
- rjmp C9
- T9: rcall WG
- J9: in temp, PINB
- sbrc temp, 4
- rjmp OFF
- rjmp J9
- K9: rcall WG
- in temp, PINB
- sbrc temp, 2
- rjmp L9 ; esli 2 ne nazhata to k knopke3
- U9: in temp, PINB
- sbrc temp, 2
- rjmp B10
- rjmp U9
- W9: rcall WG
- in temp, PINB
- sbrc temp, 3
- rjmp C9 ; esli 3 ne nazhata to k knopke4
- P9: in temp, PINB
- sbrc temp, 3
- rjmp B8
- rjmp P9
- B10: rcall WG ; zaderzhka
- ldi temp, 0x28
- out OCR0A, temp
- C10: in temp, PINB
- sbrs temp, 4 ; propusk komandy esli knopka vklyucheniya ne nazhata
- rjmp T10
- Z10: sbrs temp, 2 ; esli knopka2 uvelicheniya NE nazhata to propusk komandy
- rjmp K10
- L10: sbrs temp, 3 ;esli knopka3 umenschenie yarkosti ne nazhata to propusk sled komandy
- rjmp W10
- rjmp C10
- T10: rcall WG
- J10: in temp, PINB
- sbrc temp, 4
- rjmp OFF
- rjmp J10
- K10: rcall WG
- in temp, PINB
- sbrc temp, 2
- rjmp L10 ; esli 2 ne nazhata to k knopke3
- U10: in temp, PINB
- sbrc temp, 2
- rjmp B11
- rjmp U10
- W10: rcall WG
- in temp, PINB
- sbrc temp, 3
- rjmp C10 ; esli 3 ne nazhata to k knopke4
- P10: in temp, PINB
- sbrc temp, 3
- rjmp B9
- rjmp P10
- B11: rcall WG ; zaderzhka
- ldi temp, 0x0
- out OCR0A, temp
- C11: in temp, PINB
- sbrs temp, 4 ; propusk komandy esli knopka vklyucheniya ne nazhata
- rjmp T11
- L11: sbrs temp, 3 ;esli knopka3 umenschenie yarkosti ne nazhata to propusk sled komandy
- rjmp W11
- rjmp C11
- T11: rcall WG
- J11: in temp, PINB
- sbrc temp, 4
- rjmp OFF
- rjmp J11
- W11: rcall WG
- in temp, PINB
- sbrc temp, 3
- rjmp C11 ; esli 3 ne nazhata to k knopke4
- P11: in temp, PINB
- sbrc temp, 3
- rjmp B10
- rjmp P11
- ; VYKLYUCHENIE TAIMERA
- OFF: ldi temp,(0<<FOC0A)|(0<<FOC0B)|(0<<WGM02)|(0<<CS02)|(0<<CS01)|(0<<CS00)
- out TCCR0B, temp
- rjmp main0
- ; ZADERZHKA
- WG: ldi R17, 0x50
- WGLOOP0: ldi R18, 0xFF
- WGLOOP1: dec R18
- brne WGLOOP1 ; brne perehod esli ne 0
- dec R17
- brne WGLOOP0 ; anee ia iieu oi ia?aoia ia WGLOOP0
- ret
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement