Sterrenhemel

Dit topic is gesloten

Arco

Special Member

Automatisch uitlezen gaat zoals gezegd niet met nieuwe pics, omdat het device/revision id heel anders in elkaar zit.
Kan het hier helaas niet testen, zou zo te zien moeten werken (heb ook de 12F1571/2 en 16F1788/89 toegevoegd en die werken prima...)

Wellicht dat de MpLabx IPE hem ondersteunt?

Zat wel een klein foutje in de config words description, aangepast. (ik denk niet dat 't daardoor komt)
(met aanpassen gaat snel wat mis, er is heeel veel in te stellen... ;) )

[Bericht gewijzigd door Arco op woensdag 13 januari 2021 11:41:46 (23%)

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com
Bavelt

Golden Member

Met deze devicefile is de 18857 verdwenen uit de lijst...

(de laatste '18' is de 1847...)

Fouten zijn het bewijs dat je het probeert..
Bavelt

Golden Member

Wellicht dat de MPLabx IPE hem ondersteunt?

Ben de hele morgen bezig geweest om dat ding te installeren. (de MPLAB X IDE, versie 5.45 heb ik genomen).

Maar wat een gedoe. De Pickit moet eerst in 'MPLAB Mode' gezet worden. Dat is gelukt. Dan nog een heel gedoe over de Target Power (kan ik nergens vinden, de voorbeelden op internet zijn volgens mij van andere versies).
Dan maar externe voeding erop. Foutmelding weg.

Hij kent de PIC16F18857 overigens wel.

Dan programmeren. Lijkt gelukt, maar er gebeurt niks.
(Ik wilde maar eens beginnen om een simpel ledje via Poort A.6 te laten branden).

Ik rol van het een in het ander... ;(

Fouten zijn het bewijs dat je het probeert..
Arco

Special Member

Tja,

De IPE is niet echt een vriendelijke omgeving... ;)
Die devicefile laat hier trouwens netjes de 18857 zien, hoor...

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com
Bavelt

Golden Member

Opnieuw gedownload, oude weg en ja, nu staat hij er wel weer bij.

Ik zie dat er nu ook de Config-Words 3, 4, en 5 als enabled staan (in de eerste versie die je stuurde niet).

Pickit detecteert hem echter nog niet.
Wellicht iets met de Device-ID?

Is daar een bepaald tool voor, om er eens mee te 'spelen'?

Ik heb uiteraard wat gezocht op internet, maar de tools die ik vond waren oud en gaven .NET errors (versie 2.0, erg oud).

Fouten zijn het bewijs dat je het probeert..
Arco

Special Member

Dit is de devicefile editor: https://sites.google.com/site/pk2devicefileeditor/
Werkt inderdaad met .net 2.0 (op mijn verzoek was dat, origineel draaide 't op .net 3.5... ;) )
Is al wat ouder programma, en zo werkte 't ook op windows 2000 (die ging niet verder als dotnet 2.0)

(dotnet 2.0 kun je zo downloaden bij microsoft)

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com
Bavelt

Golden Member

Ok, dan probeer ik dat ook nog eens.

Ondertussen heb ik de MPLAB X aan de praat en kan ik de PIC programmeren.

Maar wat een achteruitgang t.o.v. de combinatie MB en Pickit stand alone... ;(

Eerst met MB vertalen, dan importeren bij MPLAB, dan flashen, de Pickit er er uit halen (anders werkt het niet) en kan je testen.

"Even gauw proberen" is er niet bij...

Want nu moet ik met de verschillen aan de gang met de PIC16F1847.

Zo heb ik al een aantal andere dingen gemerkt:
De Variabele x1 en Zero mag ik niet als naam gebruiken, deze zijn blijkbaar reserved words.

De standaard oscullator frequentie is 8Mhz, maar het ding kan ook op 32Mhz.

Hiervoor meoet ik dan wat ik lees (en gebruik) OSCTUNE worden gebruikt.

pic basic code:

OSCTUNE    = %00001111

OSCCON staat wel in de sheet maar MB pikt dat niet:

pic basic code:

OSCCON     = %11110000 

geeft een foutmelding, kent hij niet.

Fouten zijn het bewijs dat je het probeert..
Arco

Special Member

De 18857 heeft geen OSCCON, maar OSCCON1, 2, en 3 (zie de PIC16F18857.mbas definitiefile in de DEFS directory en de datasheet)

In de definitiefile kun je ook zien dat ZERO en X1 daar al gebruikt zijn...

[Bericht gewijzigd door Arco op woensdag 13 januari 2021 13:36:50 (24%)

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com
Bavelt

Golden Member

Dan moet ik eens wat vaker naar die def. file kijken.. :)

Begrijp ik overigens goed, dat de Configuration Words, die je kunt opgeven bij Pickit voor een specifieke PIC, in feite door door de Project-settings van MB weer worden overschreven / aangepast? Zoals Brown Out reset, LVP, etc?

Fouten zijn het bewijs dat je het probeert..
Arco

Special Member

De pickit doet niets met de config words, hij programmeert ze alleen. (daarvoor moet hij wel weten hoeveel het er zijn)
Config bits worden ingesteld in MB: Project -> Edit Project...

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com
Bavelt

Golden Member

Config bits worden ingesteld in MB: Project -> Edit Project...

Dat bedoelde ik eigenlijk ook...

Maar hoe heb je dat programma aan de praat gekregen? Ik kom niet verder dan:

Ik heb .NET 2.0 (en 3.5, zit daarbij in) geinstalleerd.
Windows 10.

Fouten zijn het bewijs dat je het probeert..
Arco

Special Member

Ik heb het op Windows2000, Xp, Vista, Win7 en Win10 gebruikt, nooit een probleem... (draait hier nu op Win10/64bit)
Deze werkt bij mij altijd prima:

[Bericht gewijzigd door Arco op woensdag 13 januari 2021 15:31:07 (13%)

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com
Bavelt

Golden Member

Ik krijg de melding als ik de pk2devicefile.dat open...

Fouten zijn het bewijs dat je het probeert..
Bavelt

Golden Member

Ook op mijn laptop met Windows 7...

Fouten zijn het bewijs dat je het probeert..
Arco

Special Member

Is dotnet 2.0 wel geinstalleerd? (die Nederlandse foutmeldingen zijn wat lastig te volgen, ik gebruik alleen Engelse windows... ;) )

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com
Bavelt

Golden Member

Zit bij 3.5 in (alleen 2.0 kan volgens mij niet)

Fouten zijn het bewijs dat je het probeert..
Arco

Special Member

Moeilijk te volgen foutomschrijving, maar is de directory wel read/write?
Het lijkt of het programma een tijdelijk bestand probeert aan te maken of zoiets wat niet lukt...

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com
Bavelt

Golden Member

De volledige omschrijving:

Zie het einde van dit bericht voor meer informatie over het aanroepen
van JIT-foutopsporing (Just In Time) in plaats van dit dialoogvenster.

************** Tekst van uitzondering **************
System.BadImageFormatException: Kan bestand of assembly RawConvert, Version=1.0.3679.27952, Culture=neutral, PublicKeyToken=null of een van de afhankelijkheden hiervan niet laden. Poging om een programma te laden met een onjuiste indeling.
Bestandsnaam: RawConvert, Version=1.0.3679.27952, Culture=neutral, PublicKeyToken=null
bij PICkit2_DeviceFileEditor.PICkit2DatDecode.DataFileAccess.ReadValue(Int32& variable)
bij PICkit2_DeviceFileEditor.PICkit2DatDecode.DataFileAccess.ReadDeviceFile(String DatFilename)
bij PICkit2_DeviceFileEditor.Form1.mnuOpen_Click(Object sender, EventArgs e)
bij System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e)
bij System.Windows.Forms.ToolStripMenuItem.OnClick(EventArgs e)
bij System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e)
bij System.Windows.Forms.ToolStripItem.HandleMouseUp(MouseEventArgs e)
bij System.Windows.Forms.ToolStrip.OnMouseUp(MouseEventArgs mea)
bij System.Windows.Forms.ToolStripDropDown.OnMouseUp(MouseEventArgs mea)
bij System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
bij System.Windows.Forms.Control.WndProc(Message& m)
bij System.Windows.Forms.ToolStrip.WndProc(Message& m)
bij System.Windows.Forms.ToolStripDropDown.WndProc(Message& m)
bij System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
bij System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

WRSCH: registratie van assembly-bindingen is uitgeschakeld.
Als u assembly-bindingsfouten wilt registreren, stelt u de registerwaarde [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) in op 1.
Opmerking: er is een prestatiestraf gekoppeld aan de registratie van assembly-bindingsfouten.
Als u deze functie wilt uitschakelen, verwijdert u de registerwaarde [HKLM\Software\Microsoft\Fusion!EnableLog].

************** Geladen assembly's **************
mscorlib
Assembly-versie: 2.0.0.0
Win32-versie: 2.0.50727.9151 (WinRelRS6.050727-9100)
CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v2.0.50727/mscorlib.dll
----------------------------------------
PICkit2 Device File Editor
Assembly-versie: 1.0.0.1
Win32-versie: 1.0.0.1
CodeBase: file:///C:/Users/CAISS/AppData/Local/Apps/2.0/6KG9M4EX.PKW/164XWTP0.L5P/pick..tion_ca6abfede093e8d0_0001.0000_1eaf15416982a23e/PICkit2%20Device%20File%20Editor.exe
----------------------------------------
Microsoft.VisualBasic
Assembly-versie: 8.0.0.0
Win32-versie: 8.0.50727.9149 (WinRelRS6.050727-9100)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/Microsoft.VisualBasic/8.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualBasic.dll
----------------------------------------
System
Assembly-versie: 2.0.0.0
Win32-versie: 2.0.50727.9149 (WinRelRS6.050727-9100)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Windows.Forms
Assembly-versie: 2.0.0.0
Win32-versie: 2.0.50727.9149 (WinRelRS6.050727-9100)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
Assembly-versie: 2.0.0.0
Win32-versie: 2.0.50727.9149 (WinRelRS6.050727-9100)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Configuration
Assembly-versie: 2.0.0.0
Win32-versie: 2.0.50727.9153 (WinRelRS6.050727-9100)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Configuration/2.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Xml
Assembly-versie: 2.0.0.0
Win32-versie: 2.0.50727.9149 (WinRelRS6.050727-9100)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
System.Runtime.Remoting
Assembly-versie: 2.0.0.0
Win32-versie: 2.0.50727.9149 (WinRelRS6.050727-9100)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Runtime.Remoting/2.0.0.0__b77a5c561934e089/System.Runtime.Remoting.dll
----------------------------------------
System.Windows.Forms.resources
Assembly-versie: 2.0.0.0
Win32-versie: 2.0.50727.9149 (WinRelRS6.050727-9100)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms.resources/2.0.0.0_nl_b77a5c561934e089/System.Windows.Forms.resources.dll
----------------------------------------
y_lre6-w
Assembly-versie: 2.0.0.0
Win32-versie: 2.0.50727.9149 (WinRelRS6.050727-9100)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Core
Assembly-versie: 3.5.0.0
Win32-versie: 3.5.30729.9141 built by: WinRelRS6
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Core/3.5.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
mscorlib.resources
Assembly-versie: 2.0.0.0
Win32-versie: 2.0.50727.9151 (WinRelRS6.050727-9100)
CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v2.0.50727/mscorlib.dll
----------------------------------------

************** JIT-foutopsporing **************
Als u JIT-foutopsporing wilt inschakelen, moet in het configuratiebestand voor deze
toepassing of computer (machine.config) de waarde
jitDebugging in het gedeelte system.windows.forms zijn ingesteld.
De toepassing moet ook zijn gecompileerd terwijl foutopsporing
was ingeschakeld.

Bijvoorbeeld:

<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>

Wanneer JIT-foutopsporing is ingeschakeld, worden onverwerkte uitzonderingen
naar het JIT-foutopsporingsprogramma gestuurd dat op de computer is geregistreerd
en worden niet door dit dialoogvenster verwerkt.

Fouten zijn het bewijs dat je het probeert..
Arco

Special Member

Het zegt me weinig. Ik werk (gelukkig) nooit met dotnet... ;)

Weet je zeker dat je de laatste versie van het programma hebt gedownload?
(ik zie 'rawconvert' in de errormeldingen. De rawconvert.dll werd alleen in oudere versies gebruikt, is nu helemaal niet meer nodig.)

Die ik gepost heb is de goede in ieder geval.

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com
Bavelt

Golden Member

Ik heb de link gevolgd die je stuurde. Dan kom je op een site met een aantal versies. 1.0.07 is de laatste. Ik heb er een paar geprobeerd, allemaal hetzelfde euvel.

Ik ben ervan opvertuigd dat wanneer je deze van de site downloadt, je dezelfde error krijgt. Er zit gewoon iets niet goed in die applicatie (maar dat schrijft de auteur ook).

Fouten zijn het bewijs dat je het probeert..
Bavelt

Golden Member

En inderdaad, met .NET toepassingen moet je heel nauwkeurig zijn.

Microsoft heeft met zijn vele versies en incomptabiliteit (vooal dat) er een rommeltje van gemaakt vind ik.

Fouten zijn het bewijs dat je het probeert..
Bavelt

Golden Member

Maar zijn er echt geen andere manieren om naast het gedrocht van MPLAB X (download meer dan 1GB, alleen al voor de IDE... :'( ) een .hex in je PIC te krijgen? Met een andere PIC en toepassing, of via UART-PC of zoiets?

Fouten zijn het bewijs dat je het probeert..
Arco

Special Member

Ik heb de juiste versie toch boven geplaatst?: https://www.circuitsonline.net/forum/file/65135
Dat is versie 1.0.0.7, werkt hier altijd op alle windows versies, dus er moet bij jou wat mis zijn dan...

MpLabX heb je helemaal niet nodig, alleen de IPE die erbij mee komt. (Intergrated Programming Environment). Ook geen leuk programma trouwens...

[Bericht gewijzigd door Arco op woensdag 13 januari 2021 16:44:42 (19%)

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com
Bavelt

Golden Member

Ja verdraaid. Deze opnieuw gedownload en nou doet-ie het wel...

Niet alles is te beredeneren... :?

Fouten zijn het bewijs dat je het probeert..
Bavelt

Golden Member

Ik ben toch een stapje verder...

Wanneer ik nl in de PK2devicefile.dat de PIC16F18857 'verhuis' van family 14 naar family 2, dan komt hij bij de baseline terecht.

De PIC wordt nu herkend. Ik kan hem ook 'erasen'.

Wanneer ik echter een nieuwe hex wil schrijven, komnt er een foutmelding:

Fouten zijn het bewijs dat je het probeert..

Dit topic is gesloten