Телесистемы
 Разработка, производство и продажа радиоэлектронной аппаратуры
На главную   | Карта сайта | Пишите нам | В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:jobsmp@pochta.ru

Телесистемы | Электроника | Конференция «Микроконтроллеры и их применение»

Ответ: (+)

Отправлено DASM 04 декабря 2006 г. 19:26
В ответ на: Маааленький HEX файлик для ATiny12 кто-нибудь пможет дизасемблировать? (внутри) отправлено fmssp.ere 04 декабря 2006 г. 19:15


;
; ╔═════════════════════════════════════════════════════════════════════════╗
; ║ This file is generated by The Interactive Disassembler (IDA) ║
; ║ Copyright (c) 2005 by DataRescue sa/nv,
; ║ Licensed to: Lennart Reus, 1 user, std, 07/2003 ║
; ╚═════════════════════════════════════════════════════════════════════════╝
;
; ───────────────────────────────────────────────────────────────────────────
; File Name : C:\work\testdll\debug\1.BIN
; Format : Binary file
; Base Address: 0000h Range: 0000h - 0096h Loaded length: 0096h

; Processor : AVR [ATtiny_11_12]
; Target assembler: AVR Assembler

; ═══════════════════════════════════════════════════════════════════════════

; Segment type: Pure code
.CSEG ; ROM
.org 0
rjmp __RESET ; External Pin, Power-on Reset, Brown-out Reset and Watchdog Reset
; ───────────────────────────────────────────────────────────────────────────
.org 1
rjmp INT0_ ; External Interrupt Request 0
.org 2

; ███████████████ S U B R O U T I N E ███████████████████████████████████████

; Pin Change Interrupt

; public I_O_Pins
I_O_Pins:
reti
; End of function I_O_Pins

; ───────────────────────────────────────────────────────────────────────────
.org 3
rjmp TIMER0_OVF0 ; Timer/Counter0 Overflow
.org 4

; ███████████████ S U B R O U T I N E ███████████████████████████████████████

; EEPROM Ready

; public EE_RDY
EE_RDY:
reti
; End of function EE_RDY

.org 5

; ███████████████ S U B R O U T I N E ███████████████████████████████████████

; Analog Comparator

; public ANA_COMP
ANA_COMP:
reti
; End of function ANA_COMP

; ───────────────────────────────────────────────────────────────────────────
.dw 0x9518 ; Х

; ███████████████ S U B R O U T I N E ███████████████████████████████████████

; External Pin, Power-on Reset, Brown-out Reset and Watchdog Reset

; public __RESET
__RESET: ; CODE XREF: ROM:0000j

; FUNCTION CHUNK AT 0072 SIZE 00000023 BYTES

ldi r30, 9
ldi r20, 0
ldi r21, 0
ldi r22, 0
ldi r23, 0
ldi r24, 0
ldi r25, 0
ldi r26, 0
rjmp loc_72
; End of function __RESET


; ███████████████ S U B R O U T I N E ███████████████████████████████████████

; Timer/Counter0 Overflow

; public TIMER0_OVF0
TIMER0_OVF0: ; CODE XREF: ROM:0003j
in r0, SREG
dec r30
st Z, r0
dec r30
st Z, r27
dec r30
subi r21, -1
sbci r20, -1
ldi r27, -0x77 ; 'Й'
out TCNT0, r27
inc r30
ld r27, Z
inc r30
ld r0, Z
inc r30
out SREG, r0
reti
; End of function TIMER0_OVF0


; ███████████████ S U B R O U T I N E ███████████████████████████████████████

; External Interrupt Request 0

; public INT0_
INT0_: ; CODE XREF: ROM:0001j
in r0, SREG
dec r30
st Z, r0
dec r30
st Z, r28
dec r30
st Z, r27
dec r30
inc r26
cpi r26, 6
breq loc_2D
rjmp loc_4C
; ───────────────────────────────────────────────────────────────────────────

loc_2D: ; CODE XREF: INT0_+Aj
ldi r26, 0
out TCCR0, r26
cp r23, r21
cpc r22, r20
brcc loc_34
cbi PORTB, PORTB3
cbi PORTB, PORTB4

loc_34: ; CODE XREF: INT0_+10j
cp r25, r21
cpc r24, r20
brcc loc_3C
cp r21, r23
cpc r20, r22
brcc loc_3C
sbi PORTB, PORTB3
cbi PORTB, PORTB4

loc_3C: ; CODE XREF: INT0_+15j INT0_+18j
ldi r27, 1
ldi r28, 0
cp r27, r21
cpc r28, r20
brcc loc_46
cp r21, r25
cpc r20, r24
brcc loc_46
cbi PORTB, PORTB3
sbi PORTB, PORTB4

loc_46: ; CODE XREF: INT0_+1Fj INT0_+22j
ldi r27, -0x77 ; 'Й'
out TCNT0, r27
ldi r21, 0
clr r20
ldi r27, 1
out TCCR0, r27

loc_4C: ; CODE XREF: INT0_+Bj
inc r30
ld r27, Z
inc r30
ld r28, Z
inc r30
ld r0, Z
inc r30
out SREG, r0
reti
; End of function INT0_


; ███████████████ S U B R O U T I N E ███████████████████████████████████████


sub_55: ; CODE XREF: __RESET+75p __RESET+77p ...
ser r16
ser r17

loc_57: ; CODE XREF: sub_55+4j
subi r16, 1
sbci r17, 0
brne loc_57
ser r16
ser r17

loc_5C: ; CODE XREF: sub_55+9j
subi r16, 1
sbci r17, 0
brne loc_5C
ret
; End of function sub_55


; ███████████████ S U B R O U T I N E ███████████████████████████████████████


sub_60: ; CODE XREF: __RESET+6Fp
cli
ldi r27, 0x1F
out PORTB, r27
ldi r28, 0x18
out DDRB, r28
ldi r27, 0
out TCCR0, r27
ldi r28, -0x77 ; 'Й'
out TCNT0, r28
ldi r27, 2
out MCUCR, r27
ldi r28, 0x40 ; '@'
out GIMSK, r28
out TIMSK, r27
ldi r27, 0
out EECR, r27
sei
ret
; End of function sub_60

; ───────────────────────────────────────────────────────────────────────────
; START OF FUNCTION CHUNK FOR __RESET

loc_72: ; CODE XREF: __RESET+8j
ldi r23, 0x10
ldi r22, 2
ldi r25, 0x4A ; 'J'
ldi r24, 1
rcall sub_60
ldi r21, 0
clr r20
cbi PORTB, PORTB3
cbi PORTB, PORTB4
sbi PORTB, PORTB3
rcall sub_55
sbi PORTB, PORTB4
rcall sub_55
cbi PORTB, PORTB3
cbi PORTB, PORTB4
rcall sub_55
sbi PORTB, PORTB3
rcall sub_55
sbi PORTB, PORTB4
rcall sub_55
cbi PORTB, PORTB3
rcall sub_55
cbi PORTB, PORTB4
rcall sub_55
rjmp loc_94
; ───────────────────────────────────────────────────────────────────────────

loc_8B: ; CODE XREF: __RESET:loc_94j
ldi r28, -0x68
ldi r27, 0x3A ; ':'
cp r28, r21
cpc r27, r20
brcc loc_94
ldi r21, 0
clr r20
cbi PORTB, PORTB4
cbi PORTB, PORTB3

loc_94: ; CODE XREF: __RESET+83j __RESET+88j
rjmp loc_8B
; END OF FUNCTION CHUNK FOR __RESET
; ───────────────────────────────────────────────────────────────────────────
.dw 0xCFFF ; ╧
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1

.exit ;



Составить ответ | Вернуться на конференцию

Ответы


Отправка ответа

Имя*: 
Пароль: 
E-mail: 
Тема*:

Сообщение:

Ссылка на URL: 
URL изображения: 
если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
скольким Омам равен эквивалент двух резисторов по 10 Ом, соединённых параллельно?:

Перейти к списку ответов | Конференция | Раздел "Электроника" | Главная страница | Карта сайта

Rambler's Top100 Рейтинг@Mail.ru
 
Web telesys.ru