De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

Vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 Onderwerpen voor vandaag Een embedded systeem: ARM bord.

Verwante presentaties


Presentatie over: "Vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 Onderwerpen voor vandaag Een embedded systeem: ARM bord."— Transcript van de presentatie:

1 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 Onderwerpen voor vandaag Een embedded systeem: ARM bord knipperen

2 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 2

3 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 3  sluit een bordje aan (parallel + USB)  installeer de files uit les7.rar  in een lege directory  let op: geen spaties in de pathname   dubbel-klik op de.ppr file

4 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 4 flip.c #include "ark.h" void ARK_LEDs_write( int LEDs ); void ARK_wait_us( int N ); int main(){ while(1){ ARK_LEDs_write( 0x55 ); ARK_wait_us( 500 * 1000 ); ARK_LEDs_write( 0xAA ); ARK_wait_us( 500 * 1000 ); } return 0; }

5 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 5 PsPad editor met GNU tools voor ARM asm/C/C++ ontwikkeling

6 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 6  build  start debugger

7 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 7 zet onder file > target settings:  Target = Remote/TCP  Hostname = 127.0.0.1  Port = 8888 (als je netjes afsluit blijft zou dit moeten blijven staan)

8 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 8 run > download

9 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 9

10 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 10 continue

11 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 11 als het goed is kom je nu op het breakpoint aan het begin van main

12 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 12 continue Zoals het een embedded programma betaamt eindigt ons programma nooit. stop

13 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 13 Na een ‘stop’ zit je meestal ergens in assembler

14 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 14

15 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 15 kitt.c #include "ark.h" void show( int n ){ ARK_LEDs_write( 1 << n ); ARK_wait_us( 50 * 1000 ); } int main(){ int i; for(;;){ for( i = 0; i < 8; i++ ){ show( i ); } for( i = 6; i > 0; i-- ){ show( i ); } } return 0; }

16 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 16 Je kan breakpoints toevoegen of verwijderen (ook in andere source files)

17 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 17 Je kan variabelen (en andere lijsten) bekijken

18 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 18 Je kan regel voor regel het programma uitvoeren

19 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 19 Als je dit krijgt heb je debugger/loader niet afgesloten

20 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 20 Voor als het even echt niet meer werkt:  als je de debugger hebt afgesloten moeten al die DOS schermen ook weg zijn (evt met de hand sluiten)  De editor sluiten en weer opstarten  de USB en Paralelle kabels er even uithalen om het bordje te resetten, USB eerst weer aansluiten, dan parallel.  PC uitzetten en weer aanzetten

21 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 21 Opdracht : ”knipperen” – 1/2 Schrijf een functie void LED( int n, int x ); Die de LED op positie n uit (als x == 0 ) of aan (als x != 0 ) zet. Die functie gebruikt een globale variabele All_LEDs waarin de toestand van alle LEDs wordt bijgehouden. Die variable wordt bijgewerkt, daarna kan ARK_LEDs_write worden aangeroepen.

22 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 22 Opdracht : ”knipperen” – 2/2 Gebruik twee FSM’s om een LED op 1/2 Hz en een andere LED op 1/3 Hz te laten knipperen. Je main functie roept de beide FSMs aan, die roepen weer de LED functie aan. Het event dat de main aan de FSMs doorgeeft moet zijn “er is weer 100 ms voorbij”. De FSMs hebben alleen een teller nodig, dus niet echt een state. De initialisatie mag in de main gebeuren.


Download ppt "Vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 Onderwerpen voor vandaag Een embedded systeem: ARM bord."

Verwante presentaties


Ads door Google