Explorer-16 Deel 1 - inleiding tot MPLAB, C30 en ... - ELEKTOR.nl
Explorer-16 Deel 1 - inleiding tot MPLAB, C30 en ... - ELEKTOR.nl
Explorer-16 Deel 1 - inleiding tot MPLAB, C30 en ... - ELEKTOR.nl
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
ler, dan heeft u <strong>tot</strong> aan de derde aflevering de beschikking<br />
over de volledige versie.<br />
De functies die het na 60 dag<strong>en</strong> niet meer do<strong>en</strong>, word<strong>en</strong><br />
door Microchip omschrev<strong>en</strong> als: ‘procedural abstraction’<br />
<strong>en</strong> ‘optimisation options -02, -03 and –Os’. Dat is niet zo<br />
dramatisch. Al het andere werkt op dezelfde wijze als de<br />
volledige versie <strong>en</strong> met de <strong>en</strong>orme geheug<strong>en</strong>capaciteit<br />
van de PIC24F128 zal het niet optimaliser<strong>en</strong> van het geheug<strong>en</strong>gebruik<br />
niet snel problem<strong>en</strong> gev<strong>en</strong>. Natuurlijk kunt<br />
u <strong>C30</strong> ook gebruik<strong>en</strong> voor iedere andere kleinere <strong>16</strong>-bits<br />
PIC of dsPIC, probeer het gewoon.<br />
De stud<strong>en</strong>t<strong>en</strong>versie van <strong>C30</strong> kan omgezet word<strong>en</strong> naar de<br />
volledige versie door bij Microchip e<strong>en</strong> lic<strong>en</strong>ce-key te kop<strong>en</strong>.<br />
Kopers van het <strong>Explorer</strong>-<strong>16</strong> ontwikkelsysteem kunn<strong>en</strong> bov<strong>en</strong>di<strong>en</strong><br />
de volledige versie van <strong>C30</strong> teg<strong>en</strong> e<strong>en</strong> lagere prijs aanschaff<strong>en</strong><br />
door e<strong>en</strong> bon op te stur<strong>en</strong> die wordt bijgeslot<strong>en</strong>.<br />
<strong>MPLAB</strong> <strong>C30</strong> is e<strong>en</strong> volledige ANSI-compiler met standaard<br />
bibliothek<strong>en</strong> voor alle populaire PIC’s inclusief de<br />
nieuwste dsPIC-compon<strong>en</strong>t<strong>en</strong>. Hij is volledig geïntegreerd<br />
in de <strong>MPLAB</strong> IDE voor debugging op source-niveau.<br />
Bij deze compiler hoort zijn eig<strong>en</strong> assembler, linker <strong>en</strong><br />
librarian om mixed-mode C <strong>en</strong> assembly-programma’s te<br />
schrijv<strong>en</strong> <strong>en</strong> het resulter<strong>en</strong>de object-bestand te link<strong>en</strong> <strong>tot</strong><br />
e<strong>en</strong> executable.<br />
De <strong>MPLAB</strong> <strong>C30</strong> bibliotheek heeft functies voor stringmanipulatie,<br />
dynamische geheug<strong>en</strong>toewijzing, dataconversie,<br />
timekeeping <strong>en</strong> mathematische functies (trigonometrisch,<br />
expon<strong>en</strong>tieel <strong>en</strong> hyperbolisch).<br />
Het ‘small code model’ van <strong>C30</strong> maakt gebruik van e<strong>en</strong><br />
efficiëntere wijze van call-instructies, terwijl het ‘small<br />
data model’ het gebruik van compacte instructies voor het<br />
b<strong>en</strong>ader<strong>en</strong> van data in SFR ondersteunt.<br />
<strong>C30</strong> is in de <strong>MPLAB</strong>-omgeving ingebed, maar het is wel<br />
via e<strong>en</strong> command-line te bedi<strong>en</strong><strong>en</strong>. Ga via het m<strong>en</strong>uitem<br />
‘Op<strong>en</strong> Workspace’ in <strong>MPLAB</strong> naar <strong>MPLAB</strong> <strong>C30</strong> ➞<br />
Examples ➞ <strong>MPLAB</strong> Link30. Het voorbeeld ‘Locate_access_EEPROM’<br />
is in figuur 5 te zi<strong>en</strong> met de viewers<br />
voor Program Memory <strong>en</strong> File Registers geop<strong>en</strong>d.<br />
De hele <strong>C30</strong> Users Guide is via het m<strong>en</strong>u op de CD-ROM<br />
beschikbaar, zoals bij <strong>MPLAB</strong> al besprok<strong>en</strong> is. Dat is ook<br />
mogelijk via de map ‘Docum<strong>en</strong>tation’ op de CD-ROM.<br />
Proteus VSM<br />
De simulatie-omgeving voor schakeling<strong>en</strong> van het <strong>Explorer</strong>-<strong>16</strong><br />
project wordt verzorgd door Labc<strong>en</strong>ter Electronics.<br />
VSM (virtual systems modelling) maakt deel uit van de<br />
Proteus Design Suite die ook nog bevat:<br />
• ISIS schematek<strong>en</strong><strong>en</strong>;<br />
• ProSPICE mixed-mode simulatie;<br />
• ARES printontwerp<strong>en</strong>.<br />
Speciaal voor het <strong>Explorer</strong>-<strong>16</strong> project levert Labc<strong>en</strong>ter<br />
gratis e<strong>en</strong> aantal voorbeeldontwerp<strong>en</strong> voor de PIC10,<br />
PIC12, PIC14, PIC<strong>16</strong>, PIC18 <strong>en</strong> PIC24F. Bij deze ontwerp<strong>en</strong><br />
kunt u elke (zelfgeschrev<strong>en</strong>) code lat<strong>en</strong> lop<strong>en</strong>, maar<br />
voor eig<strong>en</strong> project<strong>en</strong> is het volledige Proteus VSM-pakket<br />
nodig. Voor Elektuur-lezers heeft Labc<strong>en</strong>ter e<strong>en</strong> speciale<br />
aanbieding gemaakt, die u kunt bekijk<strong>en</strong> op www.labc<strong>en</strong>ter.co.uk/products/elektoroffer.htm.<br />
Om e<strong>en</strong> idee te krijg<strong>en</strong> van de mogelijkhed<strong>en</strong> kunt u na<br />
het start<strong>en</strong> van ISIS e<strong>en</strong>s klikk<strong>en</strong> op Start ➞ Labc<strong>en</strong>ter ➞<br />
Proteus 7 Demonstration ➞ ISIS 7 Demo. Daar zijn e<strong>en</strong><br />
aantal voorbeeld<strong>en</strong> beschikbaar. Er zitt<strong>en</strong> ook e<strong>en</strong> paar<br />
mooie voorbeeld<strong>en</strong> in de Tutorials-map.<br />
Net zoals <strong>C30</strong> is VSM helemaal ingebouwd in <strong>MPLAB</strong>; het<br />
zit onder Debugger ➞ Tool. Als u brandt van verlang<strong>en</strong> om<br />
het nu in actie te zi<strong>en</strong>, volg dan de 8 stapp<strong>en</strong> aftrap voor<br />
Van start<br />
met Proteus VSM<br />
Deze korte demonstratie laat zi<strong>en</strong> hoe u e<strong>en</strong> Proteus VSM<br />
simulatie kunt draai<strong>en</strong> onder de <strong>MPLAB</strong> IDE.<br />
1. Dow<strong>nl</strong>oad het bestand Demo1.zip van de <strong>Explorer</strong>-<strong>16</strong><br />
pagina die via www.Elektuur.<strong>nl</strong> te bereik<strong>en</strong> is. Sla de<br />
uitgepakte map Demo1 in de directory: c:\program<br />
files\microchip\mplab c30\examples op.<br />
2. Start de <strong>MPLAB</strong> IDE-toepassing,<br />
ga naar het Filem<strong>en</strong>u,<br />
selecteer Op<strong>en</strong><br />
Workspace, navigeer<br />
naar de map Demo1 <strong>en</strong><br />
op<strong>en</strong> de Demo1.mcw<br />
workspace.<br />
3. Ga naar het Debuggerm<strong>en</strong>u<br />
in de <strong>MPLAB</strong> IDE,<br />
selecteer de opdracht<br />
Select Tool <strong>en</strong> vervolg<strong>en</strong>s<br />
Proteus VSM. Vanaf<br />
nu gaat <strong>MPLAB</strong> Proteus<br />
gebruik<strong>en</strong> voor het<br />
debugg<strong>en</strong>.<br />
4. Binn<strong>en</strong> <strong>MPLAB</strong> moet nu<br />
de Proteus VSM Viewer<br />
geop<strong>en</strong>d staan. Gebruik<br />
het Op<strong>en</strong>-icoontje van de<br />
viewer <strong>en</strong> selecteer het<br />
Demo1-schema vanuit<br />
het bestandskeuze-m<strong>en</strong>u<br />
dat nu zichtbaar is.<br />
5. Kies nu ‘Build All’ in het Debugger-m<strong>en</strong>u.<br />
6. Nu we het schema <strong>en</strong> het<br />
project hebb<strong>en</strong> geop<strong>en</strong>d,<br />
kunn<strong>en</strong> we de simulatie<br />
start<strong>en</strong>. Gebruik de<br />
gro<strong>en</strong>e knop bov<strong>en</strong>aan<br />
de <strong>MPLAB</strong> IDE om de<br />
Proteus-simulatie aan<br />
<strong>MPLAB</strong> te koppel<strong>en</strong>.<br />
7. Op dit punt staat de simulatie<br />
in de pauzestand op<br />
het tijdstip nul. Start de<br />
simulatie door op de Play<br />
knop rechtsbov<strong>en</strong> in de<br />
<strong>MPLAB</strong> IDE te klikk<strong>en</strong>. Nu<br />
loopt de programmacode<br />
<strong>en</strong> de VSM-viewer laat zi<strong>en</strong> wat het programma doet.<br />
8. Gebruik de rode knop<br />
bov<strong>en</strong>aan de <strong>MPLAB</strong><br />
IDE om de VSM-viewer<br />
weer los te koppel<strong>en</strong> van<br />
<strong>MPLAB</strong> <strong>en</strong> de simulatie te<br />
stopp<strong>en</strong>. E<strong>en</strong> uitgebreidere<br />
demo van e<strong>en</strong> debugsessie<br />
volgt later in deze serie.<br />
1/2007 - elektuur<br />
25