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

Slides:



Advertisements
Verwante presentaties
2PROJ5 – PIC assembler Hogeschool Utrecht / Institute for Computer, Communication and Media Technology 1 Les 5 - onderwerpen •DB038 hardware : toetsenbordje.
Advertisements




Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 Operatoren, Arrays, Command-line tools.
Instructie Programmeren Task 1 5JJ70. Task 1.1: Hello World •Klik naast de laatste accolade in de grijze kantlijn om een breakpoint neer te zetten, anders.
Inleiding programmeren in C++ Life Science & Technology 1 maart Universiteit Leiden.
Vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 Een programma opbouwen.
Uitleg installatie SAM Broadcaster v3 en v4 met de MySQL database
Afdeling/Naam Meervoudige installatie van Futurion op een netwerk Z:\Futurion.
Arduino project.
Gestructureerd programmeren in C
Vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 Onderwerpen voor vandaag Gelinkte lijsten Finite State.
Practica Computerlinguistiek Tekst en uitleg:
Les 5 - onderwerpen Aansturen van vier 7-segment displays
GESPRG Les 14 Gestructureerd programmeren in C. 174 Details! The devil is in the details.
Instructie Programmeren Task 1 5JJ70. Task 1.1: Hello World Klik naast de laatste accolade in de grijze kantlijn om een breakpoint neer te zetten, anders.
Static Keyword static voor functieleden functie niet voor een object aangeroepen class K {... static int minimum( int i, int j); } aanroep: K::minimum(
Inleiding programmeren in C++ Life Science & Technology 9 februari Universiteit Leiden.
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 1 Les 3 - onderwerpen Het.
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 1 Les 4 - onderwerpen Tellen.
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 Wouter van Ooijen Mail: Sheets en.
Vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 Onderwerpen voor vandaag Het ARM bord met wat library functies.
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 1 Les 4 - onderwerpen Multiplexen.
2PROJ5 – PIC assembler Hogeschool Utrecht / Institute for Computer, Communication and Media Technology 1 Les 3 - onderwerpen Instruction timing Shadow.
Computertechniek 2 – ARM assembler Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1  herhaling ARM assembler instructies.
Mail: Jan Zuurbier  Mail:
Unity Real time Service Pack 10 update Installatie opties.
Mail: (of Sheets en verdere info: Onderwerp: vervolg C
DU2PRES1 : C vervolg Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 Arrays en pointers lichtkrant op het ARM bordje.
Kies Hoe en wanneer installeren Wat is het doel Hoe werkt het (7 schermen)
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1  een MIDI track interpreteren, laten zien en afspelen.
2PROJ5 – PIC assembler Hogeschool Utrecht / Institute for Computer, Communication and Media Technology 1 Les 3 - onderwerpen  DB036 printjes subroutines.
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1  herhaling ARM assembler instructies  assembler.
Vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 Onderwerpen voor vandaag Finite State Machine (Eindige.
PEMSY1http:// 1  Herhaling: combineren van assembler en C  Herhaling: subroutine  Oefening: melodie Klas EV2B: week.
Computertechniek 2 – ARM assembler Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1  programma draaien vanuit ROM.
Tircms02-p les 3 Functies Strings Structuren. Functies 1. main() 2. { int k; k = 10 ; printf(“%d\n”,fac(k)); } 3. int fac(n) int n; 4. { int f; f= 1;
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 1 Les 6 - onderwerpen Uitleg.
Onderwerp: PIC assembler programmeren
Tircms03-p les 4 Klassen. Abstracte datatypes in C struct stack { char info[100]; int top; }; void reset(stack *s) { s->top = -1; } void push(stack *s,
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 C programmeren voor niet-C programmeurs les 3 redirection,
2PROJ5 – PIC assembler Hogeschool Utrecht / Institute for Computer, Communication and Media Technology 1 Les 2 - onderwerpen  Helaas nog geen printjes.
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 Wouter van Ooijen Mail: Sheets en.
Vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 Onderwerpen voor vandaag User-defined characters op de.
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 1 Les 2 - onderwerpen MPLAB.
2PROJ5 – PIC assembler Hogeschool Utrecht / Institute for Computer, Communication and Media Technology 1 Les 4 - onderwerpen DB027 hardware : LEDs en displays.
VPEMSY1, D3ECPT2 : ARM Assembler 1 Hogeschool Utrecht / Electrical Engineering & Design 1  Herhaling: CMP, CMN,
Vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 Onderwerpen voor vandaag top-down decompositie Opdrachten:
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 Maak, uitgaande van een MIDI file, een (klein) programma.
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1  Een (vaste) melodie spelen op de PC speaker 
2PROJ5 – PIC assembler Hogeschool Utrecht / Institute for Computer, Communication and Media Technology 1 Les 4 - onderwerpen DB038 hardware : luidsprekertje.
2TPRJ5 – PIC assembler Hogeschool Utrecht / Institute for Information & Communication Technology Wouter van Ooijen Mail: Sheets.
Computertechniek 2 – ARM assembler Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 Wouter van Ooijen Mail:
2PROJ5 – PIC assembler Hogeschool Utrecht / Institute for Computer, Communication and Media Technology 1.
2TPRJ8 – hardware en ontwikkelomgeving Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 Wouter van Ooijen Mail:
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 Wouter van Ooijen Mail: Sheets.
Instructie Programmeren Task 7
2PROJ5 – PIC assembler Hogeschool Utrecht / Institute for Computer, Communication and Media Technology 1 Les 3 - onderwerpen Instruction timing Shadow.
Installatie Windows 10 woensdag 30 september 2015.
Docentinstructie: Het is aan te bevelen de eerste dia’s klassikaal te tonen en met uitleg te bespreken. Als na zes dia’s een korte demo van Celsius/Fahrenheit.
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1  de track structuur van een MIDI file interpreteren.
C++ Les 1: introductie. Programmeren Programma’s scripts Websites libraries (Sound, GUI, netwerking…)
VPEMSY1, D3ECPT2 : ARM Assembler Hogeschool Utrecht / Electrical Engineering & Design 1  Herhaling B/BL, conditions,
Gameprogrammeren: Herhalingen
INGEBRUIKNAME & TESTEN
Embedded systemen Programmeren op de Arduino Les 1
Small Basic Console deel 2
Python – For loop + strings
Python – For loop + strings
Transcript van de presentatie:

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

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

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

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; }

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

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

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

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

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

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

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

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

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

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

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; }

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

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

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

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

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

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.

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.