Jag har försökt programmera en 16f628 flera i dagar....
Kan inte fatta vad som är fel, tycker jag har provat allt. Jag har tillgång till en "proffs"-programmerare, jag har programmerat en 16f84 utan några som helst problem så den verkar ju fungera riktigt. Jag har gjort ett riktigt enkelt progrm som bara blinkar en lysdiod, men inte ens det funkar.
Det enda som händer är att lysdioden lyser konstant när MCLR är på+ och slocknar på-.
Finns det någon som kan vara snäll och hjälpa mig!
Så här ser det ut:
Programmerare: Advantech LabTool 48 uppdaterad till LabTool 48XP
Program: Advantech LabTool 48
4 Mhz kristall
Ansluningar:
Ben 5 jord
Ben 14 +
Ben 4 + (MCLR)
Ben 11 (Rb5) lysdiod till jord via 1K
Ben 15 Kristall + 15 pF till jord
Ben 16 - " - -"-
Alla andra ben "hänger i luften" men är programmerade till utgångar
list p=16f628
#include <p16f628.inc>
__CONFIG _CP_OFF & _WDT_OFF & _BODEN_ON & _PWRTE_ON & _XT_OSC & _MCLRE_ON & _LVP_OFF
;***** VARIABLE DEFINITIONS
STATUS EQU 0x03
porta EQU 0x05
portb EQU 0x06
trisa EQU 0x85
trisb EQU 0x86
w_temp EQU 0x70
status_temp EQU 0x71
var1 EQU 0x72
var2 EQU 0x73
;*****************************************************
ORG 0x000
goto init
ORG 0x004
movwf w_temp
movf STATUS,w
movwf status_temp
call wait
movf status_temp,w
movwf STATUS
swapf w_temp,f
swapf w_temp,w
retfie
;*****************************************************
init clrw
movwf porta
bsf STATUS,5
bcf STATUS,6
movlw 0x00
movwf trisa
movlw b'00000000'
movwf trisb
bcf STATUS,5
goto main
;*****************************************************
wait movlw 0xff
movwf var2
loop2 movlw 0xff
movwf var1
loop1 decfsz var1,1
goto loop1
decfsz var2,1
goto loop2
return
;**********************************************************
main clrwdt
bsf portb,5
nop
call wait
nop
bcf portb,5
nop
goto main
end
PIC 16f628-problem
-
- Inlägg: 2360
- Blev medlem: 16 september 2003, 17:18:13
- Ort: Dubai, United Arab Emirates
- Kontakt:
Jag är nästan alltid snäll... Ibland iallafall...
Lysdioden blinkar som den ska. Den lyser i typ en sekund eller så och är sedan släckt i 0.00001 sekunder. :-)
Det fungerar säkert bättre med både en wait vid tänd och en wait vid släckt lysdiod.
Lysdioden blinkar som den ska. Den lyser i typ en sekund eller så och är sedan släckt i 0.00001 sekunder. :-)
Det fungerar säkert bättre med både en wait vid tänd och en wait vid släckt lysdiod.
Kod: Markera allt
bcf portb,5
nop
call wait <--- Lägg till waiten här åxå!
goto main
end
- EagleSpirit
- Inlägg: 1288
- Blev medlem: 27 maj 2003, 23:15:48
- Ort: Västerås
- Kontakt: