Programmera PIC18F2685 med WISP628

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
Användarvisningsbild
Icecap
Inlägg: 26733
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Inlägg av Icecap »

Uppgraderingen var 1.10 -> 1.11.

HEX-filen kom från ett, för mig, okänd verktyg men jag antar att det var en C-kompiler, jag "plockade isär" filen för att hitta just CONFIG-delen då grundproblemet var att BOR var ställd för högt, av den anledning hade dom med problemet testat att byta till en PIC18LF-version men inte förstådd grejen med BOR-nivån.

Jag har inte filen just här och nu men jag vet att det var en del 0xFF i CONFIG-delen men att allt som jag såg en användning för var ställd rätt (förutom just BOR-nivån).
sodjan
EF Sponsor
Inlägg: 43265
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

OK.
Ingen anledning att dra detta vidare.
VI avvaktar och ser hur det går för BultaIBo istället...
Användarvisningsbild
BultaIBo
Inlägg: 32
Blev medlem: 21 mars 2006, 18:08:03
Ort: Hammarö

Inlägg av BultaIBo »

Ursäkta, har varit bortrest idag...

Jag använder MPLAB IDE 7.42 med C18 3.02 (Student version).

I mitt projekt använder jag följande grejer:

Kod: Markera allt

//-------------------------------------------------
//- C O M P I L E R  D I R E C T I V E S
//-------------------------------------------------
#pragma config OSC 		= HS
#pragma config FCMEN 	= OFF
#pragma config IESO 	                = OFF
#pragma config PWRT 	= OFF
#pragma config BOREN 	= OFF
#pragma config WDT 		= OFF
#pragma config LVP 		= OFF
#pragma config MCLRE 	= ON
#pragma config PBADEN 	= OFF
Linker script 18f2685.lkr.

I "Build options" har jag för Code Model använt "Large code model (> 64K)".

Har inte hunnit byta till firmware 1.11, förhoppningsvis under kvällen. Har dock provat med Robs FuseFixedZero, men det gav samma resultat.


Om man funderar lite över raden som xwisp2w skriver ut:
Verifying program memory......failed at 000000, expected: 'EF31', found: 'FFFF'
...så verkar det väl som om man inte alls lyckas skriva något till kretsen. Dvs bränningen i första steget som xwisp tror går bra går åt skogen....?!

Rob nämde väl något om en lite smärre ändring i prog algoritmen...är det den som spelar mig ett spratt?!
sodjan
EF Sponsor
Inlägg: 43265
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

Du har helt rätt, det går fel redan på adress h'0000', så det har inte med
config bitarna att göra. Du kommer ju aldrig så långt. Och config direktiven
i koden bör inte spela någon roll.

Hur var det du sa, allt annat är OK ? 5V, avkoppling o.s.v.
Alla (båda) benen för Vss och Vdd anslutna ?

Jag vet inte om C18 kan ställa till det, men kasta gärna ihop
ett llite asm kod i MPLAB och testa med. Det behöver ju inte "göra"
något vettigt, bara det bygger OK utan fel så att du får en HEX fil...

> Rob nämde väl något om en lite smärre ändring i prog algoritmen...
> är det den som spelar mig ett spratt?!

Kan vara så, men jag är inte helt klar över om han syftade till koden
för verifiering av config bitarna, där det fanns ett problem i XWisp2
(alltså inte i firmware i sig). Så du kan först bara testa med att köra
senaste XWisp2, om inte det hjälper även byta formware...
Användarvisningsbild
BultaIBo
Inlägg: 32
Blev medlem: 21 mars 2006, 18:08:03
Ort: Hammarö

Inlägg av BultaIBo »

Glömde att berätta att jag även laddade ner xwisp 1.11 och provade med det.
Provade att programmera en 4620 igår utan problem, så spännigskälla och koppling borde inte häller vara problem.

MEN, det här med "Vpp before Vdd", kan det här vara ett problem i den häraden? Eller är jag helt fel ute?
Användarvisningsbild
BultaIBo
Inlägg: 32
Blev medlem: 21 mars 2006, 18:08:03
Ort: Hammarö

Inlägg av BultaIBo »

LÖST! och oj, jag blandade (i alla mina desperata försök) ihop versioner på xwisp och firmware för wisp628 i mitt tidigare inlägg. Sorry.

Det här är vad jag menade och hur jag fick det att fungera:

1) Jag hämtade hem xwisp 1.9.1
2) La till ett entry för PIC18F2685 i en cfg-fil som jag sedan inkluderade från xwisp2.cfg. Använde det entry som Rob gav exempel på.
3) Laddade ner firmware 1.11 i Wisp:en. 1.10 fungerade inte för mig!
4) Var tvungen att explicit ange target 18F2685 i komandoraden för xwisp. Alltså: xwisp2w target 18f2685 go blink
Verkar som om xwisp eller Wisp:en inte kunde "auto detect:a" 2685:an ännu, varför vet jag inte...
5) Vipps (...eller kanske man skall säga Wisp...) så kom det igång.

Tackar Sodjan och Icecap för all hjälp!
sodjan
EF Sponsor
Inlägg: 43265
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

Trevligt ! :-)

Jag ska skicka över en kort översättning av dina punkter till Rob
så får vi se om han får ut något av det...

Det skulle även vara intressant med en utskrift från XWisp2w *utan* "target 18f2685" !

PS:
Rob skrev något om en liten uppdatering av XWisp2 och firmware "soon".
Jag vet dock inte vad det rör sig om...

PS2:
"Vpp before Vdd" är *normalt* bara ett problem på device som har möjlighet
till "internal MCLR", och då bara *om* man har det påslaget. Dessutom så
är det inte någon regel att det är så, t.ex 16F88 verkar kunna programmeras
OK med Wisp628 (som inte direkt stöder "Vpp before Vdd") oavsett hur
man har konfigurerat MCLR...
Användarvisningsbild
BultaIBo
Inlägg: 32
Blev medlem: 21 mars 2006, 18:08:03
Ort: Hammarö

Inlägg av BultaIBo »

Antagligen var det så här att när jag körde med 1.10 så kunde varken läsa eller skriva från target. Därför kunde jag inte få någon auto-detect.

Med allt uppgraderat 1.9.1 och 1.11 så fungerar även auto detect. (Märkte jag nu...) Eller också var det så att man var tvungen att boota om datorn för att cfg-förändringarna skulle ta effekt, villket jag inte gjorde i går kväll.

Skräp bakom spakarna!!!

En utskrift på en fullt fungerande programmering ser ut såhär:

Kod: Markera allt

C:\Blink>xwisp2w verbose go blink
 xwisp2 version 1.9.1 for Windows (Sep 06 2006, Open Watcom C 1.50)
Reading file 'blink.hex'
File blink.hex loaded and is Intel Hex format conforming
Total of program and data memory: 276 bytes
Activating serial port: COM1
Portspeed min: 50, max: 115200, cur: 1200
Portspeed new: 19200
DTR On, RTS Off
DTR Off, RTS Off
Wbus device not active, trying to activate
Portspeed min: 50, max: 115200, cur: 19200
Detected programmer: Wisp628, firmware version 1.11
Switching Wbus speed from 19200 to 115200 bps
Portspeed min: 50, max: 115200, cur: 19200
Portspeed new: 115200
Trying 14 bits core family (provisional target 12F629)
Device reported ID: 3FFF
Trying 16 bits core family (provisional target 18F1220)
Device reported ID: 2721
Detected target: 18F2685 revision 01 (ID=2721)
Datasheet: DS39761, Programming Specifications: DS39622
Programming algorithm 9 (PIC18A)
Target erased
Transferring program to 18F2685 via Wisp628
Transferring program memory...OK!
Verifying program memory......OK!
Transferring data memory......OK!
Verifying data memory.........OK!
Transferring ID memory........OK!
Verifying ID memory...........OK!
Transferring fuses memory.....OK!
Verifying fuses memory........OK!
Write-Verify operation terminated successfully in 0.76 seconds
Putting target in run mode
Portspeed min: 50, max: 115200, cur: 115200
Portspeed new: 1200
xwisp2 terminated successfully in 1.83 seconds
sodjan
EF Sponsor
Inlägg: 43265
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

> så fungerar även auto detect.

Jaha du...
Ja ja, jag får skicka ett nytt mail till Rob och ta tillbaka det förra mailet... :-)
Skriv svar