Zdravím všechny návštěvníky tohoto fóra
Chtěl bych Vás poprosit o pomoc a radu. Už nějaký čas se učím programovat PIC. Začal jsem s 12F629, 675 a teď chci přejít na 12F1572, kde bych využil možnost změny frekvence interního oscilátoru a hlavně změnu času WDT.
Narazil jsem ale na problém, že mnou používaná verze MPASM v5.51, ani PICkit3 v3.1 tento procesor nevidí a není v jejich seznamech. Programy používám na PC s Win 7, 32bit.
Po prohledání fór jsem nainstaloval na jiný PC s WIN 8, 64bit. novou verzi MPLAB X-IDE s MPASM v5.87. Zde už zmíněný procesor najdu, přeložím program do HEX a dokonce mi na tomto PC “funguje” i PICkit3. V seznamu PICkit3 sice procesor není, ale po manuálním vložení souboru include do jeho knihovny, jej dokáže automaticky detekovat. Soubor HEX přenesu do PIC, ale prográmek nefunguje.
Nevím ale, na co se mám zaměřit, kde je problém. Jestli v hlavičce programu a nastavení procesoru, nebo v komunikaci s PICkit3.
Můžete se mi prosím někdo mrknout na ten program, jestli tam nemám chyby, zvláště v nastavení procesoru, položky CONFIG a START. Tam si nejsem jistý. Samotný program jsem napsal jednoduchý, jen blikání LED. Jde mi teď o rozchození procesoru. Na PIC12F675 mi program funguje.
Nastavení PIC potřebuji jak je psáno v komentářích programu
Předem pěkně děkuji
Luboš
LIST P=12F1572
#include "p12f1572.inc"
__CONFIG _CONFIG1, _FOSC_INTOSC & _WDTE_ON & _PWRTE_OFF & _MCLRE_OFF & _CP_OFF & _BOREN_OFF & _CLKOUTEN_OFF
__CONFIG _CONFIG2, _WRT_OFF & _PLLEN_OFF & _STVREN_ON & _BORV_LO & _LPBOREN_OFF & _LVP_ON
cblock 0x20
CNT1
CNT2
CNT3
endc
#define LED1 PORTA,0
#define LED2 PORTA,1
#define LED3 PORTA,2
#define TL_3 PORTA,3
#define TL_2 PORTA,4
#define TL_1 PORTA,5
org 00H
goto START
;*************************************************************************************************************************
;***********************************zacatek programu ***************************************************************
START nop
BANKSEL PORTA
CLRF PORTA ;Init PORTA
BANKSEL LATA ;Data Latch
CLRF LATA
BANKSEL ANSELA
CLRF ANSELA ;digital I/O
BANKSEL TRISA
movlw 38H ;port 3 4 5 vstup/port 0 1 2 výstup
movwf TRISA
BANKSEL WPUA
movlw 30H ;nastavení wpu 4 5
movwf WPUA ;ok
BANKSEL TRISA
movlw 6AH ;nastavení oscilátoru na 4MHz
movwf OSCCON
BANKSEL TRISA
movlw 13H ;nastavení WDT na 512ms
movwf WDTCON
clrf PORTA ;vynuluj výstupy
;**************************** hlavní program *******
CYKLUS
bsf LED1 ;zapne LED1
call BLIK500 ;čekací smyčka
bcf LED1 ;vypne LED1
call BLIK500 ;čekací smyčka
clrwdt
goto CYKLUS ;
;**************************** cekací smycky **********************************************************************************
BLIK500 ;čekací smyčka 500ms
MOVLW D’11’
MOVWF CNT3
BLIK_LOOP1
MOVLW D’225’
MOVWF CNT2
BLIK_LOOP2
MOVLW D’66’
MOVWF CNT1
BLIK_LOOP3
DECFSZ CNT1,1
GOTO BLIK_LOOP3
DECFSZ CNT2,1
GOTO BLIK_LOOP2
DECFSZ CNT3
GOTO BLIK_LOOP1
RETURN
end