Det är barnsligt enklelt att skriva till EEPROMet med PICBasic iafdanei skrev:Det står i databladet. Men det är en utmaning att få det att funka. Försökte att skriva till eeprom i en 16F877 i går och i dag men det vill inte fungera. Har testat både i C och asembler. Har lyckats skriva till program-minnet tidigare så det kanske är läge att återvinna den koden.
Låssystem med Ibutton
Det finns väl en kodsnutt i databladet som bör funka...danei skrev:Det står i databladet. Men det är en utmaning att få det att funka. Försökte att skriva till eeprom i en 16F877 i går och i dag men det vill inte fungera. Har testat både i C och asembler. Har lyckats skriva till program-minnet tidigare så det kanske är läge att återvinna den koden.
Ända stället var jag skulle kunna tänka mig att fylla i den är stället var detta börjar:
Rätt ställe?
Edit: är ju 8 ställen att lägga in domdär siffrorna/bokstäverna på...skall resten fyllas med nollor?
Eller skall family-code vara något annat än de två första siffrorna?
Kod: Markera allt
; Nu ska serialen kollas,
MOVF BYTE1,W ;Läser tillbaka family code
SUBLW H'01' ; FAMILY CODE
BTFSS STATUS,Z
GOTO FEL_NYCKEL
MOVF BYTE2,W
Edit: är ju 8 ställen att lägga in domdär siffrorna/bokstäverna på...skall resten fyllas med nollor?
Eller skall family-code vara något annat än de två första siffrorna?
hm... på mina ibuttonar står det ett långt nummer i mitten, det jag pratade om förra gången, det är serienummret. uppe till vänster om det står lite paritetsbitar, de ska läggas efter de bitar jag pratade om. uppe till höger står familjekoden, i mitt fall 01, den lägger du först.
i koden så har du hittat rätt ställe för familjekoden, där det står "family code" du ersätter bara H'01' med din kod, alltså H'XX' sen letar du upp raderna under och alla ställen där det står sublw h'xx' sätter du in dina nuffror
i koden så har du hittat rätt ställe för familjekoden, där det står "family code" du ersätter bara H'01' med din kod, alltså H'XX' sen letar du upp raderna under och alla ställen där det står sublw h'xx' sätter du in dina nuffror
Kod: Markera allt
MOVF BYTE1,W ;Läser tillbaka family code
SUBLW H'02' ; FAMILY CODE
BTFSS STATUS,Z
GOTO FEL_NYCKEL
MOVF BYTE2,W
SUBLW H'2A' ; SERIAL lsb
BTFSS STATUS,Z
GOTO FEL_NYCKEL
MOVF BYTE3,W
SUBLW H'58' ;SERIAL
BTFSS STATUS,Z
GOTO FEL_NYCKEL
MOVF BYTE4,W
SUBLW H'BC' ;SERIAL
BTFSS STATUS,Z
GOTO FEL_NYCKEL
MOVF BYTE5,W
SUBLW H'00' ;SERIAL
BTFSS STATUS,Z
GOTO FEL_NYCKEL
MOVF BYTE6,W
SUBLW H'00' ;SERIAL
BTFSS STATUS,Z
GOTO FEL_NYCKEL
MOVF BYTE7,W
SUBLW H'00' ;SERIAL msb
BTFSS STATUS,Z
GOTO FEL_NYCKEL
MOVF BYTE8,W
SUBLW H'2B' ;CRC
BTFSS STATUS,Z
GOTO FEL_NYCKEL
Till höger står det 02 och till vänster 2B.
Detdär programmet var visst programmerat i assembler, med vad skall jag kompliera det? Har MPASM, men det verkar inte ha stöd för PIC12F629...
iButton är en knapp, med en identitet. De kan användas till rätt mycket.
Läs/beställ gratis samples på iButton.com
Läs/beställ gratis samples på iButton.com