LEU240 Mikrodatorsystem Introduktion Var platsar en sådan här kurs i er utbildning? Vad kan ni från tidigare kurser? Vad kan en ingenjör behöva som ni inte har fått i dessa kurser? Hur skall vi tillföra detta? 1
Vilka kunskaper bör ni ha från tidigare mikrodatorkurser? Skriva program för ett labsystem Ett system med anpassade labmoduler Ett system med en inbyggd debugger (rudimentärt OS) En simulator som är integrerad med systemet, dvs kan simulera processor tillsammans med aktuella labmoduler Anpassad litteratur t som beskriver just det aktuella systemet Välanpassade hårdvarubeskrivningar till enheterna Styrda lab-pm Vad förväntas en ingenjör kunna göra inför ett mikrodatorprojekt? Välja lämplig processor Känna till grundstrukturer hos ett datorsystem som är viktiga för valet av processor Känna till de allmänna egenskaperna hos olika periferienheter Kunna avgöra vilka enheter som behövs i det aktuella a fallet och deras nödvändiga d prestanda Göra valet att använda en processor med inbyggda enheter eller utnyttja externa enheter 2
Vad förväntas en ingenjör kunna göra inför ett mikrodatorprojekt? forts Ställa krav på utvecklingsmiljö iljö Vilket/vilka programspråk ska användas? Är tillgång till simulator viktig? Är tillgång till hårdvarudebugger viktig? Och vad gör då ingenjören? Försöker hitta passande processor Bevekelsegrunder Processorn har nödvändig uppbyggnad Ingenjören är bekant med processorfamiljen sedan tidigare Det finns bra litteratur att tillgå Utvecklingsmiljön är bra och har den funktionalitet (simulator, debugger etc) som behövs Ingenjören har använt miljön tidigare 3
Hur blir det? Utvecklingsmiljöer och dokumentation släpar efter så ska bevekelsegrunderna styra så får man välja en äldre processorfamilj. Och man väljer då gärna någon man redan känner till Vad gör man om ändå vill vara modern? Väljer en modern processor Nöjer sig med en enklare utvecklingsmiljö Det kan bli nödvändigt att arbeta i assembler Avstå från vältäckande simulator och debugger Man får nöja sig med tillgänglig dokumentation, dvs oftast bara manualer och applikationsnötter 4
Och vad kräver detta? Förmåga att självständigt navigera bland möjliga processorkandidater Förmåga att utifrån allmänna processorkunskaper använda datablad och manualer för att avgöra om ställda krav kan uppfyllas Förmåga att från allmänna kunskaper om periferienheter försöka hitta en processorvariant som passar Besluta vilka periferienheter som skall placeras externt Förmåga att från allmänna kunskaper om periferienheter med hjälp av manualer förstå hur enheterna skall konfigureras och användas Vad skall vi då göra i vår kurs? Komma närmare ingenjörssituationen Använda en processor utan debugger eller anpassade labenheter Processor är vald för att kunna genomföra kursen på ett samlat sätt Det är samma processor som vi har använt i tidigare labsystem (HC12) Vi kan använda samma utvecklingsmiljö som tidigare Vi kan inte simulera våra periferienheter 5
Ska vi bygga hela systemet? Nej! Processorn är monterad på ett labkort som gör att vi enkelt kommer åt dess portar. Det är dock ingen inskränkning då det enda som finns monterat är en kristallkrets för att få processorklockan att gå och portkontakter, dvs inga periferienheter Till portkontakterna kan vi ansluta enkla moduler som gör att vi kan ansluta oss till processorn. Modulerna är rena anslutningsenheter eller också har de enkla periferienheter av standardmodell Till dessa moduler kommer vi att ansluta egenkonstruerade elektroniska interface Vad har vi utöver hårdvaran och utvecklingsmiljön? Allmänna beskrivningar och tidigare kännnedom om processorenheter och generella periferienheter Hårdvarubeskrivningar av periferienheterna Manualer och datablad 6
Vad gör vi mer konkret? Lär oss att använda och bygga upp hård- och mjukvaruresurser i ett processorsystem Hanterar program i flyktigt och icke-flyktigt minne Bygger upp avbrottssystem Konfigurerar periferienheter Bygger interface till periferienheterna Skapar system med ett antal periferienheter Vilka enheter talar vi om? Timer (intern) Analog/digitalomvandlare (intern) Sampling (via timer) Digital/analogomvandlare (extern) PWM (intern) Seriella interface SCI, asynkron, vanlig COM-port (intern/extern) SPI, synkron (intern mot extern D/A-omvandlare) USB (extern) CAN (intern/extern) Klock-krets, PLL (intern) 7
Vad ingår utöver detta Föreläsningar om allmänna mikrodatorbegrepp Föreläsningar om olika periferienheters i funktionalitet Begrepp och funktioner som ger oss förmåga att konfigurera och använda våra enheter Mer allmänna begrepp som vi inte kommer att laborera på Föreläsningar om ett antal kommunikationsprotokoll som Bluetooth, USB, Firewire, LIN, CAN, MOST och Flexray Godkänd labkurs ger trea Examination I detta ingår ett kortare muntligt förhör för att se att du har deltagit i labgruppens arbete Tentamen för överbetyg Fokuserad på de allmänna begreppen från föreläsningarna och mer generella slutsatser från labbarna Tentamen ges bara i anslutning till kursen, inga omtentor 8