Это явно перебор...[/uquote]
слова много, перебор - непрофессионально
тини10 живая не нужна - создаем проект в древней аврстудии 4.19, быстренько пишем тот же функционал:
Спойлер
Код: Выделить всё
.device ATtiny10
.include "tn10def.inc"
; +====+
; PWMA/PB0 |* | PB3 (RESET)
; GND | | Vcc
; PWMB/PB1 | | PB2 (CLKO)
; +====+
.DSEG
AL: .BYTE 1
BL: .BYTE 1
flags: .BYTE 1
.CSEG
.org 0
;Interrupt vector table
rjmp reset ; All Resets
reti ; External Interrupt R.equuest 0
reti ; Pin Change Interrupt R.equuest 0
reti ; Timer/Counter0 Input Capture
reti ; Timer/Counter0 Overflow
reti ; Timer/Counter0 Compare Match A
reti ; Timer/Counter0 Compare Match B
reti ; Analog Comparator
reti ; Watchdog Time-out
reti ; VCC Voltage Level Monitor
reti ; ADC Conversion Complete
reset:
; Set Stack Pointer (SP)
ldi r16, 0x00
out SPH, r16
ldi r16, 0x5F
out SPL, r16
; Set clock to 4MHz
ldi r16, 0xD8 ; Unprotect CLKPSR reg
out CCP, r16
ldi r16, 1 ; Divide by 2
out CLKPSR, r16
; Calibrate Oscillator
ldi r16, 0xA3 ; ATTiny10 Value
out OSCCAL, r16
; Setup I/O Port
ldi r16, 0x02 ; PB1 are outputs
out DDRB, r16
; TCCR0A = 1<<COM0A0 | 0<<WGM00; // Toggle OC0A, CTC mode
ldi r20, 0x40
out 0x2e, r20
; TCCR0B = 1<<WGM02 | 3<<CS00; // CTC mode; use OCR0A; /64
ldi r20, 0x0B
out 0x2d, r20
; OCR0A = 15624; // 1 second; ie 0.5Hz
ldi r20, 0x08
ldi r21, 0x3D
out 0x27, r21
out 0x26, r20
loop:
rjmp loopКод: Выделить всё
---------------------------------------------------------------
ATtiny10 memory use summary [bytes]:
Segment Begin End Code Data Used Size Use%
---------------------------------------------------------------
[.cseg] 0x000000 0x000040 64 0 64 1024 6.3%
[.dseg] 0x000040 0x000060 0 3 3 32 9.4%
[.eseg] 0x000000 0x000000 0 0 0 0 -
Assembly complete, 0 errors. 0 warnings


