кто нибудь очень прошу прокомментировать скрин.
http://www.fsdbhome.ru/ifoto/ircopy/flesh.png
Код: Выделить всё
при запуске грузит её Ftd2xx.dll (драйвер), и кучу функций через которые работает с USB Device
FT_Write
FT_Read
FT_Open
...
FT_SetDataCharacteristics
FT_SetFlowControl
после прога получает дескриптор FT_ListDevices
и потом пытается выполнить FT_OpenEx с параметром "USB-UIRT"
Писанина думаю блоками в саму железку.
Это так сказать трэйс алгоса, а можно и декомпильнуть блоки чтения и записи - думаю там будет намного понятнее алгос общения с железом !
И в файле firm.sys начало строк похоже на адреса идущие друг за другом - (я разделил пробелом):
:10000 0008B018316E630F228FD00030E8301FE000B
:10001 0000408FF008C1A0D283E288C127C088400EE
:10002 0001A08FA1983178000F4077A1B1A28253A50
:...
:1000E 000EA200530EA200130EA200130EA201A3007
:1000F 000EA200330EA200430EA20CF30EA286B28D7
А дальше непосредственно байты ...и потом пытается выполнить FT_OpenEx с параметром "USB-UIRT"
Вы его отдельно прошейте перед впайкой.если я допустим выпаяю PIC16F628A прошитый... и поставлю туда пустой .... интересно прошьет ли пустую PIC
мне нужно оцифровать ИК сигнал .
А зачем для этого сигнал вообще оцифровывать? Просто повторите его и всё.а потом его послать
в общем я пишу программу небольшую и мне важно сначало все кнопки сохранить в файл ввиде цифр что привел выше а затем коммандной строкой их послать. как делаю это я сейчас.da-nie писал(а):мне нужно оцифровать ИК сигнал .А зачем для этого сигнал вообще оцифровывать? Просто повторите его и всё.а потом его послать
Код: Выделить всё
; Generated by WinDis84, (c) Nigel Goodwin 1998.
LIST P=16F84, F=INHX8M
include "P16FXX.inc"
ORG 0x0000
CLRF INTCON
BSF STATUS , RP0
MOVLW 0xE6
GOTO Label_0001
MOVWF 0x7D
SWAPF STATUS , W
CLRF STATUS
MOVWF 0x7E
MOVF FSR , W
MOVWF 0x7F
BTFSC 0x0C , 05
GOTO Label_0002
GOTO Label_0003
Label_0002 BCF 0x0C , 05
MOVF 0x7C , W
MOVWF FSR
MOVF 0x1A , W
BTFSC 0x7A , 03
BSF STATUS , IRP
MOVWF 0x00
ADDWF 0x74 , f
BTFSC 0x7A , 06
GOTO Label_0004
XORLW 0x25
BTFSC STATUS , Z
BSF 0x7A , 01
Label_0004 BSF 0x7A , 06
INCF 0x6D , f
BTFSS 0x7A , 01
GOTO Label_0005
BTFSS 0x6D , 06
GOTO Label_0005
BSF TRISA , 00
Label_0005 INCF 0x7C , f
MOVF 0x7C , W
BTFSC 0x7A , 03
GOTO Label_0006
ANDLW 0x7F
XORLW 0x68
BTFSS STATUS , Z
GOTO Label_0003
BTFSS 0x7C , 07
GOTO Label_0007
MOVLW 0x20
MOVWF 0x7C
BSF 0x7A , 03
GOTO Label_0003
Label_0007 BTFSC 0x7A , 01
GOTO Label_0008
MOVLW 0xA0
MOVWF 0x7C
GOTO Label_0003
Label_0006 XORLW 0x50
BTFSS STATUS , Z
GOTO Label_0003
Label_0008 MOVLW 0x20
BCF 0x7A , 03
MOVWF 0x7C
GOTO Label_0003
GOTO Label_0003
BCF INTCON , T0IF
GOTO Label_0003
Label_0003 MOVF 0x7F , W
MOVWF FSR
SWAPF 0x7E , W
MOVWF STATUS
SWAPF 0x7D , f
SWAPF 0x7D , W
RETFIE
Label_0039 MOVF 0x6F , W
ADDWF PCL , f
GOTO Label_0009
GOTO Label_000A
GOTO Label_000B
Label_005F MOVF 0x20 , W
ANDLW 0xDF
ADDLW 0xFA
BTFSC STATUS , C
GOTO Label_000C
ADDLW 0x06
ADDWF PCL , f
GOTO Label_000D
GOTO Label_000D
GOTO Label_000D
GOTO Label_000E
GOTO Label_000D
GOTO Label_000F
Label_005E MOVF 0x20 , W
ANDLW 0xCF
ADDLW 0xF6
BTFSC STATUS , C
GOTO Label_000C
ADDLW 0x0A
ADDWF PCL , f
GOTO Label_0010
GOTO Label_0011
GOTO Label_0012
GOTO Label_0013
GOTO Label_0014
GOTO Label_0015
GOTO Label_0016
GOTO Label_0017
GOTO Label_0018
GOTO Label_0019
Label_000D MOVWF 0x6F
MOVLW 0x21
GOTO Label_001A
Label_000C BSF TRISA , 00
MOVLW 0x82
GOTO Label_001A
Label_000E BSF TRISA , 00
MOVLW 0x09
CALL Label_001A
MOVLW 0x05
CALL Label_001A
MOVLW 0x01
CALL Label_001A
MOVLW 0x01
CALL Label_001A
MOVLW 0x1A
CALL Label_001A
MOVLW 0x03
CALL Label_001A
MOVLW 0x04
CALL Label_001A
MOVLW 0xCF
GOTO Label_001A
Label_000B GOTO Label_000C
Label_000A MOVF 0x71 , W
CALL Label_001B
MOVF 0x70 , W
CALL Label_001A
Label_001D BTFSC INTCON , T0IF
GOTO Label_001C
BTFSS TRISB , 05
GOTO Label_001D
CALL Label_001E
Label_0020 BTFSS TRISB , 05
GOTO Label_001F
BTFSS INTCON , T0IF
GOTO Label_0020
Label_001C MOVLW 0x01
MOVWF 0x71
MOVLW 0x02
MOVWF 0x70
MOVLW 0xFF
GOTO Label_001A
Label_001F CALL Label_001E
GOTO Label_001D
Label_0051 MOVF 0x26 , W
MOVWF 0x71
Label_009D BTFSS 0x7A , 05
GOTO Label_0021
MOVLW 0x27
BTFSC 0x7A , 01
MOVLW 0x23
MOVWF 0x7B
BCF 0x7A , 02
MOVLW 0xFF
MOVWF 0x72
GOTO Label_0022
Label_0021 MOVLW 0xFE
MOVWF 0x72
MOVLW 0x40
MOVWF 0x7B
MOVLW 0x2C
MOVWF FSR
Label_0022 MOVLW 0x0C
MOVWF 0x17
MOVF 0x22 , W
ANDLW 0x7F
BSF STATUS , RP0
MOVWF 0x12
DECF 0x12 , f
BCF STATUS , RP0
MOVWF 0x11
DECF 0x11 , f
MOVWF 0x75
BCF STATUS , C
RRF 0x75 , f
BTFSC 0x22 , 07
CLRF 0x75
BCF 0x0C , 01
CALL Label_0023
BCF 0x7A , 07
CLRF 0x12
Label_0027 MOVF 0x75 , W
BTFSC 0x7A , 07
MOVLW 0xFF
MOVWF 0x15
BSF 0x12 , 02
BSF STATUS , RP0
BCF TRISB , 03
BCF STATUS , RP0
MOVLW 0x80
XORWF 0x7A , f
MOVF 0x70 , W
MOVWF 0x78
MOVF 0x77 , W
MOVWF 0x79
BSF 0x7A , 00
CALL Label_0024
CALL Label_0025
Label_0026 CALL Label_0024
BTFSC 0x7A , 00
GOTO Label_0026
MOVF 0x71 , W
XORWF 0x72 , W
BTFSS STATUS , Z
GOTO Label_0027
CLRF 0x12
BSF STATUS , RP0
BSF TRISB , 03
BCF STATUS , RP0
CLRF 0x17
RETURN
Label_002A GOTO Label_0028
Label_0028 RETURN
Label_002B GOTO Label_0029
Label_002D NOP
Label_0029 GOTO Label_002A
MOVF TMR0 , W
CLRF TMR0
BCF INTCON , T0IF
MOVWF 0x75
BTFSS 0x75 , 07
GOTO Label_001A
MOVLW 0x80
CALL Label_001A
MOVF 0x75 , W
GOTO Label_001A
Label_001E MOVF TMR0 , W
Label_001B CLRF TMR0
BCF INTCON , T0IF
Label_001A BTFSS 0x0C , 04
GOTO Label_001A
MOVWF 0x19
RETURN
Label_002C GOTO Label_002B
Label_0053 CALL Label_002C
CALL Label_002D
RETURN
Label_0001 MOVWF PORTA
MOVLW 0xFE
MOVWF PORTB
MOVLW 0x46
MOVWF TMR0
MOVLW 0x01
MOVWF 0x19
MOVLW 0x24
MOVWF 0x18
MOVLW 0x20
MOVWF 0x0C
BCF STATUS , RP0
MOVLW 0x90
MOVWF 0x18
CLRF PORTB
BSF PORTB , 00
BSF INTCON , 0x06
BSF INTCON , GIE
COMF PORTB , W
ANDLW 0x00
MOVWF 0x6E
MOVLW 0x07
MOVWF 0x1F
MOVLW 0xFF
MOVWF PORTA
BSF STATUS , RP0
CLRF 0x1A
BCF STATUS , RP0
CALL Label_002E
CLRF 0x6F
GOTO Label_002F
Label_002F CALL Label_0030
BTFSC 0x6F , 02
GOTO Label_0031
Label_0034 CLRF TMR0
BCF INTCON , T0IF
BTFSS 0x6F , 07
GOTO Label_0032
Label_0035 MOVLW 0x20
XORWF 0x7C , W
BTFSS STATUS , Z
GOTO Label_0033
BTFSS PORTB , 05
GOTO Label_0034
BTFSS INTCON , T0IF
GOTO Label_0035
Label_0032 BCF 0x6F , 07
CLRF TMR0
Label_0038 MOVLW 0x20
XORWF 0x7C , W
BTFSS STATUS , Z
GOTO Label_0033
MOVF PORTB , W
ANDLW 0x00
XORWF 0x6E , W
BTFSS STATUS , Z
GOTO Label_0036
BTFSS PORTB , 05
GOTO Label_0037
BTFSS TMR0 , 04
GOTO Label_0038
MOVLW 0x10
ADDWF 0x70 , f
BTFSC STATUS , C
INCF 0x71 , f
GOTO Label_0032
Label_0037 BSF PORTA , 00
BTFSC 0x6C , 00
BCF PORTB , 00
CALL Label_0039
BTFSC 0x6C , 00
BSF PORTB , 00
BCF 0x18 , 04
BSF 0x18 , 04
GOTO Label_002F
Label_0036 BSF PORTA , 00
MOVWF 0x70
CLRF 0x73
CLRF 0x72
BSF STATUS , C
Label_003B RLF 0x72 , f
MOVF 0x70 , W
ANDWF 0x72 , W
BTFSS STATUS , Z
GOTO Label_003A
INCF 0x73 , f
GOTO Label_003B
Label_003A XORWF 0x6E , f
ANDWF 0x6E , W
MOVLW 0x08
BTFSS STATUS , Z
ADDLW 0x80
ADDWF 0x73 , W
MOVWF 0x45
MOVLW 0xFF
MOVWF 0x40
MOVWF 0x41
MOVWF 0x42
MOVWF 0x43
MOVWF 0x44
CLRF 0x71
MOVLW 0x45
MOVWF FSR
CALL Label_003C
GOTO Label_002F
Label_0009 CLRF TMR0
BCF INTCON , T0IF
MOVLW 0x3D
MOVWF FSR
MOVLW 0x09
MOVWF 0x71
Label_003D CLRF INDF
INCF FSR , f
DECFSZ 0x71 , f
GOTO Label_003D
INCF 0x3D , f
MOVLW 0x40
MOVWF FSR
Label_003F BTFSC PORTB , 05
GOTO Label_003E
BTFSS INTCON , T0IF
GOTO Label_003F
GOTO Label_0040
Label_003E MOVF TMR0 , W
SUBWF 0x3E , W
SUBWF 0x3E , f
CALL Label_0041
Label_0043 BTFSS PORTB , 05
GOTO Label_0042
BTFSS INTCON , T0IF
GOTO Label_0043
Label_0040 MOVF 0x3D , W
XORWF INDF , f
MOVLW 0x45
MOVWF FSR
MOVF 0x45 , W
ADDLW 0xF0
BTFSS STATUS , C
GOTO Label_0044
MOVF 0x40 , W
MOVWF 0x48
MOVF 0x41 , W
MOVWF 0x49
MOVF 0x42 , W
MOVWF 0x4A
MOVF 0x43 , W
MOVWF 0x4B
MOVF 0x44 , W
MOVWF 0x4C
MOVF 0x45 , W
MOVWF 0x4D
Label_004A MOVLW 0xE8
XORWF 0x40 , W
MOVLW 0xCA
BTFSC STATUS , Z
MOVWF 0x40
MOVLW 0xD5
XORWF 0x40 , W
MOVLW 0xC1
BTFSC STATUS , Z
MOVWF 0x40
BSF STATUS , RP0
CLRF 0x1B
Label_0046 BCF STATUS , RP0
MOVF INDF , W
BSF STATUS , RP0
BSF 0x1C , 00
NOP
XORWF 0x1A , W
BTFSS STATUS , Z
GOTO Label_0045
INCF 0x1B , f
DECF FSR , f
BTFSC FSR , 06
GOTO Label_0046
BSF 0x1C , 00
NOP
MOVF 0x1A , W
INCF 0x1B , f
BSF 0x1C , 00
BCF STATUS , RP0
MOVWF 0x71
CALL Label_0047
MOVLW 0x45
MOVWF FSR
GOTO Label_003C
Label_0045 MOVLW 0x45
MOVWF FSR
MOVF 0x1B , W
ADDLW 0x08
ANDLW 0xF8
MOVWF 0x1B
BTFSS 0x1B , 05
GOTO Label_0046
CLRF 0x1B
CLRF 0x1A
BCF STATUS , RP0
Label_003C MOVF INDF , W
CALL Label_001A
DECF FSR , f
BTFSC FSR , 06
GOTO Label_003C
CALL Label_0048
RETURN
Label_0042 MOVF TMR0 , W
SUBWF 0x3F , W
SUBWF 0x3F , f
CALL Label_0041
BTFSS 0x45 , 07
GOTO Label_003F
BSF 0x6F , 07
GOTO Label_0040
Label_0041 CLRF TMR0
BCF INTCON , T0IF
MOVWF 0x70
BTFSC 0x70 , 07
SUBLW 0x00
ADDLW 0xFA
INCF 0x45 , f
RLF 0x3D , f
BTFSS STATUS , C
RETURN
MOVF 0x3D , W
XORWF INDF , f
MOVLW 0x01
MOVWF 0x3D
INCF FSR , f
MOVLW 0x45
XORWF FSR , W
BTFSS STATUS , Z
RETURN
BTFSC 0x6C , 02
GOTO Label_0049
MOVF 0x41 , W
MOVWF FSR
MOVF 0x42 , W
MOVWF 0x41
MOVF 0x43 , W
MOVWF 0x42
MOVF 0x44 , W
MOVWF 0x43
MOVF FSR , W
MOVWF 0x44
MOVLW 0x41
MOVWF FSR
RETURN
Label_0049 MOVF 0x42 , W
MOVWF 0x41
MOVF 0x43 , W
MOVWF 0x42
MOVF 0x44 , W
MOVWF 0x43
DECF FSR , f
CLRF 0x44
RETURN
Label_0044 BTFSS 0x6C , 04
RETURN
ADDLW 0x0D
BTFSS STATUS , Z
RETURN
MOVLW 0x0F
XORWF 0x40 , W
BTFSS STATUS , Z
RETURN
MOVF 0x48 , W
MOVWF 0x40
MOVF 0x49 , W
MOVWF 0x41
MOVF 0x4A , W
MOVWF 0x42
MOVF 0x4B , W
MOVWF 0x43
MOVF 0x4C , W
MOVWF 0x44
MOVF 0x4D , W
MOVWF 0x45
GOTO Label_004A
Label_0033 MOVLW 0x14
MOVWF 0x71
CLRF TMR0
Label_004D BCF INTCON , T0IF
Label_004C MOVLW 0x02
BTFSC 0x20 , 04
ADDWF 0x21 , W
XORWF 0x6D , W
BTFSC STATUS , Z
GOTO Label_004B
BTFSS INTCON , T0IF
GOTO Label_004C
DECFSZ 0x71 , f
GOTO Label_004D
MOVLW 0x81
Label_004E CALL Label_001A
GOTO Label_002F
Label_004B MOVLW 0x80
MOVF 0x74 , f
BTFSS STATUS , Z
GOTO Label_004E
GOTO Label_004F
Label_0065 BTFSC 0x6C , 01
BCF PORTB , 00
MOVLW 0x20
CALL Label_001A
CALL Label_0050
BSF PORTA , 00
BCF 0x7A , 04
Label_005C MOVF 0x23 , W
ANDLW 0x7F
MOVWF 0x73
BTFSC STATUS , Z
INCF 0x73 , f
Label_0056 CALL Label_0051
MOVF 0x24 , W
ANDLW 0x0F
MOVWF 0x75
MOVF 0x25 , W
MOVWF 0x72
Label_0055 MOVF 0x72 , W
IORWF 0x75 , W
BTFSC STATUS , Z
GOTO Label_0052
CALL Label_0053
CALL Label_0053
CALL Label_0053
CALL Label_0053
CALL Label_002C
NOP
GOTO Label_0054
Label_0054 DECF 0x72 , f
COMF 0x72 , W
BTFSC STATUS , Z
DECF 0x75 , f
GOTO Label_0055
Label_0052 DECFSZ 0x73 , f
GOTO Label_0056
MOVF 0x23 , W
ANDLW 0x7F
BTFSC STATUS , Z
GOTO Label_0057
BTFSS 0x7A , 04
GOTO Label_0058
Label_0057 BTFSS 0x3D , 07
GOTO Label_0059
BCF 0x3D , 07
MOVF 0x3D , W
MOVWF 0x23
ANDLW 0x7F
BTFSC STATUS , Z
INCF 0x23 , f
CLRF 0x3D
BSF 0x7A , 04
Label_0059 MOVLW 0x16
MOVWF 0x73
MOVLW 0x23
MOVWF 0x72
MOVLW 0x3D
MOVWF 0x75
Label_005A MOVF 0x75 , W
MOVWF FSR
MOVF INDF , W
MOVWF 0x76
MOVF 0x72 , W
MOVWF FSR
MOVF INDF , W
MOVWF 0x70
MOVF 0x76 , W
MOVWF INDF
MOVF 0x75 , W
MOVWF FSR
MOVF 0x70 , W
MOVWF INDF
INCF 0x72 , f
INCF 0x75 , f
DECFSZ 0x73 , f
GOTO Label_005A
MOVF 0x23 , W
ANDLW 0x7F
BTFSS 0x7A , 04
GOTO Label_005B
BTFSC STATUS , Z
GOTO Label_005C
DECF 0x23 , f
ADDLW 0xFF
BTFSS STATUS , Z
GOTO Label_005C
GOTO Label_0058
Label_005B BTFSC STATUS , Z
INCF 0x23 , f
GOTO Label_005C
Label_0058 BTFSC 0x6C , 01
BSF PORTB , 00
BSF 0x6F , 07
RETURN
Label_004F BTFSS 0x20 , 04
GOTO Label_005D
CALL Label_005E
GOTO Label_002F
Label_005D BSF PORTA , 00
CALL Label_005F
GOTO Label_002F
Label_0030 BCF INTCON , GIE
CLRF 0x74
CLRF 0x7A
MOVLW 0x20
MOVWF 0x7C
CLRF 0x6D
CLRF 0x21
INCF 0x21 , f
BSF INTCON , GIE
MOVF PORTB , f
CALL Label_0050
BCF PORTA , 00
BSF STATUS , RP0
MOVLW 0x40
MOVWF 0x1F
BCF STATUS , RP0
MOVLW 0x05
MOVWF 0x1F
RETURN
CALL Label_0060
CALL Label_0060
CALL Label_0060
CALL Label_0060
GOTO Label_0060
Label_0060 MOVLW 0x9E
MOVWF TMR0
BCF INTCON , T0IF
Label_0061 BTFSS INTCON , T0IF
GOTO Label_0061
RETURN
Label_0010 BSF PORTA , 00
MOVLW 0x04
CALL Label_001A
MOVLW 0x08
CALL Label_001A
MOVLW 0x01
CALL Label_001A
MOVLW 0x00
CALL Label_001A
MOVLW 0x00
CALL Label_001A
MOVLW 0xF3
GOTO Label_001A
Label_0011 BSF PORTA , 00
MOVLW 0x08
MOVWF 0x73
CLRF 0x40
RLF 0x22 , W
BSF STATUS , RP0
MOVWF 0x1B
RLF 0x1B , f
RLF 0x1B , f
Label_0062 BSF STATUS , RP0
BSF 0x1C , 00
INCF 0x1B , f
MOVF 0x1A , W
BCF STATUS , RP0
SUBWF 0x40 , f
CALL Label_001A
DECFSZ 0x73 , f
GOTO Label_0062
MOVF 0x40 , W
GOTO Label_001A
Label_0012 BSF PORTA , 00
MOVLW 0x08
MOVWF 0x73
MOVLW 0x23
MOVWF FSR
RLF 0x22 , W
BSF STATUS , RP0
MOVWF 0x1B
RLF 0x1B , f
RLF 0x1B , f
Label_0064 BCF STATUS , RP0
MOVF INDF , W
BCF 0x0C , 07
BSF STATUS , RP0
MOVWF 0x1A
BSF 0x1C , 02
BCF INTCON , GIE
MOVLW 0x55
MOVWF 0x1D
MOVLW 0xAA
MOVWF 0x1D
BSF 0x1C , 01
BSF INTCON , GIE
BCF STATUS , RP0
Label_0063 BTFSS 0x0C , 07
GOTO Label_0063
BSF STATUS , RP0
BCF 0x1C , 02
INCF 0x1B , f
BCF STATUS , RP0
INCF FSR , f
DECFSZ 0x73 , f
GOTO Label_0064
MOVLW 0x21
GOTO Label_001A
Label_0013 BSF PORTA , 00
CLRF 0x40
MOVF PORTA , W
SUBWF 0x40 , f
CALL Label_001A
MOVF PORTB , W
SUBWF 0x40 , f
CALL Label_001A
MOVLW 0x00
CALL Label_001A
MOVLW 0x00
CALL Label_001A
MOVF 0x40 , W
GOTO Label_001A
Label_0014 MOVLW 0x20
CALL Label_001A
CALL Label_0050
BSF PORTA , 00
MOVF 0x22 , W
MOVWF 0x71
MOVF 0x23 , W
BSF STATUS , RP0
MOVWF 0x1A
BCF STATUS , RP0
CALL Label_0047
GOTO Label_0048
Label_0015 COMF PORTB , W
ANDLW 0x00
MOVWF 0x6E
MOVLW 0x21
GOTO Label_001A
Label_0017 BCF 0x7A , 05
GOTO Label_0065
Label_0016 BSF 0x7A , 05
GOTO Label_0065
Label_0048 MOVF 0x71 , f
BTFSC STATUS , Z
RETURN
BSF STATUS , RP0
MOVF 0x1A , f
BCF STATUS , RP0
BTFSC STATUS , Z
GOTO Label_0066
Label_0067 BCF STATUS , RP0
CALL Label_0060
BSF STATUS , RP0
DECFSZ 0x1A , f
GOTO Label_0067
Label_0066 BCF STATUS , RP0
MOVLW 0x05
MOVWF FSR
BTFSC 0x71 , 03
INCF FSR , f
BSF STATUS , RP0
COMF 0x1B , W
BCF STATUS , RP0
BTFSS 0x71 , 07
GOTO Label_0068
BSF STATUS , RP0
MOVF 0x1B , W
BCF STATUS , RP0
IORWF INDF , f
RETURN
Label_0068 ANDWF INDF , f
RETURN
Label_0047 MOVLW 0x07
ANDWF 0x71 , W
MOVWF 0x72
INCF 0x72 , f
CLRF 0x75
BSF STATUS , C
Label_0069 RLF 0x75 , f
DECFSZ 0x72 , f
GOTO Label_0069
MOVLW 0x05
MOVWF FSR
BTFSC 0x71 , 03
INCF FSR , f
MOVF 0x75 , W
BTFSS 0x71 , 07
GOTO Label_006A
COMF 0x75 , W
ANDWF INDF , f
MOVF 0x75 , W
BTFSS 0x71 , 06
MOVLW 0x00
BSF STATUS , RP0
MOVWF 0x1B
BCF STATUS , RP0
GOTO Label_006B
Label_006A IORWF INDF , f
BTFSC 0x71 , 06
MOVLW 0x00
BSF STATUS , RP0
MOVWF 0x1B
BCF STATUS , RP0
Label_006B RETURN
Label_0024 BTFSS 0x0C , 01
RETURN
BCF 0x0C , 01
BTFSS 0x7A , 00
GOTO Label_006C
MOVLW 0x01
SUBWF 0x78 , f
BTFSS STATUS , C
DECF 0x79 , f
Label_006C MOVF 0x78 , W
IORWF 0x79 , W
BTFSS STATUS , Z
RETURN
BCF 0x7A , 00
RETURN
Label_0019 BSF PORTA , 00
MOVLW 0x03
MOVWF 0x73
MOVLW 0x22
MOVWF FSR
BSF STATUS , RP0
MOVLW 0x7D
MOVWF 0x1B
CALL Label_0064
Label_002E BSF STATUS , RP0
MOVLW 0x7C
MOVWF 0x1B
BSF 0x1C , 00
INCF 0x1B , f
MOVF 0x1A , W
XORLW 0xA5
BTFSC STATUS , Z
GOTO Label_006D
MOVLW 0x7C
MOVWF 0x1B
BCF STATUS , RP0
MOVLW 0xA5
CALL Label_006E
MOVLW 0x03
CALL Label_006E
MOVLW 0x00
CALL Label_006E
MOVLW 0x00
CALL Label_006E
BSF STATUS , RP0
Label_006D MOVLW 0x7D
MOVWF 0x1B
BSF 0x1C , 00
INCF 0x1B , f
MOVF 0x1A , W
BCF STATUS , RP0
MOVWF 0x6C
RETURN
Label_0018 BSF PORTA , 00
MOVLW 0x03
MOVWF 0x73
CLRF 0x40
BSF STATUS , RP0
MOVLW 0x7D
MOVWF 0x1B
GOTO Label_0062
Label_0050 BTFSS 0x0C , 04
GOTO Label_0050
BSF STATUS , RP0
Label_006F BTFSS 0x18 , 01
GOTO Label_006F
BCF STATUS , RP0
CALL Label_0053
CALL Label_0053
RETURN
Label_0023 MOVF FSR , W
MOVWF 0x76
MOVF 0x27 , W
BTFSS 0x7A , 05
GOTO Label_0070
GOTO Label_0071
Label_0025 CLRF 0x70
BTFSC 0x7A , 05
GOTO Label_0071
INCF 0x72 , f
BCF STATUS , C
RLF 0x7B , f
BTFSC STATUS , C
INCF 0x7B , f
BTFSC STATUS , C
INCF FSR , f
MOVF FSR , W
MOVWF 0x76
MOVF 0x7B , W
ANDWF INDF , W
BTFSS STATUS , Z
INCF 0x70 , f
MOVLW 0x29
BTFSS 0x72 , 00
MOVLW 0x2B
ADDWF 0x70 , W
MOVWF FSR
MOVF INDF , W
BTFSC 0x72 , 07
MOVF 0x28 , W
Label_0070 MOVWF 0x70
CLRF 0x77
ADDWF 0x70 , f
BTFSC STATUS , C
INCF 0x77 , f
MOVF 0x76 , W
MOVWF FSR
RETURN
Label_0071 MOVF 0x7B , W
MOVWF FSR
BTFSC 0x7A , 02
BSF STATUS , IRP
INCF 0x72 , f
CALL Label_0072
MOVF INDF , W
BCF STATUS , IRP
MOVWF 0x70
CLRF 0x77
BTFSS 0x70 , 07
RETURN
MOVWF 0x77
MOVF 0x71 , W
XORWF 0x72 , W
BTFSC STATUS , Z
RETURN
BCF 0x77 , 07
MOVF 0x7B , W
MOVWF FSR
BTFSC 0x7A , 02
BSF STATUS , IRP
INCF 0x72 , f
CALL Label_0072
MOVF INDF , W
BCF STATUS , IRP
MOVWF 0x70
RETURN
Label_0072 INCF 0x7B , f
BTFSC 0x7A , 01
GOTO Label_0073
MOVF 0x7B , W
ANDLW 0x7F
XORLW 0x68
BTFSS STATUS , Z
RETURN
BTFSC 0x7B , 07
GOTO Label_0074
MOVLW 0xA0
MOVWF 0x7B
RETURN
Label_0074 MOVLW 0x20
MOVWF 0x7B
BSF 0x7A , 02
RETURN
RETURN
Label_0073 MOVF 0x7B , W
XORLW 0x68
MOVLW 0x20
BTFSC STATUS , Z
MOVWF 0x7B
CLRF 0x72
DECFSZ 0x6D , W
GOTO Label_0075
INCF 0x72 , f
RETURN
Label_006E BCF 0x0C , 07
BSF STATUS , RP0
MOVWF 0x1A
BSF 0x1C , 02
BCF INTCON , GIE
MOVLW 0x55
MOVWF 0x1D
MOVLW 0xAA
MOVWF 0x1D
BSF 0x1C , 01
BSF INTCON , GIE
BCF STATUS , RP0
Label_0076 BTFSS 0x0C , 07
GOTO Label_0076
BSF STATUS , RP0
BCF 0x1C , 02
INCF 0x1B , f
BCF STATUS , RP0
RETURN
Label_0031 CALL Label_0030
BTFSS 0x6F , 02
GOTO Label_002F
BSF STATUS , RP0
MOVLW 0xCB
MOVWF 0x1F
MOVLW 0xFF
MOVWF 0x12
BCF STATUS , RP0
MOVLW 0x05
MOVWF 0x1F
CLRF 0x10
CLRF 0x0F
MOVLW 0x05
MOVWF 0x0E
MOVLW 0x04
MOVWF 0x12
BCF 0x7A , 00
CALL Label_0077
MOVLW 0xA0
MOVWF FSR
MOVF 0x1F , f
BCF 0x0C , 06
CLRF TMR0
BCF INTCON , T0IF
Label_0079 MOVLW 0x20
XORWF 0x7C , W
BTFSS STATUS , Z
GOTO Label_0033
BTFSS 0x1F , 07
GOTO Label_0078
BTFSS TMR0 , 07
GOTO Label_0079
CLRF TMR0
MOVLW 0x80
ADDWF 0x70 , f
BTFSC STATUS , C
INCF 0x71 , f
GOTO Label_0079
Label_0078 BSF 0x10 , 00
BSF STATUS , RP0
MOVLW 0xC8
MOVWF 0x1F
BCF STATUS , RP0
MOVF TMR0 , W
ADDWF 0x70 , f
BTFSC STATUS , C
INCF 0x71 , f
MOVF 0x71 , W
CLRF TMR0
BCF INTCON , T0IF
Label_007A BTFSS 0x0C , 04
GOTO Label_007A
MOVWF 0x19
MOVF 0x70 , W
Label_007B BTFSS 0x0C , 04
GOTO Label_007B
MOVWF 0x19
CLRF 0x70
CLRF 0x71
Label_0082 INCF 0x70 , f
BTFSC STATUS , Z
INCF 0x71 , f
BTFSC 0x1F , 07
GOTO Label_007C
CLRF 0x11
Label_0080 BTFSS 0x11 , 07
GOTO Label_007D
DECFSZ 0x70 , W
GOTO Label_007E
MOVF 0x71 , W
BTFSS STATUS , Z
GOTO Label_007E
BSF 0x7A , 00
CLRF 0x11
Label_007D BTFSC 0x0F , 07
GOTO Label_007F
Label_008E BTFSS 0x1F , 07
GOTO Label_0080
Label_007C CLRF 0x11
BSF STATUS , RP0
MOVLW 0xC9
MOVWF 0x1F
BCF STATUS , RP0
Label_0081 BTFSC 0x11 , 07
GOTO Label_007E
BTFSC 0x1F , 07
GOTO Label_0081
BSF STATUS , RP0
MOVLW 0xC7
MOVWF 0x1F
BCF STATUS , RP0
GOTO Label_0082
Label_007E CALL Label_0083
BSF STATUS , RP0
MOVLW 0xCB
MOVWF 0x1F
BCF STATUS , RP0
BTFSC 0x7A , 00
GOTO Label_0084
BCF PORTB , 00
MOVF 0x71 , W
BTFSS STATUS , Z
GOTO Label_0085
BTFSC 0x70 , 07
GOTO Label_0085
MOVF 0x70 , W
CALL Label_001A
GOTO Label_0086
Label_0084 MOVLW 0x00
CALL Label_001A
GOTO Label_0086
Label_0085 MOVF 0x71 , W
IORLW 0x80
CALL Label_001A
MOVF 0x70 , W
CALL Label_001A
Label_0086 MOVLW 0x20
XORWF 0x7C , W
BTFSS STATUS , Z
GOTO Label_0087
Label_0089 BTFSC 0x0F , 07
GOTO Label_0088
Label_008C BTFSC 0x1F , 07
GOTO Label_0089
BSF STATUS , RP0
MOVLW 0xC8
MOVWF 0x1F
BCF STATUS , RP0
CALL Label_008A
CLRF 0x70
CLRF 0x71
BCF 0x7A , 00
GOTO Label_0082
Label_0088 BTFSS 0x6C , 03
GOTO Label_008B
MOVF 0x0F , W
ADDLW 0x02
BTFSS STATUS , C
GOTO Label_008C
MOVLW 0x01
MOVWF 0x71
MOVLW 0xFD
MOVWF 0x70
GOTO Label_008D
Label_007F MOVF 0x0F , W
ADDLW 0x02
BTFSS STATUS , C
GOTO Label_008E
MOVLW 0x01
MOVWF 0x71
MOVLW 0xFD
MOVWF 0x70
GOTO Label_008D
Label_008B MOVLW 0x01
MOVWF 0x71
MOVLW 0x01
MOVWF 0x70
Label_008D MOVLW 0xFF
CALL Label_001A
CLRF 0x12
BCF 0x10 , 00
BSF PORTB , 00
BCF 0x18 , 04
BSF 0x18 , 04
GOTO Label_0031
Label_0087 CLRF 0x12
BCF 0x10 , 00
BSF PORTB , 00
GOTO Label_0079
Label_0077 GOTO Label_008F
Label_008F GOTO Label_0090
Label_0090 GOTO Label_0091
Label_0091 GOTO Label_0092
Label_0092 GOTO Label_0093
Label_0093 GOTO Label_0094
Label_0094 GOTO Label_0095
Label_0095 GOTO Label_0096
Label_0096 GOTO Label_0097
Label_0097 GOTO Label_0098
Label_0098 NOP
RETURN
Label_0083 BCF 0x10 , 00
Label_0099 BSF STATUS , RP0
BTFSS 0x18 , 01
GOTO Label_0099
BCF STATUS , RP0
BTFSS 0x0E , 07
DECF 0x0F , f
MOVF 0x0F , W
MOVWF 0x19
ANDLW 0xFF
BTFSC STATUS , Z
BSF 0x7A , 00
MOVF 0x0E , W
XORLW 0x80
MOVWF 0x19
CLRF 0x0F
MOVLW 0x8F
MOVWF 0x0E
BSF 0x10 , 00
RETURN
Label_008A BCF 0x10 , 00
Label_009A BSF STATUS , RP0
BTFSS 0x18 , 01
GOTO Label_009A
BCF STATUS , RP0
MOVF 0x0F , W
MOVWF 0x19
MOVF 0x0E , W
MOVWF 0x19
CLRF 0x0F
MOVLW 0x0C
MOVWF 0x0E
BSF 0x10 , 00
RETURN
Label_000F MOVLW 0x1E
MOVWF 0x71
CLRF TMR0
BCF INTCON , T0IF
MOVLW 0x20
CALL Label_001A
BTFSC 0x6C , 01
BCF PORTB , 00
CALL Label_0050
BSF PORTA , 00
CALL Label_0053
CALL Label_0053
CALL Label_0075
CALL Label_0075
Label_009C BTFSC 0x6D , 03
GOTO Label_009B
BTFSS INTCON , T0IF
GOTO Label_009C
BCF INTCON , T0IF
DECFSZ 0x71 , f
GOTO Label_009C
BTFSC 0x6C , 01
BSF PORTB , 00
RETURN
Label_009B MOVLW 0x01
MOVWF 0x71
BSF 0x7A , 05
CALL Label_009D
MOVLW 0x21
CALL Label_001A
CALL Label_0050
BSF PORTA , 00
CALL Label_0053
CALL Label_0053
BTFSC 0x6C , 01
BSF PORTB , 00
RETURN
Label_0075 BCF INTCON , GIE
DECF 0x6D , f
MOVLW 0xE0
ANDWF 0x6D , W
BTFSC STATUS , Z
BCF PORTA , 00
BSF INTCON , GIE
RETURN
ORG 0x2000
DATA 0x0F
DATA 0x0F
DATA 0x0F
DATA 0x0F
ORG 0x2007
DATA 0x0A
ORG 0x2100
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
DATA 0xFF
ENDНомер прошивки не имеет к самой прошивке никакого отношения. В исходном листинге автора может быть сколь угодно много комментов, которые содержат пояснения к коду, но в сам hex эти комменты, естественно, не компилируются. Поэтому дизассемблером из hex будет восстановлен ФОРМАЛЬНЫЙ asm-исходник. Т.е. имена переменных НЕ МОГУТ быть восстановлены, они останутся физическими адресами МК. Имена меток так же будут восстановлены формально.Emmys писал(а):1. этого достаточно что бы прошить? Настораживает include "P16FXX.inc". где его взять?
2. где то скрыта версия прошивки... можно узнать какая версия прошивки? моя текущая прошивка 5.9 Помогите определить