Port access I det efterfølgende vil vi anvende databladsoplysninger frem for anvende de færdige metoder.

Slides:



Advertisements
Lignende præsentationer
Access Point Y + router/gateway
Advertisements

Arkitektur - data.
Kan en Internet tilkoblet bruger sende en til andre Internet tilkoblede brugere uafhængig af hvilket operativsystem modtageren har? •Ja •Nej.
1 Pentium IA-32 Maskinarkitekturen Kort resume – uge 5.
Efteruddannelse Embedded C
NetBeans Installation og brug.
Digitalt og Analogt Input til Arduino.
Hvordan man skriver koden.
Structs Structs allokeres på stakken Memory-allokering sker ved oprettelse af variabel og ikke ved new Der kan defineres metoder incl. Constructor. Eksempel.
Publish Logs Klik på Geocaching.com access Og vælg Publish logs…
FEN IntroJava AAU1 Opsamling: afvikling af Java-programmer Input fra keyboard og fil Fra en prompt Fra BlueJ Fra NetBeans.
FEN IntroJava AAU1 Java grundelementer Variable og datatyper Sætninger og udtryk Metoder.
Delphi og C++ Builder C++ Referencer og pointere.
1 Bestanddele i en Windows form-løsning GUI kontroller (eng.: controls) & komponenter (eng.: components) Almindelige egenskaber, metoder & hændelser for.
Proces overblik med SIPOC modellen
The improved time/kørsels- registrering By Just Rock.
ASIC projekt VGA porten på Spartan3E 1.VGA Porten 2.Timing 3.Opbygning af FPGA 4.Opbygning af VHDL kode 5.Clock divider kode.
EFI, Extensible Firmware Interface - BIOS – EFI-BIOS - EFI - Intel - Afløser el. mellemled for IBM PC Basic Input Output System (1980) UEFI, Unified Extensible.
Compiler/fortolker struktur Mellem- kode Mellemk.- optimering Kode- generering Kode- optimering Lexikalsk- analyse Syntax- analyse Semantik- analyse -
ER-diagrammer Hvad er det? Og hvad bruges det til?
18. Strategisk analyse af interne forhold
Rapporter (Access, del 5). RHS – Informationsteknologi – Udgangspunkt Vi har oprettet en database Vi har defineret en eller flere tabeller, og.
Efteruddannelse Embedded C Modul 1 (Mandag den 19/4-2010)
Fundamentale datastrukturer
Ingeniørhøjskolen i Århus Slide 1 Newton approximation ”Oversæt” til algoritme - Step 5: Skriv kode - Step 4: Skriv pseudokode - Step 3: Specificér pre-
1 Fundamentale datastrukturer. 2 Definitioner: abstrakt datatype, datastruktur Elementære datastrukturer og abstrakte datatyper : arrays, stakke, køer,
FYSISK DESIGN 1. Hvem er vi Oskar, Troels og David.
Procestræ under afvikling af cp init login shell cp cp src dest.
8 RÅD VEDRØRENDE GOD PROGRAMMERING Effective (brown) Java.
FEN IntroJava AAU1 Klasser og objekter Grundbegreber Student-Course.
Efteruddannelse Embedded C Modul 3 (Onsdag den 21/4-2010)
03 – Udtryk og metoder. 2 NOEA2009Java-kursus – Udtryk og metoder Udtryk i Java Java har standard udtrykene… Værditildeling Subrutiner og funktionskald.
Per Printz Madsen 1 Linux kernen Monolithic kernel Support for dynamiske moduler Få kerne tråde Preemptive.
Interview service in Statistics Denmark Structure and Surveys.
DComNet1 ISA-niveauet (2). dComNet2 Niveauer af virtuelle maskiner ISA niveauet / maskinkodeniveauet / maskinniveau.
Paradigmer i Programmering 3. Højere ordens funktioner Idag: Højere ordens funktioner Algebraiske datatyper Næste gang: I/O, Filer, interaktive programmer.
Datalogi 1F: Multiprogrammering[3] 1 Planen for idag Kerner uden afbrydelser (KB4 kap. 6): –akernen: kerne med decentralt processkift –bkernen: kerne med.
Samtidighed. Disposition Formål med tråde Eksempel på fordel ved tråde Thread-pooling Livscyklus Problemstillinger Algoritmer ◦Dekkers ◦Peterson Opsumering.
Spec. af LottotalsGenerator interface LottoTal{ // S: mgd. af udtrukne tal // min, max: int - angiver intervallet (incl.) void set(int min, int max); //PRE.
M3 Jan R. Indhold Krav Indhold af modul M3 ACIA Registre Kontrol register Status register Baud rate Konklusion.
 Jens Bennedsen 2002Objektorienteret systemudvikling Persistens.
Trinvis forfinelse Systematisk, gradvis udvikling af programmer.
DMasArk1 Pentium IA-32 Maskinarkitekturen. dMasArk2 Historie (1).. starter i 1970 med udviklingen af Intel 4004:
SAS Code analyzer Barbara Biørn olsen.
Thea Falkenberg and Martin Sørensen
1 (c) W. J. Dally Digital Design: A Systems Approach Lecture 12: Timing.
UProcessorens hardware Architecture Kernen i en processor er ALUen. Det er den som kan udfører simple regne operationer. De tal den arbejdermed.
Opgave med funktioner Webintegrator HF1 PHP Object orienteret.
Port access  Indtil nu har vi anvendt færdige metoder til at tænde og slukke for LEDs, men den metode virker kun så længe vi arbejde med Keil boardet.
Sådan programmerer du arduino via Atmel Studio Af Orla Utoft Sørensen Mercantec.
Inden vi kan gå i gang skal du have installeret Keil uVision Under installationen er det vigtigt at vælge den rigtige hardware. Vi arbeder med følgende.
CANSAT & ARDUINO step by step
TÆT PÅ DIG TÆT PÅ JOB.
Hvorfor & Hvordan lære Elever At programmere Arduinoer
Nu har du installeret uVision og set at både programmet og boardet virker. Man kan ikke lære at cykle ved at se på andre, så i det efterfølgende skal du.
THE TIME IS NOW soon wireless?
1587 Server - Blandet miljø Embedded I
Embedded SW – C & picoBlaze
ADC (Analog/Digital converter) Bruges til at måle analoge spændinger på kontrollerens inputporte. På dit board sidder en drejeknap under displayet som.
I det efterfølgende vil vi prøve at opnå forbindelse til de knapper som er på boardet. Opgaven er at vi ved at trykke på knapperne kan få lyset til at.
Lav et nyt projekt og tilføj denne gang pakken Graphic LCD.
I det efterfølgende kommer nogle eksempler på C kode som adskiller sig fra det vi normalt anvender i C# Hvis du har behov for hurtigt at afprøve små stumper.
Interrupts. Indtil nu har hastigheden på dine blinkende LEDs været styret af et loop. Som du muligvis også har bemærket afhænger det meget af hvor travlt.
Hvad er det, og hvor bruges det?
Arduino antenne switch
I det efterfølgende kommer nogle eksempler på C kode som adskiller sig fra det vi normalt anvender i C# Hvis du har behov for hurtigt at afprøve små stumper.
IOT – Elkedel på internettet
Tests v/Palle.
Øvelse 7.1 De 4 flip-flop typer S-R: Set-Reset D: Delay T: Toggle
CS 3800 Switch/Router Lab Project Introduction
Præsentationens transcript:

Port access I det efterfølgende vil vi anvende databladsoplysninger frem for anvende de færdige metoder.

Find port i diagram LED 1 er forbundet til pin 8 på Port E

Find adresse på Port E Port E starter på adresse 0x

Find pin 8 configurations register Pin 8 ligger på bit 0-3 i CRH registeret, vi vil skrive 0x3 for at få General purpose output push-pull, 50MHz

Find offset adresse på BSRR og CRH BSRR offset er 0x10, CRH på 0x04

Koden /* myBlinky: Very Simple LED Flasher */ /* Dr. Mark Fisher, CMP, UEA, Norwich, UK. */ /* Last updated */ /**************************************************************/ #include #define GPIOE_CRH *((int *)0x ) //GPIOE address + CRH offset #define GPIOE_BSRR *((int *)0x ) //GPIOE address + BSRR offset #define GPIOE_BRR *((int *)0x ) //GPIOE address + BSRR offset #define RCC_APB2ENR *((int *)0x ) //Reset register til af GPIO int main (void) { int i; RCC_APB2ENR |= 1 << 6; //Enable IO Port E GPIOE_CRH = 0x ; //General purpose output push-pull, 50MHz for (;;) { /* Loop forever */ for (i = 0; i < ; i++) GPIOE_BSRR = 1 <<8; //Skriv til set register pin 8 for (i = 0; i < ; i++) GPIOE_BRR = 1 <<8; //Skriv til reset register pin 8 }

Opgave Afprøv foregående kode Prøv derefter at ændre koden så de andre LEDs slukkes Prøv at lave kode som kan aflæse keyboard på boardet – Find keys i diagrammet og deraf port og pin – Find adresse på porten – Opsæt porten til input – Enable porten i RCC_APB2ENR – Lav kode som aflæser porten

Alternativ port access /* myBlinky: Very Simple LED Flasher */ /* Dr. Mark Fisher, CMP, UEA, Norwich, UK. */ /* Last updated */ /**************************************************************/ #include int main (void) { const unsigned long led_mask = 1<<15; int i; int a; SystemInit(); /* Setup GPIO for LEDs */ RCC->APB2ENR |= 1 << 6; /* Enable GPIOE clock */ GPIOE->CRH = 0x ; /* Configure the GPIO for LEDs */ for (;;) { /* Loop forever */ for (i = 0; i < ; i++) GPIOE->BSRR = led_mask; /* Turn LED on */ for (i = 0; i < ; i++) GPIOE->BSRR = led_mask << 16; /* Turn LED off */ a = GPIOE->BRR; } Koden her anvender de registre som i forvejen er defineret. Afprøv koden, og prøv på samme måde igen at lave kode som aflæser input keys