Пример: Из МК идет 4 управл сигналы ! 1-из них не подается (возможно сгорел)
и мне этот 1 сигнал надо перекинуть на свободный пин !! За ранее спасибо!!
А че он, кобенится?Destor писал(а):Тогда буду ждать ответа !!! Автора прошивки =)
так отпаять от него всё и проверить.Destor писал(а):а етот 0,40в и 0,20в
Вы бы предоставили все исходные данные сразу, а вось какой умелец вам бы втихую и помог.Destor писал(а):Здравствуйте! Помогите если это возможно ! Изменить назначение пинов МК - без исходника !!
За ранее спасибо!!
Зарание пожалуйста!! Обращайся коли что ))Destor писал(а):Здравствуйте! Помогите если это возможно ! Изменить назначение пинов МК - без исходника и без прошивки!!
За ранее спасибо!!
Код: Выделить всё
; reassembly of "ATmega16.htm"
; created by ReAVR V3.2.0
; at 2013/02/01 - 15:37:29
; for ICCAVR assembler
;---------------------------------------
; AVR_TYPE=<unknown>
; FLASH_SIZE=8KB
; SRAM_START=0x60
;---------------------------------------
.area text
;; older iccavr need different setup:
;; .area text (abs,ovr)
;; .org 0x0000
;---------------------------------------
; byte constants:
;
k00 = 0x00 ;
k01 = 0x01 ;
k02 = 0x02 ;
k03 = 0x03 ;
k04 = 0x04 ;
k05 = 0x05 ;
k06 = 0x06 ;
k07 = 0x07 ;
k0A = 0x0A ;
k0B = 0x0B ;
k0C = 0x0C ;
k0D = 0x0D ;
k0F = 0x0F ;
k18 = 0x18 ;
k1E = 0x1E ;
k32 = 0x32 ; '2'
k4C = 0x4C ; 'L'
k54 = 0x54 ; 'T'
k5F = 0x5F ; '_'
k60 = 0x60 ; '`'
k6C = 0x6C ; 'l'
k80 = 0x80 ;
kA1 = 0xA1 ; 'Ў'
kB3 = 0xB3 ; 'і'
kE0 = 0xE0 ; 'а'
kF0 = 0xF0 ; 'р'
kF4 = 0xF4 ; 'ф'
kFB = 0xFB ; 'ы'
kFF = 0xFF ; 'я'
;
; io register addresses:
;
p08 = 0x08
p0B = 0x0B
p0C = 0x0C
p11 = 0x11
p12 = 0x12
p13 = 0x13
p14 = 0x14
p15 = 0x15
p17 = 0x17
p18 = 0x18
p1A = 0x1A
p1B = 0x1B
p1C = 0x1C
p21 = 0x21
p22 = 0x22
p23 = 0x23
p24 = 0x24
p25 = 0x25
p26 = 0x26
p27 = 0x27
p28 = 0x28
p29 = 0x29
p2A = 0x2A
p2B = 0x2B
p2C = 0x2C
p2D = 0x2D
p2E = 0x2E
p2F = 0x2F
p30 = 0x30
p32 = 0x32
p33 = 0x33
p34 = 0x34
p35 = 0x35
p39 = 0x39
p3A = 0x3A
p3B = 0x3B
p3C = 0x3C
p3D = 0x3D
p3E = 0x3E
p3F = 0x3F
;
; bit numbers:
;
b0 = 0x00
b1 = 0x01
b2 = 0x02
b3 = 0x03
b4 = 0x04
b5 = 0x05
b6 = 0x06
b7 = 0x07
;---------------------------------------
;
L0000:
jmp __start ; L002B
; ----------- jump on last line
jmp L005B
; ----------- jump on last line
jmp L0075
; ----------- jump on last line
jmp L0000
; ----------- jump on last line
jmp L0000
; ----------- jump on last line
jmp L0000
; ----------- jump on last line
jmp L0000
; ----------- jump on last line
jmp L0000
; ----------- jump on last line
jmp L0000
; ----------- jump on last line
jmp L00A9
; ----------- jump on last line
jmp L0000
; ----------- jump on last line
jmp L0000
; ----------- jump on last line
jmp L0000
; ----------- jump on last line
jmp L0000
; ----------- jump on last line
jmp L0000
; ----------- jump on last line
jmp L0000
; ----------- jump on last line
jmp L0000
; ----------- jump on last line
jmp L0000
; ----------- jump on last line
jmp L008F
; ----------- jump on last line
jmp L0000
; ----------- jump on last line
jmp L0000
; ----------- jump on last line
nop
;
__start::
; L002B:
cli
clr r30
out p1C,r30
ldi r31,k01
out p3B,r31
out p3B,r30
out p35,r30
ldi r31,k18
out p21,r31
out p21,r30
ldi r24,k0D
ldi r26,k02
clr r27
L0038:
st X+,r30
dec r24
brne L0038
; ----- branch on last line
ldi r24,k00
ldi r25,k04
ldi r26,k60
L003E:
st X+,r30
sbiw r24,k01
brne L003E
; ----- branch on last line
ldi r30,k54
ldi r31,k00
L0043:
lpm r24,Z+
lpm r25,Z+
sbiw r24,k00
breq L0053
; ----- branch on last line
lpm r26,Z+
lpm r27,Z+
lpm r0,Z+
lpm r1,Z+
movw r22,r30
movw r30,r0
L004D:
lpm r0,Z+
st X+,r0
sbiw r24,k01
brne L004D
; ----- branch on last line
movw r30,r22
rjmp L0043
; ----------- jump on last line
L0053:
ldi r30,k5F
out p3D,r30
ldi r30,k04
out p3E,r30
ldi r28,k60
ldi r29,k01
jmp L00D4
; ----------- jump on last line
L005B:
st -Y,r30
in r30,p3F
st -Y,r30
sbi p18,b0
; --------- this is skippy
sbic p13,b4
rjmp L0067
; --------- last may be skipped
; pc=0x61(0xC2)
;
inc r4
ldi r30,k07
cp r30,r4
brcc L0066
; ----- branch on last line
clr r4
L0066:
rjmp L006C
; ----------- jump on last line
L0067:
dec r4
ldi r30,k07
cp r30,r4
brcc L006C
; ----- branch on last line
mov r4,r30
L006C:
ldi r30,kFF
out p2A,r30
ldi r30,k1E
mov r7,r30
cbi p18,b0
ld r30,Y+
out p3F,r30
ld r30,Y+
reti
;----------------------*
; pc=0x75(0xEA)
;
L0075:
st -Y,r30
in r30,p3F
st -Y,r30
sbi p18,b1
; --------- this is skippy
sbic p13,b5
rjmp L0081
; --------- last may be skipped
; pc=0x7B(0xF6)
;
inc r5
ldi r30,k07
cp r30,r5
brcc L0080
; ----- branch on last line
clr r5
L0080:
rjmp L0086
; ----------- jump on last line
L0081:
dec r5
ldi r30,k07
cp r30,r5
brcc L0086
; ----- branch on last line
mov r5,r30
L0086:
ldi r30,kFF
out p23,r30
ldi r30,k1E
mov r8,r30
cbi p18,b1
ld r30,Y+
out p3F,r30
ld r30,Y+
reti
;----------------------*
; pc=0x8F(0x11E)
;
L008F:
st -Y,r30
in r30,p3F
st -Y,r30
sbi p12,b0
; --------- this is skippy
sbic p13,b6
rjmp L009B
; --------- last may be skipped
; pc=0x95(0x12A)
;
inc r6
ldi r30,k07
cp r30,r6
brcc L009A
; ----- branch on last line
clr r6
L009A:
rjmp L00A0
; ----------- jump on last line
L009B:
dec r6
ldi r30,k07
cp r30,r6
brcc L00A0
; ----- branch on last line
mov r6,r30
L00A0:
ldi r30,kFF
out p28,r30
ldi r30,k1E
mov r9,r30
cbi p12,b0
ld r30,Y+
out p3F,r30
ld r30,Y+
reti
;----------------------*
; pc=0xA9(0x152)
;
L00A9:
st -Y,r30
in r30,p3F
st -Y,r30
ldi r30,k0C
out p32,r30
ldi r30,k00
cp r30,r7
brcc L00B3
; ----- branch on last line
dec r7
rjmp L00B6
; ----------- jump on last line
L00B3:
ldi r30,k32
out p2A,r30
sbi p18,b0
L00B6:
ldi r30,k00
cp r30,r8
brcc L00BB
; ----- branch on last line
dec r8
rjmp L00BE
; ----------- jump on last line
L00BB:
ldi r30,k32
out p23,r30
sbi p18,b1
L00BE:
ldi r30,k00
cp r30,r9
brcc L00C3
; ----- branch on last line
dec r9
rjmp L00C6
; ----------- jump on last line
L00C3:
ldi r30,k32
out p28,r30
sbi p12,b0
L00C6:
ldi r30,k00
cp r30,r7
brne L00CD
; ----- branch on last line
cp r30,r8
brne L00CD
; ----- branch on last line
cp r30,r9
breq L00CF
; ----- branch on last line
L00CD:
sbi p12,b1
rjmp L00D0
; ----------- jump on last line
L00CF:
cbi p12,b1
L00D0:
ld r30,Y+
out p3F,r30
ld r30,Y+
reti
;----------------------*
; pc=0xD4(0x1A8)
;
L00D4:
ldi r30,k00
out p1B,r30
ldi r30,kFF
out p1A,r30
ldi r30,k04
out p18,r30
ldi r30,kFB
out p17,r30
ldi r30,kF0
out p15,r30
ldi r30,k0F
out p14,r30
ldi r30,k4C
out p12,r30
ldi r30,kB3
out p11,r30
ldi r30,k00
out p33,r30
ldi r30,k0C
out p32,r30
ldi r30,kF4
out p3C,r30
ldi r30,k05
out p33,r30
ldi r30,kA1
out p2F,r30
ldi r30,k0B
out p2E,r30
ldi r30,k00
out p2D,r30
out p2C,r30
out p27,r30
out p26,r30
out p2B,r30
out p2A,r30
out p29,r30
out p28,r30
out p22,r30
ldi r30,k6C
out p25,r30
ldi r30,k00
out p24,r30
out p23,r30
in r30,p3B
ori r30,kE0
out p3B,r30
ldi r30,k0A
out p35,r30
ldi r30,k00
out p34,r30
ldi r30,kE0
out p3A,r30
ldi r30,k01
out p39,r30
ldi r30,k80
out p08,r30
ldi r30,k00
out p30,r30
sei
ldi r30,k32
out p2A,r30
out p23,r30
out p28,r30
L0113:
mov r30,r4
call L01E8
brne L011C
; ----- branch on last line
sbi p1B,b3
cbi p1B,b2
cbi p1B,b1
cbi p1B,b0
rjmp L0156
; ----------- jump on last line
L011C:
cpi r30,k01
ldi r26,k00
cpc r31,r26
brne L0125
; ----- branch on last line
sbi p1B,b3
sbi p1B,b2
cbi p1B,b1
cbi p1B,b0
rjmp L0156
; ----------- jump on last line
L0125:
cpi r30,k02
ldi r26,k00
cpc r31,r26
brne L012E
; ----- branch on last line
cbi p1B,b3
sbi p1B,b2
cbi p1B,b1
cbi p1B,b0
rjmp L0156
; ----------- jump on last line
L012E:
cpi r30,k03
ldi r26,k00
cpc r31,r26
brne L0137
; ----- branch on last line
cbi p1B,b3
sbi p1B,b2
sbi p1B,b1
cbi p1B,b0
rjmp L0156
; ----------- jump on last line
L0137:
cpi r30,k04
ldi r26,k00
cpc r31,r26
brne L0140
; ----- branch on last line
cbi p1B,b3
cbi p1B,b2
sbi p1B,b1
cbi p1B,b0
rjmp L0156
; ----------- jump on last line
L0140:
cpi r30,k05
ldi r26,k00
cpc r31,r26
brne L0148
; ----- branch on last line
cbi p1B,b3
cbi p1B,b2
sbi p1B,b1
rjmp L0155
; ----------- jump on last line
L0148:
cpi r30,k06
ldi r26,k00
cpc r31,r26
brne L014E
; ----- branch on last line
cbi p1B,b3
rjmp L0153
; ----------- jump on last line
L014E:
cpi r30,k07
ldi r26,k00
cpc r31,r26
brne L0156
; ----- branch on last line
sbi p1B,b3
L0153:
cbi p1B,b2
cbi p1B,b1
L0155:
sbi p1B,b0
L0156:
mov r30,r5
call L01E8
brne L015F
; ----- branch on last line
sbi p1B,b7
cbi p1B,b6
cbi p1B,b5
cbi p1B,b4
rjmp L0199
; ----------- jump on last line
L015F:
cpi r30,k01
ldi r26,k00
cpc r31,r26
brne L0168
; ----- branch on last line
sbi p1B,b7
sbi p1B,b6
cbi p1B,b5
cbi p1B,b4
rjmp L0199
; ----------- jump on last line
L0168:
cpi r30,k02
ldi r26,k00
cpc r31,r26
brne L0171
; ----- branch on last line
cbi p1B,b7
sbi p1B,b6
cbi p1B,b5
cbi p1B,b4
rjmp L0199
; ----------- jump on last line
L0171:
cpi r30,k03
ldi r26,k00
cpc r31,r26
brne L017A
; ----- branch on last line
cbi p1B,b7
sbi p1B,b6
sbi p1B,b5
cbi p1B,b4
rjmp L0199
; ----------- jump on last line
L017A:
cpi r30,k04
ldi r26,k00
cpc r31,r26
brne L0183
; ----- branch on last line
cbi p1B,b7
cbi p1B,b6
sbi p1B,b5
cbi p1B,b4
rjmp L0199
; ----------- jump on last line
L0183:
cpi r30,k05
ldi r26,k00
cpc r31,r26
brne L018B
; ----- branch on last line
cbi p1B,b7
cbi p1B,b6
sbi p1B,b5
rjmp L0198
; ----------- jump on last line
L018B:
cpi r30,k06
ldi r26,k00
cpc r31,r26
brne L0191
; ----- branch on last line
cbi p1B,b7
rjmp L0196
; ----------- jump on last line
L0191:
cpi r30,k07
ldi r26,k00
cpc r31,r26
brne L0199
; ----- branch on last line
sbi p1B,b7
L0196:
cbi p1B,b6
cbi p1B,b5
L0198:
sbi p1B,b4
L0199:
mov r30,r6
call L01E8
brne L01A2
; ----- branch on last line
sbi p15,b3
cbi p15,b2
cbi p15,b1
cbi p15,b0
rjmp L01DC
; ----------- jump on last line
L01A2:
cpi r30,k01
ldi r26,k00
cpc r31,r26
brne L01AB
; ----- branch on last line
sbi p15,b3
sbi p15,b2
cbi p15,b1
cbi p15,b0
rjmp L01DC
; ----------- jump on last line
L01AB:
cpi r30,k02
ldi r26,k00
cpc r31,r26
brne L01B4
; ----- branch on last line
cbi p15,b3
sbi p15,b2
cbi p15,b1
cbi p15,b0
rjmp L01DC
; ----------- jump on last line
L01B4:
cpi r30,k03
ldi r26,k00
cpc r31,r26
brne L01BD
; ----- branch on last line
cbi p15,b3
sbi p15,b2
sbi p15,b1
cbi p15,b0
rjmp L01DC
; ----------- jump on last line
L01BD:
cpi r30,k04
ldi r26,k00
cpc r31,r26
brne L01C6
; ----- branch on last line
cbi p15,b3
cbi p15,b2
sbi p15,b1
cbi p15,b0
rjmp L01DC
; ----------- jump on last line
L01C6:
cpi r30,k05
ldi r26,k00
cpc r31,r26
brne L01CE
; ----- branch on last line
cbi p15,b3
cbi p15,b2
sbi p15,b1
rjmp L01DB
; ----------- jump on last line
L01CE:
cpi r30,k06
ldi r26,k00
cpc r31,r26
brne L01D4
; ----- branch on last line
cbi p15,b3
rjmp L01D9
; ----------- jump on last line
L01D4:
cpi r30,k07
ldi r26,k00
cpc r31,r26
brne L01DC
; ----- branch on last line
sbi p15,b3
L01D9:
cbi p15,b2
cbi p15,b1
L01DB:
sbi p15,b0
L01DC:
rjmp L0113
; ----------- jump on last line
L01DD:
rjmp L01DD
; ----------- jump on last line
; pc=0x1DE(0x3BC)
;
L01DE:
; --------- this is skippy
sbis p0B,b7
rjmp L01DE
; --------- last may be skipped
; pc=0x1E0(0x3C0)
;
in r30,p0C
ret
;----------------------*
; pc=0x1E2(0x3C4)
;
L01E2:
; --------- this is skippy
sbis p0B,b5
rjmp L01E2
; --------- last may be skipped
; pc=0x1E4(0x3C8)
;
ldd r30,Y+o00
out p0C,r30
adiw r28,k01
ret
;----------------------*
; pc=0x1E8(0x3D0)
;
L01E8:
ldi r31,k00
sbiw r30,k00
ret
;----------------------*
; pc=0x1EB(0x3D6)
;
__text_end::
;
; last flash byte address = 0x03D5
; last flash word address = 0x01EA
;---------------------------------------
; Code not seems to use any RAM.
;---------------------------------------
;<eof>