Skriva om asm kod till en annan pic-typ
Skriva om asm kod till en annan pic-typ
Jag har asm-koden till en pic12c508a som jag skulle vilja skriva om så att den fungerar på någon pic som kan programmeras på wisp628 t.ex 12F629, 12F675. Finns det något konverterar-program, eller måste jag gå in och skriva om för hand?
det beror nog på koden... om koden använder specialfunktioner som inte finns på den andra picen så kan det bli jobbigt, gissar på att dom picarna stödjer samma instruktioner i övrigt (detta är en gissing, men det borde bara vara att titta i databladen).
EDIT: konverteringsprogram tror jag inte på...
EDIT: konverteringsprogram tror jag inte på...
Skriva om och skriva om...
Den enklaste är att ladda koden i MPLAB, ställa om, och se vad MPLAB "säger".
Sen är 12F508 en naturligare ersättare till 12C508 om man enbart
vill ha en Flash variant...
EDIT : Även om det kanske inte framgår av varken min eller Wouters
web sidor, så fungerar både 12F508, 12F509 och 12F510 med Wisp628...
Den enklaste är att ladda koden i MPLAB, ställa om, och se vad MPLAB "säger".
Sen är 12F508 en naturligare ersättare till 12C508 om man enbart
vill ha en Flash variant...
EDIT : Även om det kanske inte framgår av varken min eller Wouters
web sidor, så fungerar både 12F508, 12F509 och 12F510 med Wisp628...
Så 12c508 kod fungerar på en 12F508 direkt utan att man behöver ändra något?
EDIT:
Jag körde Build All i MPLAB och den klagade på dessa saker:
Executing: "C:\Program\Microchip\MPASM Suite\MPAsmWin.exe" /q /p12F508 "output.asm" /l"output.lst" /e"output.err"
Warning[215] C:\OUTPUT.ASM 23 : Processor superseded by command line. Verify processor symbol.
Message[301] C:\PROGRAM\MICROCHIP\MPASM SUITE\P12C508.INC 37 : MESSAGE: (Processor-header file mismatch. Verify selected processor.)
Error[113] C:\OUTPUT.ASM 28 : Symbol not previously defined (_INT_OSC)
Halting build on first failure as requested.
BUILD FAILED: Tue Apr 11 17:42:16 2006
Då ändrade jag på alla ställen där det stod 12c508 till 12f508 och sen tog jag bort _INT_OSC och då gick det att köra Build utan error. Men kommer den koden att fungera då? Jag kan lägga upp koden om någon vill kolla på den.
EDIT:
Jag körde Build All i MPLAB och den klagade på dessa saker:
Executing: "C:\Program\Microchip\MPASM Suite\MPAsmWin.exe" /q /p12F508 "output.asm" /l"output.lst" /e"output.err"
Warning[215] C:\OUTPUT.ASM 23 : Processor superseded by command line. Verify processor symbol.
Message[301] C:\PROGRAM\MICROCHIP\MPASM SUITE\P12C508.INC 37 : MESSAGE: (Processor-header file mismatch. Verify selected processor.)
Error[113] C:\OUTPUT.ASM 28 : Symbol not previously defined (_INT_OSC)
Halting build on first failure as requested.
BUILD FAILED: Tue Apr 11 17:42:16 2006
Då ändrade jag på alla ställen där det stod 12c508 till 12f508 och sen tog jag bort _INT_OSC och då gick det att köra Build utan error. Men kommer den koden att fungera då? Jag kan lägga upp koden om någon vill kolla på den.
> ..om du inte är ruggigt säker på att programmera.
Nu var det väl en färdig kod som willmans hade...
Hur som helst, nej, OTP (d.v.s i princip alla "C") processorer kan inte
programmeras i Wisp628.
F versionen av 508 processorn (och en hel del andra) är, som sagt,
framtagen just för att komma runt problemen med C versionerna.
Nu var det väl en färdig kod som willmans hade...
Hur som helst, nej, OTP (d.v.s i princip alla "C") processorer kan inte
programmeras i Wisp628.
F versionen av 508 processorn (och en hel del andra) är, som sagt,
framtagen just för att komma runt problemen med C versionerna.
Enligt det Microchip-seminar jag var på i sin tid är anledningen till att de vill köra flash så enkel att en flashminnescell är mindre än EPROM cellen, detta geer alltså mindre kiselarea = billigare chips.
Att flash-tekniken sedan ger så många andra fördelar för använderna är ju en annan sak men den blev implementerat för att göra billigare chips.
Bläddrar man genom Microchips PIC-lista med riktpriser ser man ju ganska snabbt att C-varianterna är dyrare än F-varianterna så de har väl lyckats.
Att flash-tekniken sedan ger så många andra fördelar för använderna är ju en annan sak men den blev implementerat för att göra billigare chips.
Bläddrar man genom Microchips PIC-lista med riktpriser ser man ju ganska snabbt att C-varianterna är dyrare än F-varianterna så de har väl lyckats.
Jaha, nu har jag fått tag på ett 12f508 chip som jag försöker programmera. Men när jag ska programmera chippet med xwisp2 så säger den
xwisp2 version 1.9.0 for Windows (Apr 08 2006, Open Watcom C 1.40)
File output.hex loaded and is Intel Hex format conforming
Detected programmer: Wisp628, firmware version 1.09
Target not auto-detected, please specify on commandline!
xwisp2 failed after 0.83 seconds, rc 23!
Skriver jag manuellt in target så får jag
xwisp2 version 1.9.0 for Windows (Apr 08 2006, Open Watcom C 1.40)
File output.hex loaded and is Intel Hex format conforming
Detected programmer: Wisp628, firmware version 1.09
Using specified target: 12F508
Wbus command failure
Wbus command failure
Wbus command failure
Wbus command failure
Wbus command failure
Wbus command failure
Failed to restore preserved location 03FE, previous contents FFFF
xwisp2 failed after 0.90 seconds, rc 21!
Sa inte ni att det gick att programmera 12f508 på wisp628?
xwisp2 version 1.9.0 for Windows (Apr 08 2006, Open Watcom C 1.40)
File output.hex loaded and is Intel Hex format conforming
Detected programmer: Wisp628, firmware version 1.09
Target not auto-detected, please specify on commandline!
xwisp2 failed after 0.83 seconds, rc 23!
Skriver jag manuellt in target så får jag
xwisp2 version 1.9.0 for Windows (Apr 08 2006, Open Watcom C 1.40)
File output.hex loaded and is Intel Hex format conforming
Detected programmer: Wisp628, firmware version 1.09
Using specified target: 12F508
Wbus command failure
Wbus command failure
Wbus command failure
Wbus command failure
Wbus command failure
Wbus command failure
Failed to restore preserved location 03FE, previous contents FFFF
xwisp2 failed after 0.90 seconds, rc 21!
Sa inte ni att det gick att programmera 12f508 på wisp628?
Nu är jag konfunderad...
Jag var **bombsäker** på att 12F50x fungerade med Wisp628, men när
jag kollar nu står det faktiskt "Not yet supported". Shit...
Jag skall kolla vad som är speciellt med dessa.
Dessutom, eftersom jag skrev tidigare att 12F508 skulle fungera,
så skickar jag gärna några 12F629 istället som garanterat fungerar.
Kontakta gärna mig via mail eller PM så ordnar jag det. Du kan
ha dom på onsdag.
Ber verkligen om ursäkt att jag inte kollade det ordentligt förrut...
Jag var **bombsäker** på att 12F50x fungerade med Wisp628, men när
jag kollar nu står det faktiskt "Not yet supported". Shit...
Jag skall kolla vad som är speciellt med dessa.
Dessutom, eftersom jag skrev tidigare att 12F508 skulle fungera,
så skickar jag gärna några 12F629 istället som garanterat fungerar.
Kontakta gärna mig via mail eller PM så ordnar jag det. Du kan
ha dom på onsdag.
Ber verkligen om ursäkt att jag inte kollade det ordentligt förrut...