HØit Nr. 2-96
Previous article Next article TOC: Nr. 2, 1996 Previous Issue Next Issue About HØit

Mikrokontrollerkort med Motorola 68HC11


Sindre Helvik

For å gi våre dataingeniørstudenter en bedre grunnleggende opplæring i faget «Datamaskinens oppbygning og virkemåte» bestemte avdelingen seg for at hver enkelt student skulle få kjøpe et mikrokontrollerkort med kontrolleren MC68HC11A1 ( Motorola ). Det er meningen at kortet også skal brukes senere i studiet. Det er flere årsaker til at HC11 ble valgt. Den regnes som en relativt enkel kontroller og brukes mye i undervisning verden over. En tid tilbake utviklet Fred Martin ved MIT et kort han kalte «The Miniboard». Vi vurderte dette kortet, men siden det hadde så lite minne ( 2k bytes EEPROM ) bestemte vi oss for å utvikle vårt eget. Vi ønsket å legge vekt på at kortet skulle være mest mulig fleksibelt og ikke koste mer enn ca kr 500,- for studentene. I tillegg ønsket vi at kortet skulle kunne programmeres i både assembler og C.

Ved at studentene eier sitt eget kort regner vi med at de vil få en «tettere» og mer praktisk kontakt med utstyret. De vil også være friere til å eksperimentere med forskjellige software og hardwareløsninger både på skolen og hjemme. Vi krever imidlertid at hver student holder kortet sitt i orden slik at det er tilgjengelig for de labøvingene som er obligatoriske. Når så mange har sitt eget mikrokontrollerkort håper vi at kreativiteten vil blomstre. Kortet har stor fleksibilitet og vil kunne tilpasses til en rekke oppgaver.

Utvikling og produksjon

Jobben med design av HC11 kortet ble påbegynt høsten 1995. I november var tegningene av elektronikken ferdig. Jeg laget en skisse over hvordan vi ønsket kretskortet utlagt og så ble tegningene sendt til firmaet Symetrics Elektronikk A/S, som gjorde arbeidet med utlegg av kortet. En liten prototypserie på 5 kretskort ble bestilt. Vi mottok disse i januar. Symetrics stilte komponentbehandligsutstyr og loddebad til disposisjon slik at jeg fikk montert prototypene. Så kom jobben med uttesting og spenningen var stor for å se om det første kortet virket. Det viste seg at alt fungerte som det skulle.

68HC11 kretskort Siden prototypene fungerte som forventet ble det bare gjort noen få endringer før hovedserien av print ble bestilt. I midten av januar mottok vi kortene og jeg fikk igjen bruke produksjonsutstyr hos Symetrics for å bestykke kortene med komponenter. 50 kort ble produsert ferdig.

Det har vist seg at Motorola har leveringsproblemer når det gjelder HC11. Etterspørselen er større enn det som produseres. For Motorola må dette være en drømmesituasjon. De selger brikkene så fort de er ferdig produsert og kan holde prisene oppe på grunn av etterspørselen. For oss som handler i små antall kan dette være en plage. På grunn av dette har vi valgt den HC11 versjonen (A1) som er enklest å få tak i.

Programmering

Det finnes flere alternativer for nedlasting og debugging av programmer på HC11 kortet. En god del software er tilgjengelig via Internet. Ønsker en å eksperimentere med HC11 i «single chip» modus kan man bruke assembleren AS11 og monitorprogrammet Pcbug11. Trenger en mer plass enn det som er tilgjengelig i «single chip» modus kan man bestykke HC11 kortet med 30 kbyte RAM og en ROM-monitor.

Vi har kjøpt inn en C-compiler for 68HC11. Her følger det også med en ROM-monitor. Vi har fått en avtale hvor vi fritt kan kopiere C-compileren «Another C» til undervisningsbruk. Softwareleverandøren har vist oss svært stor tillit da han solgte oss sitt produkt uten kopibeskyttelse. Av den grunn krever vi at hver student som kjøper et kort skriver under på at hun/han forplikter seg til å respektere de lovene som gjelder for copyright og opphavsrett for software, hardware og dokumentasjon.

Hardware

HC11 er egentlig betegnelsen på en hel serie med 8 bits mikrokontrollere som produseres av Motorola. Forløperen til HC11 var 6800 og 6801 og instruksjonssettet er videreutviklet i forhold til disse to.

HC11 kan kjøre i forskjellige modus avhengig av hvilken hardwareløsning en ønsker. Normalt vil HC11 ved reset hente en reset vektor fra adresse $FFFE, FFFF. I «special bootstrap» og «special test» modus oppfører HC11 seg annerledes. Ved reset vil nå et spesielt program startes. Dette programmet initierer serieporten og vil lese inn 256 bytes fra serieporten og inn i RAM hukommelsen. Når alle dataene er mottatt startes det programmet som ble overført automatisk. Ved hjelp av en PC kan små programmer overføres til RAM og testes ut på en meget enkel hardware løsning. Programmet kan også overføres til den interne EEPROM hukommelsen og HC11 kan kobles slik at dette programmet startes så fort kretsen får strøm. «Navlestrengen» til PC'n kan så tas bort slik at HC11 kan stå å pusle med sine egne ting.

Kortet har en fleksibel strømforsyning. Det kan forsynes med enten likespenning eller vekselspenning. Kortet sørger selv for å ta hensyn til den polaritet som tilkobles. Blir spenningen for lav vil HC11 gå i RESET. Kortets strømforbruk er meget lavt. Det er målt til ca 45 mA ved 9 V forsyningsspenning. HC11 har også metoder for ytterligere effektsparing.

Kortet har en RJ12 modulærkontakt som er beregnet for RS-232 tilkobling. Både plugger med 4 og 6 pinner passer i denne kontakten. RX og TX signalene er lagt ut på lysdioder. Lysdiodene vil blinke under dataoverføring og indikerer om det er feil på RS-232 forbindelsen. TX lampen fungerer også som «power on» indikator.

På kortet er det lagt ut 8 digitale utganger og 8 digitale innganger. HC11A1 har en 8 bits A/D. Denne A/D'n kan igjen avlese 8 forskjellige inngangskanaler.

HC11 har 16 bits adressebuss og har dermed mulighet til å adressere et område på 64 k byte. I dette området er det mappet inn både minne og I/O. HC11 kan kjøres i forskjellige modus avhengig av om man ønsker å bruke eksternt minne eller om man klarer seg med internt minne. HC11A1 prosessoren har innebygget 256 bytes RAM og 512 bytes med EEPROM.

Kortet er utstyrt med en 32 k byte RAM krets og med 32 k byte EPROM. EPROM minnet er beregnet å brukes til ROM-monitoren DDT eller til brukerprogrammer.

Email

Det ble opprettet en Email liste for brukere av HC11 kortet. Mail som sendes til HC11@HIOF.NO blir distribuert til alle som abonnerer på denne listen. Formålet med denne mailing-listen var primært å gjøre det enklere å finne svar når studenten stod fast med et problem. I stedet for å lete huset rundt etter noen som kunne hjelpe skulle en tro det var enklere å sende en mail med spørsmålet. Vi var veldig spent på hvordan denne mailing-listen ville fungere. Vi håpet å få igang en god dialog hvor alle kunne bidra konstruktivt til problemløsning og utvikling. Det viste seg imidlertid at undertegnede var den eneste som postet til listen med informasjon som kunne være til nytte. Jeg tvang til og med en student til å maile sitt spørsmål til HC11-listen før jeg ville gi han svar på hans spørsmål. Dette som et febrilsk forsøk på å få startet en mail-dialog. Dette spørsmålet ble faktisk det eneste som ble postet til listen. Fra resultatene av kursevalueringen går det frem at studentene syntes «det var greit» at mailing-listen var der, men at det var «enklere å spørre sidemannen» hvis en lurte på noe. Vi får ta til etterretning at når ikke sidemannen strekker til vil blivende dataingeniører heller går rundt skolen på leting etter faglærer eller laboratoriepersonellet for å få svar på sine spørsmål, i stedet for å bruke sin PC for å oppnå det samme.

Et av argumentene vi hadde for å velge HC11 kontrolleren var at mye informasjon var tilgjengelig på Internett. For meg var dette til hjelp under utviklingen av HC11 kortet, men studentene har i svært liten grad benyttet seg av den informasjonen som er tilgjengelig.

Oppsummering

Vi var spente på hvordan studentene ville reagere på konseptet med at de alle hadde sitt eget HC11 kort. Via kursevalueringen svarte de fleste studentene at de syntes kortet var verd pengene de måtte betale og at konseptet hadde en positiv effekt på læreprosessen. Studentene syntes det ble vel mye assemblerprogrammering, spesiellt var laboppgavene noe tunge på slutten av kurset. De mente derfor at det bør legges mer vekt på C-programmering i laboppgavene. Når en klasse på 40 studenter skulle kjøre lab individuelt ble det problemer med at det var for få PC'r tilgjengelig, men vi håper å løse dette til høsten da vi skal gå til anskaffelse av flere maskiner.

Et par andre skoler har vist interesse for HC11 kortet, men det virker som om man har helt spesielle behov for hardware som ikke vårt kort oppfyller. Derimot har vi nylig inngått en avtale med elektro/IR-avdelingen om at deres studenter skal få kjøpt kort. Vi håper på et fruktbart og godt sammarbeid for alle parter.

Previous article Next article TOC: Nr. 1, 199 Previous Issue Next Issue About HØit
HØit Nr. 2-96


Copyright: 1996, Høgskolen i Østfold. Last Update: 28.06.97, Thomas Malt.