allt funkar utom att ben 5 ( gpio 2) är hög hela tiden så jag körde felsökaren och gjorde en "disassembly på koden hittade följande som verkar vara flel:
58: SETUP
59: BSF STATUS,RP0 ; Select Bank 1 of data memory
000006 1683 BSF STATUS, 0x5
60: MOVLW 0xD7
000007 30D7 MOVLW 0xd7
61: MOVWF OPTION_REG ;Vill göra det här
000008 081 MOVWF TMR0 ; men det här händer, varför?, verkar inte som att den har bytt bank
62: CALL 3FFh
000009 23FF CALL 0x3ff
63: MOVWF OSCCAL ; samma här, men klockan varkar funka, kanske inte så viktigt med kalibrering?
00000A 090 MOVWF T1CON
64: BCF STATUS,RP0 ; Select Bank 0 of data memory
00000B 1283 BCF STATUS, 0x5
65: ;---------------------------------------------------------
66: BCF INTCON,7 ; STÄNGER AV INTERRUPT
00000C 138B BCF INTCON, 0x7
hela koden hittar ni på http://gusvo085.mine.nu/ibutton/ibutton.asm
Sista felet i min ibutton-kod
-
- Inlägg: 2360
- Blev medlem: 16 september 2003, 17:18:13
- Ort: Dubai, United Arab Emirates
- Kontakt:
Jag tror inte att disassemblern är såpass intelligent att den känner av vilken bank som är val och visar accesserna på rätt sätt.
Om man tänker sig följande scenario. Vilken bank skulle disassemblern visa då?
Beroende på om man anropar Noll eller Ett så kommer koden att stoppa i 0xD7 i antingen TMR0 eller OPTION_REG. En stackars disassemler kan ju inte visa båda alternativen i Doit, så dev visar alltid Bank 0's namn på registrerna. (Skulle jag tro iallafall)
Om man tänker sig följande scenario. Vilken bank skulle disassemblern visa då?
Kod: Markera allt
Noll:
BCF STATUS, 0x5
GOTO Doit
Ett:
BSF STATUS, 0x5
GOTO Doit
Doit:
MOVLW 0xD7
MOVWF 0x01
Var inget... det funkar nu på nåt magiskt sätt.... men jag får andra problem, har byggt den så att jag ska kunna köra på växelström men får inte till det. på batteri ( 9 volt funkar den perfa men så fort jag byter till nätet så händer inget. har en traffo på 12 volt en likriktarbrygga och en regulaotr, ur regulatorn får jag 4.5 volt ( lite lite, då jag får 5 volt ur 9 volts batteriet) kan det vara glättningskondensatorn? 4.7uF ( den jag hittade....)