Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Подскажите что добавить в код 
:(
    Опции темы
z800
Дата 5.2.2017, 13:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 5.2.2017

Репутация: нет
Всего: нет



Здравствуйте, помогите пожалуйста с кодом.
В програмирование к сожалению не шарю.
Есть прошивка от Олега для МК PIC18F252.
При включении устройства мк находится в режиме ожидании кода с COM порта, когда мк получает
код, зажигается лампочка 1, дальше по нажатию кнопки этот код выходит в другое устройство 
и лампочка 1 тухнет, зажигается лампочка 2 и остается в таком состоянии.
Нужно чтобы устройство перезагружалось или как правильней сделать не знаю, вобщем чтобы мк 
переходил в первоначальное положение.
Пробывал сделать петлю не получилось, не компелируется, видно что-то не так сделал.
Подскажите что добавить в код чтобы соблюдалось условие.
Спасибо.

Вот код:
Код


;********************************************************************************************
    LIST P=18F252                     
    #include <P18F252.INC>    
    radix dec
;********************************************************************************************
    CONFIG    OSC = HSPLL      
    CONFIG    WDT = OFF       
    CONFIG    LVP = OFF  
;********************************************************************************************
NLF              EQU     0x021

bank0            EQU     0x022         
bank1            EQU     0x023       
bank2            EQU     0x024
bank3            EQU     0x025
bank4            EQU     0x026
bank5            EQU     0x027

REGISTR_STATUS   EQU     0x028

ADRES            EQU     0x029  

REGISTR_PRIEM    EQU     0x030

reg1             EQU     0x050        
reg2             EQU     0x051
reg3             EQU     0x052
reg4             EQU     0x053
reg5             EQU     0x054
reg6             EQU     0x055
reg7             EQU     0x056
reg8             EQU     0x057
reg9             EQU     0x058
reg10            EQU     0x059

reg11            EQU     0x05A        
reg12            EQU     0x05B
reg13            EQU     0x05C
reg14            EQU     0x05D
reg15            EQU     0x05E
reg16            EQU     0x05F
reg17            EQU     0x060
reg18            EQU     0x061
reg19            EQU     0x062
reg20            EQU     0x063

reg21            EQU     0x064        
reg22            EQU     0x065
reg23            EQU     0x066
reg24            EQU     0x067
reg25            EQU     0x068
reg26            EQU     0x069
reg27            EQU     0x06A
reg28            EQU     0x06B
reg29            EQU     0x06C
reg30            EQU     0x06D

reg31            EQU     0x06E        
reg32            EQU     0x06F
reg33            EQU     0x070
reg34            EQU     0x071
reg35            EQU     0x072
reg36            EQU     0x073
reg37            EQU     0x074
reg38            EQU     0x075
reg39            EQU     0x076
reg40            EQU     0x077

;********************************************************************************************
        ORG    0x0000            
;********************************************************************************************        
;********************************
        bsf     TRISC,6
        bsf     TRISC,7                  ;настроил порты
        bsf     RCSTA,7
;********************************
        movlw   d'129'                    ;настройка бодовой скорости
        movwf   SPBRG
;********************************
        movlw   b'10100110'              ;пеедача ВКЛ
        movwf   TXSTA
;******************************** 
        movlw   b'10110000'              ;прием ВКЛ
        movwf   RCSTA
;********************************
        bsf     REGISTR_STATUS,0
werh
;*************************************
        movlw   b'00000110'      ;порт А как цифровой ввод вывод 
        movwf   ADCON1
;********************************
        bcf        TRISA,0         
        bcf        TRISA,1              
        bsf        TRISA,2              
        bcf        TRISA,3              
        bsf        TRISA,4 
        bsf        TRISA,5
;********************************       
        bsf        TRISC,0 
        bsf        TRISC,1              
        bsf        TRISC,2              
        bsf        TRISC,3              
        bsf        TRISC,4 
        bsf        TRISC,5
        bsf     TRISC,6
        bsf     TRISC,7 
;********************************
        bsf        TRISB,0 
        bsf        TRISB,1              
        bsf        TRISB,2              
        bsf        TRISB,3              
        bsf        TRISB,4 
        bsf        TRISB,5
        bsf     TRISB,6
        bsf     TRISB,7 
        bcf     INTCON2,7
;********************************
        clrf    LATA
        clrf    LATC


        call    prinimaem
        movwf   reg40
        call    prinimaem
        movwf   reg39 
        call    prinimaem
        movwf   reg38 
        call    prinimaem
        movwf   reg37
        call    prinimaem
        movwf   reg36 
        call    prinimaem
        movwf   reg35 
        call    prinimaem
        movwf   reg34 
        call    prinimaem
        movwf   reg33 
        call    prinimaem
        movwf   reg32
        call    prinimaem
        movwf   reg31 
        call    prinimaem
        movwf   reg30 
        call    prinimaem
        movwf   reg29
        call    prinimaem
        movwf   reg28  
        call    prinimaem
        movwf   reg27 
        call    prinimaem
        movwf   reg26
        call    prinimaem
        movwf   reg25
        call    prinimaem
        movwf   reg24
        call    prinimaem
        movwf   reg23 
        call    prinimaem
        movwf   reg22 
        call    prinimaem
        movwf   reg21 
        call    prinimaem
        movwf   reg20 
        call    prinimaem
        movwf   reg19 
        call    prinimaem
        movwf   reg18 
        call    prinimaem
        movwf   reg17
        call    prinimaem
        movwf   reg16 
        call    prinimaem
        movwf   reg15 
        call    prinimaem
        movwf   reg14 
        call    prinimaem
        movwf   reg13  
        call    prinimaem
        movwf   reg12 
        call    prinimaem
        movwf   reg11
        call    prinimaem
        movwf   reg10
        call    prinimaem
        movwf   reg9 
        call    prinimaem
        movwf   reg8
        call    prinimaem
        movwf   reg7
        call    prinimaem
        movwf   reg6
        call    prinimaem
        movwf   reg5
        call    prinimaem
        movwf   reg4
        call    prinimaem
        movwf   reg3 
        call    prinimaem
        movwf   reg2
        call    prinimaem
        movwf   reg1 




        movff   reg1,TXREG        
        btfss   TXSTA,TRMT
        bra     $-2  
       
        movff   reg2,TXREG        
        btfss   TXSTA,TRMT
        bra     $-2

        movff   reg3,TXREG        
        btfss   TXSTA,TRMT
        bra     $-2

        movff   reg4,TXREG        
        btfss   TXSTA,TRMT
        bra     $-2



        bsf     LATA,0                ;светодио


front2
        movlw   d'30'
        movwf   bank5
front
        btfss   PORTA,2
        bra     front2
  
        decfsz  bank5,f 
        bra     front 


 


        bra     wibros


;**************************************   ПРИЕМ БИТ
prinimaem

;*************************************   

        btfss   PIR1,RCIF        
        bra     $-2
        movff   RCREG,REGISTR_PRIEM  

        bcf     REGISTR_PRIEM,7 
        bcf     REGISTR_PRIEM,6 
        bcf     REGISTR_PRIEM,5 
        bcf     REGISTR_PRIEM,4 

 
        movlw    high NON_LINEAR_FUNCTION
        movwf    PCLATH
        rlncf    REGISTR_PRIEM,w
        addlw    low  NON_LINEAR_FUNCTION
        btfsc    STATUS,C
        incf    PCLATH,f
        movwf    PCL

NON_LINEAR_FUNCTION


        retlw   B'00001000' 
        retlw   B'10000000' 
        retlw   B'01000000' 
        retlw   B'11001000' 
        retlw   B'00100000' 
        retlw   B'10101000' 
        retlw   B'01101000' 
        retlw   B'11100000' 
        retlw   B'00010000' 
        retlw   B'10011000'
        retlw   B'01011000' 
        retlw   B'11010000'
        retlw   B'00111000' 
        retlw   B'10110000' 
        retlw   B'01110000' 
        retlw   B'11111000'

;************************************** 
wibros

        call    LOG_01
        call    LOG_01 
        call    LOG_01 
        call    LOG_01 
        call    LOG_01 
        call    LOG_01
        call    LOG_01 
        call    LOG_01 
        call    LOG_01 
        call    LOG_01
        call    LOG_01
        call    LOG_01 
        call    LOG_01 
        call    LOG_01 
        call    LOG_01 
        call    LOG_01
        call    LOG_01 
        call    LOG_01 
        call    LOG_01 
        call    LOG_01
        call    LOG_01
        call    LOG_01 
        call    LOG_01 
        call    LOG_01 
        call    LOG_01 
        call    LOG_01
        call    LOG_01 
        call    LOG_01 
        call    LOG_01 
        call    LOG_01
        call    LOG_01
        call    LOG_01 
        call    LOG_01 
        call    LOG_01 
        call    LOG_01 
        call    LOG_01
        call    LOG_01 
        call    LOG_01 
        call    LOG_01 
        call    LOG_01
        call    LOG_01 
        call    LOG_01 
        call    LOG_01 
        call    LOG_01
        call    LOG_01

        movlw    d'40'            
     movwf    bank0
wibros34


        movlw    d'3'            
     movwf    bank5
wibros31              
        btfss   reg1,7         
        bcf     STATUS,C 
        btfsc   reg1,7 
        bsf     STATUS,C 

        rrcf    reg40
        rrcf    reg39     
        rrcf    reg38
        rrcf    reg37
        rrcf    reg36
        rrcf    reg35
        rrcf    reg34
        rrcf    reg33
        rrcf    reg32
        rrcf    reg31
        rrcf    reg30
        rrcf    reg29     
        rrcf    reg28
        rrcf    reg27
        rrcf    reg26
        rrcf    reg25
        rrcf    reg24
        rrcf    reg23
        rrcf    reg22
        rrcf    reg21
        rrcf    reg20
        rrcf    reg19     
        rrcf    reg18
        rrcf    reg17
        rrcf    reg16
        rrcf    reg15
        rrcf    reg14   
        rrcf    reg13
        rrcf    reg12
        rrcf    reg11
        rrcf    reg10
        rrcf    reg9     
        rrcf    reg8
        rrcf    reg7
        rrcf    reg6
        rrcf    reg5
        rrcf    reg4
        rrcf    reg3
        rrcf    reg2
        rrcf    reg1


        decfsz  bank5,f 
        bra     wibros31





        movlw    d'5'            
     movwf    bank5
wibros3              
        btfss   reg1,7         
        bcf     STATUS,C 
        btfsc   reg1,7 
        bsf     STATUS,C 

        rrcf    reg40
        rrcf    reg39     
        rrcf    reg38
        rrcf    reg37
        rrcf    reg36
        rrcf    reg35
        rrcf    reg34
        rrcf    reg33
        rrcf    reg32
        rrcf    reg31
        rrcf    reg30
        rrcf    reg29     
        rrcf    reg28
        rrcf    reg27
        rrcf    reg26
        rrcf    reg25
        rrcf    reg24
        rrcf    reg23
        rrcf    reg22
        rrcf    reg21
        rrcf    reg20
        rrcf    reg19     
        rrcf    reg18
        rrcf    reg17
        rrcf    reg16
        rrcf    reg15
        rrcf    reg14   
        rrcf    reg13
        rrcf    reg12
        rrcf    reg11
        rrcf    reg10
        rrcf    reg9     
        rrcf    reg8
        rrcf    reg7
        rrcf    reg6
        rrcf    reg5
        rrcf    reg4
        rrcf    reg3
        rrcf    reg2
        rrcf    reg1

        btfss   STATUS,C 
        call    LOG_01      
        btfsc   STATUS,C 
        call    LOG_11  

        decfsz  bank5,f 
        bra     wibros3


        decfsz  bank0,f 
        bra     wibros34


        call    LOG_01
        call    LOG_01 
        call    LOG_01 
        call    LOG_01 
        call    LOG_01 
        call    LOG_01
        call    LOG_01 
        call    LOG_01 
        call    LOG_01 
        call    LOG_01
        call    LOG_01
        call    LOG_01 
        call    LOG_01 
        call    LOG_01 
        call    LOG_01 
        call    LOG_01
        call    LOG_01 
        call    LOG_01 
        call    LOG_01 
        call    LOG_01
        call    LOG_01
        call    LOG_01 
        call    LOG_01 
        call    LOG_01 
        call    LOG_01 
        call    LOG_01
        call    LOG_01 
        call    LOG_01 
        call    LOG_01 
        call    LOG_01
        call    LOG_01
        call    LOG_01 
        call    LOG_01 
        call    LOG_01 
        call    LOG_01 
        call    LOG_01
        call    LOG_01 
        call    LOG_01 
        call    LOG_01 
        call    LOG_01
        call    LOG_01
        call    LOG_01 
        call    LOG_01 
        call    LOG_01 
        call    LOG_01 
        call    LOG_01
        call    LOG_01 
        call    LOG_01 
        call    LOG_01 
        call    LOG_01
        call    LOG_01
        call    LOG_01 
        call    LOG_01 
        call    LOG_01 
        call    LOG_01 
        call    LOG_01
        call    LOG_01 
        call    LOG_01 
        call    LOG_01 
        call    LOG_01






        bcf     LATA,0                ;СВЕТОДИОД
        bsf     LATA,1                ;СВЕТОДИОД

        nop
        bra    $-2

;********************************************************************************************
LOG_01 

        btfss   REGISTR_STATUS,0
        bra     LOG_00 

        bsf     LATA,3                
        movlw   d'255'            
     movwf    bank1     
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop    
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        decfsz  bank1,f 
        bra     $-40

        bcf     REGISTR_STATUS,0

        return 
;*****************************************      
LOG_00 

        btfsc   REGISTR_STATUS,0
        bra     LOG_01 

        bcf     LATA,3              
        movlw   d'255'            
     movwf    bank1         
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop    
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        decfsz  bank1,f 
        bra     $-40
     
        bsf     REGISTR_STATUS,0

        return
;********************************************************************************************
LOG_11 

        btfss   REGISTR_STATUS,0
        bra     LOG_10

        bsf     LATA,3                
        movlw   d'127'            
     movwf    bank1    
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        decfsz  bank1,f 
        bra      $-40
        
        bcf     LATA,3            
        movlw   d'127'            
     movwf   bank1    
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        decfsz  bank1,f 
        bra     $-40

        bsf     REGISTR_STATUS,0

        return
;*****************************************
LOG_10 

        btfsc   REGISTR_STATUS,0
        bra     LOG_11 


        bcf     LATA,3                
        movlw   d'127'            
     movwf    bank1    
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        decfsz  bank1,f 
        bra      $-40
        
        bsf     LATA,3            
        movlw   d'127'            
     movwf   bank1    
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        decfsz  bank1,f 
        bra     $-40

        bcf     REGISTR_STATUS,0

        return
;*****************************************

    


        END



Присоединённый файл ( Кол-во скачиваний: 0 )
Присоединённый файл  исходник.txt 15,88 Kb
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Asm для начинающих"
MAKCim
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • Не забывайте пользоваться кнопкой КОД.
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к разделу форума. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, MAKCim.

 
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Asm для начинающих | Следующая тема »


 




[ Время генерации скрипта: 0.1267 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.