Digitala projekt VT Myran

Storlek: px
Starta visningen från sidan:

Download "Digitala projekt VT Myran"

Transkript

1 Digitala projekt VT 2010 Myran Lina Ottosson I07, Lovisa Svensson I07 Grupp 02 Handledare: Bertil Lindvall Institutionen för elektro- och informationsteknik

2 Abstract This report is about the process containing the construction and implementation of an electronic game called Myran. The purpose of the project was to develop hardware and software simultaneously and learn how the different parts work together. It should result in some kind of construction, in this case Myran. The game is about an ant (or a pixel in the LCD-screen) that runs around catching apples that are displayed at random locations on the screen. For every fifth apple the ant takes, the speed of the ant increases. If it runs into any of the four walls surrounding the playing field, the game is lost. If the ant catches more than 100 apples, the game is won. 1

3 Innehållsförteckning Abstract... 1 Inledning... 3 Syfte... 3 Mål... 3 Kravspecifikation... 4 Hårdvara... 4 AVR ATMega Grafisk LCD-display, 128x64 pixlar... 4 Knappar... 5 Dual 4-Input NAND 74HC Mjukvara... 5 Genomförande... 6 Diskussion... 7 Resultat... 7 Referenser... 8 Bilaga Kopplingsschema... 9 Bilaga Headerfiler Källkod

4 Inledning Syfte Syftet med kursen Digitala projekt för I är att konstruera, bygga och testa en konstruktion, såsom man gör i industriellt utvecklingsarbete. En viktig del i processen är att förstå hur samspelet mellan mjukvara och hårdvara fungerar. Projektet ska resultera i en prototyp med nödvändig dokumentation samt möjlighet till vidareutveckling. Mål Som utvecklingsprototyp valdes ett enklare spel som döptes till Myran. Spelet går ut på att en myra, dvs en pixel, springer runt på LCD-displayen och fångar äpplen som dyker upp på slumpartade ställen. Ju fler äpplen myran fångar, desto snabbare springer den. För varje äpple myran tar får den dessutom ett poäng, när 100 poäng har uppnåtts vinns spelet. 3

5 Kravspecifikation Syftet med kravspecifikationen var att i ett tidigt stadium av arbetet formulera vad vi ville göra och vilka funktioner vi ville att spelet skulle ha. Kraven delades upp i två delar där den första delen beskriver vad som skulle uppfyllas för att få ett fungerande spel. Den andra delen innehåller krav som kunde uppfyllas i mån av tid eller finnas med som förslag på funktioner vid framtida vidareutveckling. Systemkraven som sattes upp var följande: När en ny spelomgång startar ska skärm och poäng nollställas. Spelet ska kunna styras från en knappsats med två eller fyra knappar. Det ska finnas en poängräknare som visar antalet poäng. Äpplen ska slumpas ut under spelets gång. Poängräknare ska ökas varje gång myran tar ett äpple. Samtidigt ska myrans hastighet öka med var femte äpple den tar. När myran går in i en vägg ska spelet förloras. När myran har tagit 100 poäng (det vill säga 100 äpplen) vinns spelet. När spelet förloras eller vinns ska spelaren få välja om den vill spela igen, annars avslutas spelet. I mån av tid skulle även dessa krav uppfyllas: Man ska kunna spela spelet på olika nivåer. En highscore-lista med de tre bästa resultaten ska kunna visas. När spelet vinns eller förloras ska poängen sparas in på highscorelistan om de kvalificerar sig in på den. När apparaten startas ska en menyrad komma upp där man får välja spelnivå eller om man vill se highscore för en viss nivå eller liknande. Hårdvara AVR ATMega16 Som processor användes en AVR ATMega16 eftersom den i stort sett innehåller allt som behövdes för konstruktionen. Där finns 1GB RAM-minne, EEPROM, intern klocka och JTAG-gränssnitt. Allt detta bedömdes som tillräckligt. Grafisk LCD-display, 128x64 pixlar Displayen är uppdelad i två skärmar om 64x64 pixlar vardera. För att bestämma till vilken av halvorna det ska skrivas finns två chip select. I y-led finns det 128 pixlar, där chip selecten bestämmer vilken del av skärmen man skriver i, medan x-led består av 8 pages om 8 pixlar vardera. Det innebär att man alltid skriver en page, det vill säga 8 pixlar, samtidigt. 4

6 Knappar Fyra knappar kopplades in för att styra myran över skärmen. Knapparna kopplades via en NAND-enhet till en avbrottsport (INT0). Portarna till alla knappar och till avbrottet sattes till aktiva höga och processorns interna motstånd utnyttjades. Av okänd anledning fungerade inte det interna motståndet för en av knapparna, vilket innebar att ett externt motstånd fick kopplas in istället. Dual 4-Input NAND 74HC20 Eftersom portarna till knapparna och till avbrottet var aktiva höga, hade en ANDenhet varit idealiskt för att koppla knapparna till samma externa avbrott.eftersom det inte fanns tillgängligt användes en NAND-enhet istället. Den komponent vi använde oss av innehåller två oberoende fyra-input NAND-portar. Mjukvara När mjukvaran till prototypen skapades försökte vi dela upp den i olika delar som beskriver olika områden. Det första området vi började implementera var LCDskärmen och dess funktioner. Genom att skapa två c-filer och en h-fil, kunde vi få med i stort sett alla funktioner för att starta, stänga av, skriva till skärmen et cetera. I lcd.h definieras de båda portarna som används för att kommunicera med skärmen. Dessutom maskas viktiga bitar ut som behövs för att kunna ge skärmen instruktioner l lcd.c. I init_lcd.c sätts grundinställningar till portarna. För att kunna köra programmet behövs ett main-program som passande nog placerades i filen main.c. I main anropas alla funktioner som krävs för att starta och köra spelet. Efter att ha anropat funktioner som startar skärmen och ritar spelplanen, anropas de funktioner som ligger i filen game.c. I game.c initieras först avbrottsrutinen för knapparna. Sedan sätts grundinställningarna för spelet innan programmet går in i evighetsloopen som först bryts när spelet vinns eller förloras. För att ta hand om avbrotten som genereras av att någon knapp trycks ned skapades filerna buttons.h och buttons.c. Funktionen i buttons.c returnerar ett positivt heltal som talar om för funktionen rungame() i game.c vilken knapp som har tryckts ned. Beroende på vilken knapp det var, gör sedan spelet olika saker. I spelet har vi valt att kunna skriva ut olika saker och därför har filerna font.h och font.c skrivits. I font.h definieras hur många pixlar som motsvarar en viss bokstav eller siffra och i font.c finns funktioner för att skriva ut olika ord eller siffror på skärmen. Eftersom poängen skrivs ut med hjälp av tre siffror på förutbestämd plats 001, , behövdes funktioner för att bestämma vilken siffra som ska skrivas på vilken plats så att alla siffror inte behöver skrivas ut varje gång poängräknaren ökar. Dessa funktioner återfinns i points.c. Eftersom äpplen slumpas ut på skärmen krävs funktioner som sköter detta. Äpplenas position i spelet är något som måste kunna nås av flera funktioner, inte minst de som 5

7 styr spelet. Därför lades ett antal globala variabler som bestämmer detta i filen apples.h. I apples.c användes en slumptalsgenerator för att slumpa ut ett tal mellan 1 och 20 för att sedan placera ett äpple på en av 20 förutbestämda positioner. Genomförande Det första steget i projektet var att skriva en kravspecifikation. Från början var målet med projektet att skapa ett så kallat snake-spel, men med tanke på processorns kapacitet och LCD-displayens utformning ändrades efterhand kravspecifikationen till tidigare nämnda konstruktion. Nästa steg var att rita ett kopplingsschema över hårdvaran. Efter att ha läst om de olika ingående komponenterna samt om hur ritprogrammet Powerlogic fungerar, ritades ett förslag till kopplingsschema upp. Även kopplingsschemat har uppdaterats ett antal gånger efterhand som vi lärde oss mer om de ingående komponenterna och deras funktioner. Kopplingsscemat för den färdiga prototypen finns i bilaga 1. När det första förslaget till kopplingsschema var godkänt, påbörjades byggandet av hårdvaran. För att undvika att av misstag smälta fast virtrådar, började vi med att löda det som skulle lödas, framförallt strömförsörjning och jordning. Sedan virades övriga kopplingar. Eftersom kopplingsschemat uppdaterades efterhand fick vi också vira om ett antal gånger under processen. Styrsignalerna till LCD-skärmen kopplades till port A i processorn och dataportarna till port B. Knapparna kopplades till port D och avbrottet till Port D2, det vill säga INT0. Knapparna jordades, men processorns inbyggda motstånd användes istället för att koppla dem till +5V. För att generera ett avbrott när någon knapp trycktes ned kopplades först alla fyra knappar till en NAND-port. Eftersom portarna till knapparna sattes till aktiva höga, innebar det att en etta genereras som utsignal från NAND-porten varje gång en knapp trycks ned. Eftersom avbrottsporten också sattes till aktiv hög, sattes utsignalen från första porten som insignal till andra porten.övriga tre insignaler till andra porten kopplades till +5V. Utsignalen från den andra porten kopplades sedan till avbrottsporten i processorn. Bilder av den färdiga konstruktionen ses i bilaga 3. När hårdvaran var färdig påbörjades den mer omfattande delen av projektet, programmeringen av mjukvaran. Först gick vi steg för steg igenom de olika komponenterna för att förstå hur de fungerade. Det första delmålet var att starta skärmen och rita ut en prick. Eftersom vissa förkunskaper som krävdes för att förstå delar av databladen saknades, fick vi testa oss fram till lösningar som fungerade. Ett exempel på det är att koden för instruktioner till skärmen, ses i bilaga 2, inte stämmer överens med timingen som anges i referns [3] (datablad för LCD-skärm). För att lära oss om och implemetera funtionerna för knapparna, skrevs ett mindre program där fyra olika prickar ritades ut på skärmen beroende på vilken knapp som trycktes ned. När även detta fungerade kunde det externa avbrottet för knapparna initieras. Från början hade en OR-enhet använts för att generera avbrott från någon 6

8 av knapparna. Då knapparna var satta som aktivt höga innebar det att det konstant genererades avbrott eftersom minst en knapp alltid var hög. För att få logiken rätt byttes denna mot en NAND-enhet enligt ovanstånde resonemang. När alla ingående komponenter fungerade återstod skrivandet av koden för själva spelet. De olika ingående delarna beskrivs under rubriken mjukvara. Koden hittas i bilaga 2. Resultat Efter ett antal veckors blod, svett, tårar och känslomässig berg-och-dalbana står den slutglitiga prototypen äntligen färdig. När ström kopplas till konstruktionen startas ett nytt spel omgånde där myran kryper runt planen i låg hastighet. Ett äpple har slumpats ut och poängräknaren står på noll. När spelaren sedan styr myran så att den tar äpplet, slumpas ett nytt äpple ut och poängräknaren ökar med ett. Dessutom ökas hastigheten för vart femte äpple som fångas. Om myran kryper in i väggen förloras spelet och om den tar mer än 100 äpplen vinns spelet. I båda fallen får spelaren välja om han/hon vill spela igen, annars stängs spelet av. Om spelaren vill spela igen startas en ny spelomgång med nollställd poängräknare och långsam hastighet. I och med detta anses kravspecifikationen vara uppfylld och projektet slutfört. Diskussion Som vidareutveckling av vår prototyp föreslår vi i första hand kraven som man kan uppfylla i mån av tid, se ovan. Man skulle dessutom kunna tänka sig att man slumpar ut hinder för myran som den inte får springa in i eller att man kan spela över internet. Under projektets gång har vi stött på många svårigheter. Det första och kanske allra största hindret var våra begränsade förkunskaper som bland annat visade sig när vi utan framgång försökte tolka delar av databladen. Varje gång en ny komponent och dess funktioner skulle implementeras stötte vi på nya problem. Efterhand och med hjälp av handledare och böcker, lärde vi oss dock hur de olika delarna fungerade och hur vi skulle gå till väga. Trots att det ibland har känts hopplöst har vi under arbetets gång dock lärt oss otroligt mycket, fått en grundläggande förståelse för hur mjukvara och hårdvara kan samspela i en konstruktion samt fått grundläggande kunskaper i digital elektronik. 7

9 Referenser Litteratur: [1] Kernighan & Ritchie,1988, The C Programming Language, Prentice Hall Software Series Internetkällor: [2] ATmega16 High-performance AVR 8-bit Microcontroller, [3] 128 X 64 Graphic Display, [4] 74LS20 Dual 4-Input NAND Gates, [5] Starta med Power Logic (PDF), pdf [6] AVR Libc Users Manual-1.6.4(HTML), 8

10 Bilaga 1 Kopplingsschema 9

11 Bilaga 2 Headerfiler Lcd.h #include <avr/io.h> #include <inttypes.h> #include <util/delay.h> #include <stdlib.h> #include <avr/interrupt.h> /* *Define Port B for Databus */ #define LCD_DATA_PORT PORTB #define LCD_DATA_PIN PINB #define LCD_DATA_DDR DDRB /* *Define Port A for control signals */ #define LCD_CTRL_PORT PORTA #define LCD_CTRL_PIN PINA #define LCD_CTRL_DDR DDRA /* *Define control signals to LCD-Display */ #define LCD_CS1P PA7 #define LCD_CS2P PA6 #define LCD_RST PA2 #define LCD_RW PA4 #define LCD_RS PA3 #define LCD_E PA5 /* *Define */ #define SET_LCD_CS1P (PORTA = _BV(PA7)) #define CLR_LCD_CS1P (PORTA &= ~_BV(PA7)) #define SET_LCD_CS2P (PORTA = _BV(PA6)) #define CLR_LCD_CS2P (PORTA &= ~_BV(PA6)) #define SET_LCD_RST (PORTA = _BV(PA2)) #define CLR_LCD_RST (PORTA &= ~_BV(PA2)) #define SET_LCD_RW (PORTA = _BV(PA4)) #define CLR_LCD_RW (PORTA &= ~_BV(PA4)) #define SET_LCD_RS (PORTA = _BV(PA3)) #define CLR_LCD_RS (PORTA &= ~_BV(PA3)) #define SET_LCD_E (PORTA = _BV(PA5)) #define CLR_LCD_E (PORTA &= ~_BV(PA5)) 10

12 Buttons.h #include <avr/io.h> #include <inttypes.h> #include <util/delay.h> #include <stdlib.h> #include <avr/interrupt.h> /* *Define Port D for Buttons */ #define BUTTON_DATA_PORT PORTD #define BUTTON_DATA_PIN PIND #define BUTTON_DATA_DDR DDRD Font.h #include <avr/io.h> #include <inttypes.h> #include <util/delay.h> #include <stdlib.h> #include <avr/interrupt.h> /* * Define font */ #define digit_0a 0x7c #define digit_0b 0x44 #define digit_0c 0x7c #define digit_1a 0x08 #define digit_1b 0x7c #define digit_1c 0x00 #define digit_2a 0x74 #define digit_2b 0x54 #define digit_2c 0x5c #define digit_3a 0x44 #define digit_3b 0x54 #define digit_3c 0x7c #define digit_4a 0x1c #define digit_4b 0x10 #define digit_4c 0x7c #define digit_5a 0x5c #define digit_5b 0x54 #define digit_5c 0x74 #define digit_6a 0x7c #define digit_6b 0x54 #define digit_6c 0x74 #define digit_7a 0x04 #define digit_7b 0x04 #define digit_7c 0x7c 11

13 #define digit_8a 0x7c #define digit_8b 0x54 #define digit_8c 0x7c #define digit_9a 0x1c #define digit_9b 0x14 #define digit_9c 0x7c #define letter_w_a 0x3c #define letter_w_b 0x40 #define letter_w_c 0x3c #define letter_w_d 0x40 #define letter_w_e 0x3c #define letter_i_a 0x7c #define letter_n_a 0x7c #define letter_n_b 0x08 #define letter_n_c 0x10 #define letter_n_d 0x7c #define letter_e_a 0x7c #define letter_e_b 0x54 #define letter_e_c 0x54 #define letter_r_a 0x7c #define letter_r_b 0x14 #define letter_r_c 0x68 #define letter_p_a 0x7c #define letter_p_b 0x14 #define letter_p_c 0x08 #define letter_t_a 0x04 #define letter_t_b 0x7c #define letter_t_c 0x04 #define letter_l_a 0x7c #define letter_l_b 0x40 #define letter_l_c 0x40 #define letter_o_a 0x38 #define letter_o_b 0x44 #define letter_o_c 0x44 #define letter_o_d 0x38 #define letter_s_a 0x48 #define letter_s_b 0x54 #define letter_s_c 0x24 #define letter_a_a 0x78 #define letter_a_b 0x14 #define letter_a_c 0x78 #define letter_g_a 0x38 #define letter_g_b 0x44 #define letter_g_c 0x54 #define letter_g_d 0x34 12

14 #define letter_y_a 0x0C #define letter_y_b 0x70 #define letter_y_c 0x0C Apples.h #include <inttypes.h> #include <avr/io.h> #include <stdlib.h> int apple_x; int apple_y1; int apple_y2; unsigned int apple_pos; unsigned int apple_pos1; unsigned int apple_pos2; Källkod Lcd.c #include "lcd.h" #include <avr/io.h> #include <stdlib.h> #include <util/delay.h> #include <inttypes.h> #include <avr/interrupt.h> void lcd_wi(int cs1, int cs2, unsigned int data) CLR_LCD_CS1P; CLR_LCD_CS2P; CLR_LCD_RS; LCD_DATA_PORT = data; CLR_LCD_RW; if(cs1 == 1) SET_LCD_E; SET_LCD_CS1P; CLR_LCD_E; CLR_LCD_CS1P; if(cs2 == 1) SET_LCD_E; SET_LCD_CS2P; CLR_LCD_E; CLR_LCD_CS2P; CLR_LCD_RW; CLR_LCD_CS1P; CLR_LCD_CS2P; SET_LCD_E; void lcd_wd(int cs1, int cs2, unsigned int data) 13

15 SET_LCD_RS; LCD_DATA_PORT = data; CLR_LCD_RW; if(cs1 == 1) SET_LCD_E; SET_LCD_CS1P; CLR_LCD_CS1P; if(cs2 == 1) SET_LCD_E; SET_LCD_CS2P; CLR_LCD_CS2P; CLR_LCD_RW; CLR_LCD_CS1P; CLR_LCD_CS2P; SET_LCD_E; Init_lcd.c #include <avr/io.h> #include <inttypes.h> #include <util/delay.h> #include "lcd.h" #include <stdlib.h> #include <avr/interrupt.h> void init(void) /* * reset */ LCD_DATA_DDR = 0xFF; LCD_CTRL_DDR = 0xFF; CLR_LCD_RST; SET_LCD_RST; /* * grundinst LCD */ CLR_LCD_CS1P; CLR_LCD_CS2P; CLR_LCD_RW; SET_LCD_E; CLR_LCD_RS; 14

16 Buttons.c #include <avr/io.h> #include <inttypes.h> #include <util/delay.h> #include <stdlib.h> #include "buttons.h" #include <avr/interrupt.h> int buttons(void) for(;;) unsigned int button = BUTTON_DATA_PIN; if(button == 0xF3) //upp return 1; else if(button == 0xEB) //höger return 2; else if(button == 0xDB) //Ner return 3; else if(button == 0xBB) //vänster return 4; Main.c #include <avr/io.h> #include <inttypes.h> #include <util/delay.h> #include "lcd.h" #include <stdlib.h> #include "buttons.h" #include <avr/interrupt.h> void main(void) startscreen(); setupscreen(); init_buttons(); _delay_ms(5000); clearscreen(); 15

17 void startscreen(void) init(); lcd_wi(0,1,0x3f); // startar skärmen clearscreen(); void setupscreen(void) clearscreen(); int a; int b; for(a = 0; a<8; a++) writetoscreen(a,0,0xff); for(a = 0; a<8; a++) writetoscreen(a,63,0xff); for(b=1; b<63; b++) writetoscreen(0,b,0x01); for(b=1; b<63; b++) writetoscreen(7,b,0x80); write_points(); write_digit_0(89); write_digit_0(93); write_digit_0(97); void clearscreen(void) lcd_wi(1,1,0x40); lcd_wi(1,1,0xb8); int y; int x; for(x=0; x<8; x++) unsigned int i = 0xB8 + x; lcd_wi(1,1,i); for(y=0; y<64; y++) lcd_wd(1,1,0x00); 16

18 void turnoff(void) lcd_wi(0,1,0x3e); void writetoscreen(int x, int y, unsigned int data) unsigned int x1 = 0xB8 + x; unsigned int y1; if(y < 64) y1 = 0x40 + y; lcd_wi(1,0,y1); lcd_wi(1,0,x1); lcd_wd(1,0,data); else if(y >= 64) int j = y-64; y1 = 0x40 + j; lcd_wi(0,1,y1); lcd_wi(0,1,x1); lcd_wd(0,1,data); Game.c #include <avr/io.h> #include <inttypes.h> #include <util/delay.h> #include <stdlib.h> #include "buttons.h" #include <avr/interrupt.h> #include "apples.h" int dir; int x_; int y_; unsigned int pos; int points; int time; void init_buttons(void) BUTTON_DATA_DDR = 0x00; BUTTON_DATA_PORT = 0xFF; enable_interrupt(); 17

19 void enable_interrupt(void) MCUCR = 0x02; GICR = 0x40; setupgame(); sei(); rungame(); SIGNAL (SIG_INTERRUPT0) dir = buttons(); void setupgame() dir = 1; x_ = 4; y_ = 32; pos = 0x08; points = 0; setapples(); time = 200; void rungame() while(1) _delay_ms(time); if(x_ < 0 x_ > 7 y_ < 1 y_ > 62) clearscreen(); write_loser(); _delay_ms(5000); end_routine(); return; if (points > 100) clearscreen(); write_winner(); _delay_ms(5000); end_routine(); return; 18

20 if (dir == 1) if(pos == 0x01) if(x_ == 7) writetoscreen(x_,y_,0x80); else writetoscreen(x_,y_,0x00); if (x_==apple_x && (y_ == apple_y1 y_ == apple_y2)&& (pos!= apple_pos1 pos!= apple_pos2)) writetoscreen(x_,y_,apple_pos); pos = 0x80; x_ = x_-1; pos = pos >> 1; unsigned int tmp = pos; if (x_==apple_x && (y_ == apple_y1 y_ == apple_y2)&& (pos!= apple_pos1 pos!= apple_pos2)) tmp =apple_pos pos; if (x_==0) tmp = 0x01; else if (x_==7) tmp = 0x80; writetoscreen(x_,y_,tmp); else if (dir == 2) unsigned int temp_; temp_ = 0x00; if(x_ == 0) temp_ = 0x01; else if(x_ == 7) temp_ = 0x80; if(x_==apple_x && (y_ == apple_y1 y_ == apple_y2)&& (pos!= apple_pos1 pos!= apple_pos2)) temp_ = apple_pos; writetoscreen(x_,y_,temp_); 19

21 y_=y_+1; unsigned int temp; temp = pos; if(x_== 0) temp = 0x01; else if(x_ == 7) temp = 0x80; if(x_==apple_x && (y_ == apple_y1 y_ == apple_y2)&& (pos!= apple_pos1 pos!= apple_pos2)) temp = apple_pos; writetoscreen(x_,y_,temp); else if (dir == 3) if(pos == 0x80) if(x_ == 0) writetoscreen(x_,y_,0x01); else writetoscreen(x_,y_,0x00); if (x_==apple_x && (y_ == apple_y1 y_ == apple_y2)&& (pos!= apple_pos1 pos!= apple_pos2)) writetoscreen(x_,y_,apple_pos); pos = 0x01; x_ = x_+1; pos = pos << 1; unsigned int tmp = pos; if (x_==apple_x && (y_ == apple_y1 y_ == apple_y2)&& (pos!= apple_pos1 pos!= apple_pos2)) tmp =apple_pos pos; if (x_==7) tmp = 0x80; else if (x_==0) tmp = 0x01; writetoscreen(x_,y_,tmp); 20

22 else if (dir == 4) unsigned int temp_; temp_ = 0x00; if(x_== 0) temp_ = 0x01; else if(x_ == 7) temp_ = 0x80; if(x_==apple_x && (y_ == apple_y1 y_ == apple_y2)&& (pos!= apple_pos1 pos!= apple_pos2)) temp_ = apple_pos; writetoscreen(x_,y_,temp_); y_=y_-1; unsigned int temp; temp = pos; if(x_== 0) temp = 0x01; else if(x_ == 7) temp = 0x80; if(x_==apple_x && (y_ == apple_y1 y_ == apple_y2)&& (pos!= apple_pos1 pos!= apple_pos2)) temp = apple_pos; writetoscreen(x_,y_,temp); if(x_==apple_x && (y_ == apple_y1 y_ == apple_y2) && (pos == apple_pos1 pos == apple_pos2)) points++; set_points(points); int n = points; if((n/5) == 0) time = time-10; unsigned int tmp = 0x00; if(x_== 0) tmp = 0x01; else if(x_ == 7) tmp = 0x80; 21

23 writetoscreen(apple_x,apple_y1,tmp); writetoscreen(apple_x,apple_y2,tmp); tmp=pos; if(x_== 0) tmp = 0x01; else if(x_ == 7) tmp = 0x80; writetoscreen(x_,y_,tmp); setapples(); void end_routine(void) clearscreen(); write_play_again(); int answer = buttons(); if(answer == 2) setupscreen(); setupgame(); rungame(); Font.c #include <avr/io.h> #include <inttypes.h> #include <util/delay.h> #include <stdlib.h> #include <avr/interrupt.h> #include "font.h" #include "lcd.h" void write_winner(void) writetoscreen(3,52,letter_w_a); writetoscreen(3,53,letter_w_b); writetoscreen(3,54,letter_w_c); writetoscreen(3,55,letter_w_d); writetoscreen(3,56,letter_w_e); writetoscreen(3,58,letter_i_a); writetoscreen(3,60,letter_n_a); writetoscreen(3,61,letter_n_b); writetoscreen(3,62,letter_n_c); writetoscreen(3,63,letter_n_d); writetoscreen(3,65,letter_n_a); writetoscreen(3,66,letter_n_b); writetoscreen(3,67,letter_n_c); writetoscreen(3,68,letter_n_d); 22

24 23 writetoscreen(3,70,letter_e_a); writetoscreen(3,71,letter_e_b); writetoscreen(3,72,letter_e_c); writetoscreen(3,74,letter_r_a); writetoscreen(3,75,letter_r_b); writetoscreen(3,76,letter_r_c); void write_loser(void) writetoscreen(3,54,letter_l_a); writetoscreen(3,55,letter_l_b); writetoscreen(3,56,letter_l_c); writetoscreen(3,58,letter_o_a); writetoscreen(3,59,letter_o_b); writetoscreen(3,60,letter_o_c); writetoscreen(3,61,letter_o_d); writetoscreen(3,63,letter_s_a); writetoscreen(3,64,letter_s_b); writetoscreen(3,65,letter_s_c); writetoscreen(3,67,letter_e_a); writetoscreen(3,68,letter_e_b); writetoscreen(3,69,letter_e_c); writetoscreen(3,71,letter_r_a); writetoscreen(3,72,letter_r_b); writetoscreen(3,73,letter_r_c); void write_points(void) writetoscreen(2,84,letter_p_a); writetoscreen(2,85,letter_p_b); writetoscreen(2,86,letter_p_c); writetoscreen(2,88,letter_o_a); writetoscreen(2,89,letter_o_b); writetoscreen(2,90,letter_o_c); writetoscreen(2,91,letter_o_d); writetoscreen(2,93,letter_i_a); writetoscreen(2,95,letter_n_a); writetoscreen(2,96,letter_n_b); writetoscreen(2,97,letter_n_c); writetoscreen(2,98,letter_n_d); writetoscreen(2,100,letter_t_a); writetoscreen(2,101,letter_t_b); writetoscreen(2,102,letter_t_c); writetoscreen(2,104,letter_s_a); writetoscreen(2,105,letter_s_b); writetoscreen(2,106,letter_s_c);

25 void write_play_again(void) writetoscreen(3,45,letter_p_a); writetoscreen(3,46,letter_p_b); writetoscreen(3,47,letter_p_c); writetoscreen(3,49,letter_l_a); writetoscreen(3,50,letter_l_b); writetoscreen(3,51,letter_l_c); writetoscreen(3,53,letter_a_a); writetoscreen(3,54,letter_a_b); writetoscreen(3,55,letter_a_c); writetoscreen(3,57,letter_y_a); writetoscreen(3,58,letter_y_b); writetoscreen(3,59,letter_y_c); writetoscreen(3,63,letter_a_a); writetoscreen(3,64,letter_a_b); writetoscreen(3,65,letter_a_c); writetoscreen(3,67,letter_g_a); writetoscreen(3,68,letter_g_b); writetoscreen(3,69,letter_g_c); writetoscreen(3,70,letter_g_d); writetoscreen(3,72,letter_a_a); writetoscreen(3,73,letter_a_b); writetoscreen(3,74,letter_a_c); writetoscreen(3,76,letter_i_a); writetoscreen(3,78,letter_n_a); writetoscreen(3,79,letter_n_b); writetoscreen(3,80,letter_n_c); writetoscreen(3,81,letter_n_d); void write_digit_0(int y) writetoscreen(4,y,digit_0a); writetoscreen(4,(y+1),digit_0b); writetoscreen(4,(y+2),digit_0c); void write_digit_1(int y) writetoscreen(4,y,digit_1a); writetoscreen(4,(y+1),digit_1b); writetoscreen(4,(y+2),digit_1c); void write_digit_2(int y) writetoscreen(4,y,digit_2a); writetoscreen(4,(y+1),digit_2b); writetoscreen(4,(y+2),digit_2c); 24

26 void write_digit_3(int y) writetoscreen(4,y,digit_3a); writetoscreen(4,(y+1),digit_3b); writetoscreen(4,(y+2),digit_3c); void write_digit_4(int y) writetoscreen(4,y,digit_4a); writetoscreen(4,(y+1),digit_4b); writetoscreen(4,(y+2),digit_4c); void write_digit_5(int y) writetoscreen(4,y,digit_5a); writetoscreen(4,(y+1),digit_5b); writetoscreen(4,(y+2),digit_5c); void write_digit_6(int y) writetoscreen(4,y,digit_6a); writetoscreen(4,(y+1),digit_6b); writetoscreen(4,(y+2),digit_6c); void write_digit_7(int y) writetoscreen(4,y,digit_7a); writetoscreen(4,(y+1),digit_7b); writetoscreen(4,(y+2),digit_7c); void write_digit_8(int y) writetoscreen(4,y,digit_8a); writetoscreen(4,(y+1),digit_8b); writetoscreen(4,(y+2),digit_8c); void write_digit_9(int y) writetoscreen(4,y,digit_9a); writetoscreen(4,(y+1),digit_9b); writetoscreen(4,(y+2),digit_9c); 25

27 Apples.c #include <avr/io.h> #include <inttypes.h> #include <util/delay.h> #include <stdlib.h> #include <avr/interrupt.h> #include "apples.h" void setapples(void) int rnd = rand()%20 + 1; if (rnd ==1) apple_x=0; apple_y1=4; apple_y2=5; apple_pos = 0x31; apple_pos1 = 0x20; apple_pos2 = 0x10; else if (rnd ==2) apple_x=0; apple_y1=30; apple_y2=31; apple_pos = 0x61; apple_pos1 = 0x40; apple_pos2 = 0x20; else if (rnd ==3) apple_x=0; apple_y1=50; apple_y2=51; apple_pos = 0x31; apple_pos1 = 0x20; apple_pos2 = 0x10; else if (rnd ==4) apple_x=1; apple_y1=17; apple_y2=18; apple_pos = 0x03; apple_pos1 = 0x02; apple_pos2 = 0x01; else if (rnd ==5) apple_x=1; apple_y1=45; apple_y2=46; apple_pos = 0xC0; apple_pos1 = 0x80; apple_pos2 = 0x40; 26

28 else if (rnd ==6) apple_x=2; apple_y1=25; apple_y2=26; apple_pos = 0x30; apple_pos1 = 0x20; apple_pos2 = 0x10; else if (rnd ==7) apple_x=2; apple_y1=61; apple_y2=62; apple_pos = 0x60; apple_pos1 = 0x20; apple_pos2 = 0x40; else if (rnd ==8) apple_x=3; apple_y1=8; apple_y2=9; apple_pos = 0x18; apple_pos1 = 0x10; apple_pos2 = 0x08; else if (rnd ==9) apple_x=3; apple_y1=35; apple_y2=36; apple_pos = 0x30; apple_pos1 = 0x20; apple_pos2 = 0x10; else if (rnd ==10) apple_x=3; apple_y1=50; apple_y2=51; apple_pos = 0x06; apple_pos1 = 0x04; apple_pos2 = 0x02; else if (rnd ==11) apple_x=4; apple_y1=28; apple_y2=29; apple_pos = 0xC0; apple_pos1 = 0x80; apple_pos2 = 0x40; 27

29 else if (rnd ==12) apple_x=4; apple_y1=59; apple_y2=60; apple_pos = 0x30; apple_pos1 = 0x10; apple_pos2 = 0x20; else if (rnd ==13) apple_x=5; apple_y1=27; apple_y2=28; apple_pos = 0x0C; apple_pos1 = 0x80; apple_pos2 = 0x40; else if (rnd ==14) apple_x=5; apple_y1=34; apple_y2=35; apple_pos = 0x60; apple_pos1 = 0x40; apple_pos2 = 0x20; else if (rnd ==15) apple_x=6; apple_y1=11; apple_y2=12; apple_pos = 0x18; apple_pos1 = 0x10; apple_pos2 = 0x08; else if (rnd ==16) apple_x=6; apple_y1=42; apple_y2=43; apple_pos = 0x30; apple_pos1 = 0x10; apple_pos2 = 0x20; else if (rnd ==17) apple_x=6; apple_y1=57; apple_y2=58; apple_pos = 0x03; apple_pos1 = 0x01; apple_pos2 = 0x02; 28

30 else if (rnd ==18) apple_x=7; apple_y1=5; apple_y2=6; apple_pos = 0xE0; apple_pos1 = 0x40; apple_pos2 = 0x20; else if (rnd ==19) apple_x=7; apple_y1=33; apple_y2=34; apple_pos = 0x83; apple_pos1 = 0x01; apple_pos2 = 0x02; else if (rnd ==20) apple_x=7; apple_y1=55; apple_y2=56; apple_pos = 0x8C; apple_pos1 = 0x08; apple_pos2 = 0x04; writetoscreen(apple_x,apple_y1,apple_pos); writetoscreen(apple_x,apple_y2,apple_pos); Points.c #include <avr/io.h> #include <inttypes.h> #include <util/delay.h> #include "lcd.h" #include <stdlib.h> #include "buttons.h" #include <avr/interrupt.h> void set_points(int p) int temp=p; temp = p%10; points_w(temp,97); if(p>9) temp = p/10; temp = temp%10; points_w(temp,93); if(p>99) temp = p/100; temp = temp%10; points_w(temp,89); 29

31 void points_w(int tmp, int y) if (tmp==0) write_digit_0(y); if (tmp==1) write_digit_1(y); if (tmp==2) write_digit_2(y); if (tmp==3) write_digit_3(y); if (tmp==4) write_digit_4(y); if (tmp==5) write_digit_5(y); if (tmp==6) write_digit_6(y); if (tmp==7) write_digit_7(y); if (tmp==8) write_digit_8(y); if (tmp==9) write_digit_9(y); 30

32 Bilaga 3 31

Rapport. Fyra i rad-spel. Rapport Digitala Projekt EITF11 Grupp 9 Emma Rasmusson & Louise Ragnarsson Handledare: Bertil Lindvall

Rapport. Fyra i rad-spel. Rapport Digitala Projekt EITF11 Grupp 9 Emma Rasmusson & Louise Ragnarsson Handledare: Bertil Lindvall Rapport Digitala Projekt EITF11 2017-05-08 Rapport Fyra i rad-spel Sammanfattning: Detta dokument beskriver arbetsprocessen i det projekt som är en del av kursen Digitala Projekt(EITF11) vid Lunds Tekniska

Läs mer

Snake. Digitala Projekt (EITF11) Fredrik Jansson, I-12 Lunds Tekniska Högskola,

Snake. Digitala Projekt (EITF11) Fredrik Jansson, I-12 Lunds Tekniska Högskola, Snake Digitala Projekt (EITF11) Fredrik Jansson, I-12 Lunds Tekniska Högskola, 2015-05-18 Oskar Petersen, I-12 Handledare: Bertil Lindvall Abstract Denna rapport beskriver ett projekt där ett klassiskt

Läs mer

Digitala Projekt VT13. PING-Pong

Digitala Projekt VT13. PING-Pong Digitala Projekt VT13 PING-Pong Författare: Patrik Karlsson I-10, Erik Friberg I-10 Handledare: Bertil Lindvall Projektarbete Institutionen för Elektro- & Informationsteknik 2013-05-20 Abstract The purpose

Läs mer

Digitala Projekt(EITF40) - Larm

Digitala Projekt(EITF40) - Larm Digitala Projekt(EITF40) - Larm Handledare: Bertil Lindvall Erik Oredsson, I-09 Sara Sellin, I-09 2012-05-08 1. SAMMANFATTNING I denna rapport presenteras vårt projekt att bygga ett huslarm från grunden

Läs mer

LARMANLÄGGNING. Digitala Projekt, EITF11. Oskar von Knorring Emin Karimov Henrik Akej Handledare: Bertil Lindvall

LARMANLÄGGNING. Digitala Projekt, EITF11. Oskar von Knorring Emin Karimov Henrik Akej Handledare: Bertil Lindvall LARMANLÄGGNING Digitala Projekt, EITF11 Oskar von Knorring Emin Karimov Henrik Akej Handledare: Bertil Lindvall 1. Sammanfattning Vi har byggt ett larm vars syfte är att användas i hemmet. Larmet använder

Läs mer

Växtviskaren EITF11 Digitala projekt VT15, I12

Växtviskaren EITF11 Digitala projekt VT15, I12 Växtviskaren EITF11DigitalaprojektVT15,I12 NathalieLiljebrunn,EbbaRiismark,AnnaNorelius LundsTekniskaHögskola Institutionenförelektro ochinformationsteknik Handledare:BertilLindvall,AndreasJohansson 2015

Läs mer

Digitala projekt HT 2007 PONG

Digitala projekt HT 2007 PONG Digitala projekt HT 2007 PONG Emil Klasson, Fredrik Eneroth Grupp 3 2007-12-04 Digitala projekt Abstract This document describes our own construction and implementation of the first video game ever made

Läs mer

EITF11. WormFight. Axel Eriksson, Felix Geuken Handledare: Bertil Lindvall EITF11

EITF11. WormFight. Axel Eriksson, Felix Geuken Handledare: Bertil Lindvall EITF11 EITF11 WormFight Axel Eriksson, Felix Geuken Handledare: Bertil Lindvall EITF11 Innehåll Inledning... 3 Kravspecifikation... 3 Teori - Hårdvara... 3 Processor - AVR ATMega16... 3 Display - GDM12864C...

Läs mer

Lunds Tekniska Högskola Elektro- och informationsteknik Digitala projekt (EITF11)

Lunds Tekniska Högskola Elektro- och informationsteknik Digitala projekt (EITF11) Skola: Institution : Kurs : Lunds Tekniska Högskola Elektro- och informationsteknik Digitala projekt (EITF11) Projekttyp : Rapportsammanfattning Handledare : Bertil Lindvall Studenter : Datum : 2015-05-11

Läs mer

Digitala Projekt (EITF11) Hemlarm

Digitala Projekt (EITF11) Hemlarm Digitala Projekt (EITF11) Hemlarm Karl Nordenstorm, I-12, gem12kno 2014-05-16 Handledare: Bertil Lindvall Sammanfattning Den här rapporten beskriver arbetet bakom hur en prototyp för ett hemlarm har utvecklats

Läs mer

Larmcentral. Digitala Projekt. Cecilia Olsson & Erika Björck Handledare: Bertil Lindvall LUNDS TEKNISKA HÖGSKOLA 2015-05-18

Larmcentral. Digitala Projekt. Cecilia Olsson & Erika Björck Handledare: Bertil Lindvall LUNDS TEKNISKA HÖGSKOLA 2015-05-18 2015 Larmcentral Digitala Projekt Cecilia Olsson & Erika Björck Handledare: Bertil Lindvall LUNDS TEKNISKA HÖGSKOLA 2015-05-18 Inledning Denna rapport är en sammanställning av projektet i kursen Digitala

Läs mer

TETRIS. LTH, Campus Helsingborg EITA15 Digitala System

TETRIS. LTH, Campus Helsingborg EITA15 Digitala System TETRIS LTH, Campus Helsingborg EITA15 Digitala System Handledare: Bertil Lindvall Författare: Isak Shamun, Viktor Kulle, Mark Slipac och Dennis Järnåsen Datum: 2019-05-09 Abstract This report concerns

Läs mer

Bilen som inte kan krocka

Bilen som inte kan krocka Projektrapport Digitala system EITA15 Bilen som inte kan krocka Gruppmedlemmar: Oscar Skarler, Jonathan Persson, Erik Schiemann och Mohammed Abou Naasa vt 2019 Sammanfattning Inom kursen Digitala system

Läs mer

Pulsmätare Digitala Projekt EITF11

Pulsmätare Digitala Projekt EITF11 Pulsmätare Digitala Projekt EITF11 Grupp 5 Sebastian Mattsson, 900611 ain09sma@student.lu.se Johannes Persson, 880823 ain09jpe@student.lu.se Handledare: Bertil Lindvall Innehållsförteckning Inledning...3

Läs mer

Innehållsförteckning. Figur- och tabellförteckning. Figure 1 Blockschema över hårdvaran...4 Figure 2 Blockschema över programet...

Innehållsförteckning. Figur- och tabellförteckning. Figure 1 Blockschema över hårdvaran...4 Figure 2 Blockschema över programet... Abstract Syftet var att konstruera en väder station som håller koll på temperaturen. Huvudfunktionen var att få en grafisk visning av temperaturen över ett visst tidsintervall eftersom vi valde den grafiska

Läs mer

Effektpedal för elgitarr

Effektpedal för elgitarr EITF11 - Digitala Projekt Effektpedal för elgitarr Handledare: Bertil Lindvall Ivan Rimac (I05) Jimmy Lundberg (I08) 2011-05-10 Contents Bakgrund... 3 Kravspecifikation... 3 Kravspecifikation Effektpedal...

Läs mer

The Intelligent Timer

The Intelligent Timer The Intelligent Timer Linnea Karell och Oscar Bagge, I10 Handledare: Bertil Lindvall 2013-05-20 Abstract The objective of this project was to build a prototype of a digital timer. The product design specification

Läs mer

EITF11 Digitala Projekt TIC TAC TOE. Lukas Ljungblom & Johan Lyckenvik I-13 Handledare: Bertil Lindvall

EITF11 Digitala Projekt TIC TAC TOE. Lukas Ljungblom & Johan Lyckenvik I-13 Handledare: Bertil Lindvall EITF11 Digitala Projekt TIC TAC TOE Lukas Ljungblom & Johan Lyckenvik I-13 Handledare: Bertil Lindvall Lunds Tekniska Högskola VT 2016 0 Sammanfattning Rapporten handlar om ett projekt i kursen EITF11

Läs mer

Department of Information Technology Digitala projekt. SuperKull. Daniel Öhman Alexander Persson

Department of Information Technology Digitala projekt. SuperKull. Daniel Öhman Alexander Persson Department of Information Technology Digitala projekt SuperKull Daniel Öhman Alexander Persson Abstract The purpose of this course was to design and construct an electronic

Läs mer

#include <avr/io.h> #include <avr/interrupt.h> #include <util/delay.h> unsigned char num;

#include <avr/io.h> #include <avr/interrupt.h> #include <util/delay.h> unsigned char num; #include #include #include unsigned char num; int count = 0; // antal i lokalen char larmtriggered = 0; //om larmet är utlöst char larmactivated = 0; //om larmet

Läs mer

EITF11 - Digitala projekt. Hastighetsmätare. Hugo Backmyr Mattias Karlsson

EITF11 - Digitala projekt. Hastighetsmätare. Hugo Backmyr Mattias Karlsson EITF11 - Digitala projekt Hastighetsmätare Hugo Backmyr 2015-05-17 Inledning Syftet med kursen är att illustrera industriellt utvecklingsarbete. Målet med projektuppgiften är en prototyp för vidareutveckling

Läs mer

Thunder s Truck projektrapport

Thunder s Truck projektrapport LTH Thunder s Truck projektrapport EITF11 Digitala projekt 2012-05-10 Abstract The goal of this project was to build a truck operated by an IP-remote. The robot is built using standard parts such as two

Läs mer

Temperaturmätare med lagringsfunktion DIGITALA PROJEKT EITF11 GRUPP 14, ERIK ENFORS, LUDWIG ROSENDAL, CARL MIKAEL WIDMAN

Temperaturmätare med lagringsfunktion DIGITALA PROJEKT EITF11 GRUPP 14, ERIK ENFORS, LUDWIG ROSENDAL, CARL MIKAEL WIDMAN 2016 Temperaturmätare med lagringsfunktion DIGITALA PROJEKT EITF11 GRUPP 14, ERIK ENFORS, LUDWIG ROSENDAL, CARL MIKAEL WIDMAN Innehållsförteckning INLEDNING... 3 KRAVSPECIFIKATION AV PROTOTYP... 3 FUNKTIONELLA

Läs mer

DIGITALA PROJEKT (EITF40) Fartmätare

DIGITALA PROJEKT (EITF40) Fartmätare ELEKTRO- OCH INFORMATIONSTEKNIK DIGITALA PROJEKT (EITF40) Fartmätare Handledare: Bertil Lindvall Per Fernström, ie09pf7 Albin Nilsson, ie09an4 5/14/2012 1 Abstract The purpose behind this project is to

Läs mer

Digitala Projekt (EITF11)

Digitala Projekt (EITF11) Digitala Projekt (EITF11) Temperaturgivare med larm Handledare: Bertil Lindvall 2014-05-20 Erik Hellered, I-11 Andreas Sjöblom, I-11 Philip Dahlström, I-11 Table of Contents Inledning... 1 Kravspecifikation...

Läs mer

Väderstation. Digitala Projekt EITF11 Institutionen för Elektro- och Informationsteknik Lunds Tekniska Högskola

Väderstation. Digitala Projekt EITF11 Institutionen för Elektro- och Informationsteknik Lunds Tekniska Högskola Väderstation Anna Kjölstad Svedu och Emma Sikander, I09 The overall purpose of this project was to gain further knowledge of the making of digital devices, including the complexity of the process as well

Läs mer

Helena Harrysson och Linnéa Wickberg

Helena Harrysson och Linnéa Wickberg Snake Ett klassiskt spel i ny tappning Helena Harrysson och Linnéa Wickberg 2013-05-20 Handledare Bertil Lindvall Abstract The course Digitala Projekt, EITF11, focuses on the process of constructing a

Läs mer

TEMPERATURMÄTARE MED GRAFRITARE

TEMPERATURMÄTARE MED GRAFRITARE LUNDS TEKNISKA HÖGSKOLA TEMPERATURMÄTARE MED GRAFRITARE Grupp 6 Jesper Henrikson & Viktor Sköld Handledare: Bertil Lindvall 1 Innehållsförteckning Innehållsförteckning 2 Inledning 3 Kravspecifikation 4

Läs mer

EITF40 - RFID-terminal. Joakim Marculescu (dt08jm6), Eric Johansson (dt08ej6) 2012-02-28

EITF40 - RFID-terminal. Joakim Marculescu (dt08jm6), Eric Johansson (dt08ej6) 2012-02-28 EITF40 - RFID-terminal Joakim Marculescu (dt08jm6), Eric Johansson (dt08ej6) 2012-02-28 Contents 1 Introduktion 3 2 Kravspecifikation 3 3 Prototypen 4 3.1 Hårdvara............................... 4 3.2

Läs mer

Digitala Projekt(EITF40) - Larm

Digitala Projekt(EITF40) - Larm Digitala Projekt(EITF40) - Larm Handledare: Bertil Lindvall Kristoffer Sätermark, dt08ks6 Magnus Johansson, dt08mj9 Innehåll 1 Introduktion 1 2 Kravspec 1 3 Hårdvara 2 3.1 knappsats och decoder........................

Läs mer

PlantPuppy Räddaren för den som inte kan hålla växterna vid liv

PlantPuppy Räddaren för den som inte kan hålla växterna vid liv Lunds Tekniska Högskola Elektro- och informationsteknik Digitala Projekt PlantPuppy Räddaren för den som inte kan hålla växterna vid liv Gerda Sidwall Thygesen Sofia Sundbom Zoë Wyon ine14gth@student.lu.se

Läs mer

1 Bakgrund 4. 2 Kravspecifikation Definitioner Grundläggande krav Användarfall 5

1 Bakgrund 4. 2 Kravspecifikation Definitioner Grundläggande krav Användarfall 5 Larmanläggning Tor Berglund Sebastian Svensson Bromert Projektarbete inom Digitala Projekt EITF11 Institutionen för elektro- och informationsteknik Handledare: Bertil Lindvall 2017-05-20 Abstract In the

Läs mer

Rapport Digitala Projekt EITF Grupp 12 Elin Blomstergren, Victor Sundgren Handledare: Bertil Lindvall. Fyra i rad

Rapport Digitala Projekt EITF Grupp 12 Elin Blomstergren, Victor Sundgren Handledare: Bertil Lindvall. Fyra i rad Fyra i rad Sammanfattning Detta dokument behandlar ett projekt genomfört i kursen Digitala Projekt vid Lunds Tekniska högskola. Syftet med det projekt som avhandlas i denna rapport var att sammanställa

Läs mer

Lunds Tekniska Högskola EITF11 Digitala projekt. Bandspelaren

Lunds Tekniska Högskola EITF11 Digitala projekt. Bandspelaren Lunds Tekniska Högskola EITF11 Digitala projekt Bandspelaren Johan Hansson & Cecilia Skoglund 22 maj 2017 Abstract This is a report describing the work process, hardware, software and results of a project

Läs mer

The Phenomenal Doorbell Bilaga 2. Källkod

The Phenomenal Doorbell Bilaga 2. Källkod The Phenomenal Doorbell Bilaga 2. Källkod #include #include #include //Variabler int flag = 0; int count = 0; int timevect[8]; int bellbutton = 0; int waitbutton

Läs mer

Digitala System Projekt - EITA15 VT *SUPER DUPER KLOCKAN*

Digitala System Projekt - EITA15 VT *SUPER DUPER KLOCKAN* Digitala System Projekt - EITA15 VT - 2019 *SUPER DUPER KLOCKAN* Handledare: Bertil Lindvall Studenter: NamWan Chansaeng Janne Stojovski Joakim Svensson Daniel Löfgren Abstract The goal of this project

Läs mer

Digitala projekt rapport

Digitala projekt rapport Digitala projekt rapport Alexander Westrup, d04aw@student.lth.se Martin Sandgren, d04ms@student.lth.se 4 december 2007 Innehåll 1 Abstract 1 2 Inledning 1 3 Arbetsgång 1 4 Hårdvara 1 4.1 Processor...............................

Läs mer

Kla ggvisarskylt. -med en underton av rassel. av Jonathan So nnerup & Gabriel Jo nsson

Kla ggvisarskylt. -med en underton av rassel. av Jonathan So nnerup & Gabriel Jo nsson Kla ggvisarskylt -med en underton av rassel av Jonathan So nnerup & Gabriel Jo nsson May 29, 2012 Abstract This report describes the creation of the Kläggnummerskylt, a project in the course Digital Projects

Läs mer

Laboration 4: Knappstuds Drivrutiner för att eliminera störningar.

Laboration 4: Knappstuds Drivrutiner för att eliminera störningar. ATMega16 Laborationer av Kjell 2 Rev:5 Datum: 29.09.2010 Page 1 of 7 Laboration 4: Knappstuds Drivrutiner för att eliminera störningar. Inledning: Laborationskortet EasyAVR6 har bland annat tryckknappar

Läs mer

Digitala Projekt EITF11 Grupp 9 Projektarbete Hanna Bondesson Marcus Skog. Reaktionsspel EITF11

Digitala Projekt EITF11 Grupp 9 Projektarbete Hanna Bondesson Marcus Skog. Reaktionsspel EITF11 Digitala Projekt EITF11 Grupp 9 Projektarbete Hanna Bondesson Handledare: Bertil Lindvall Albin Schurmann 2018-05-19 Marcus Skog Reaktionsspel EITF11 Abstract This report is an outcome of the Digital Projects

Läs mer

High Core Remote Car X8000 Cool

High Core Remote Car X8000 Cool High Core Remote Car X8000 Cool Ett projekt i kursen Digitala projekt EITF11 Grupp 13 Niklas Ohlsson Anna Rengstedt Per Vingå Handledare: Bertil Lindvall Abstract: This project was made when taking the

Läs mer

Rapport Digitala Projekt EITF11 Grupp 4 Axel Sundberg, Jakob Wennerström Gille Handledare: Bertil Lindvall

Rapport Digitala Projekt EITF11 Grupp 4 Axel Sundberg, Jakob Wennerström Gille Handledare: Bertil Lindvall Sammanfattning I denna rapport behandlas ett projekt inom kursen Digitala Projekt, EITF11, vid Lunds Tekniska högskola. Syftet med projektet är att konstruera en enkel digital prototyp samt programmera

Läs mer

DIGITALA PROJEKT Väderstation

DIGITALA PROJEKT Väderstation DIGITALA PROJEKT Väderstation Christian Lindquist, E03 Leonardo Bello, E03 Abstract Almost everybody has some kind of temperature measurement device in their home. The latest in this industry are more

Läs mer

Gustaf Backman, Anton Nystedt, Nicholas Peebo Battleships. Lunds tekniska högskola. EITF11 Digitala projekt

Gustaf Backman, Anton Nystedt, Nicholas Peebo Battleships. Lunds tekniska högskola. EITF11 Digitala projekt Battleships Lunds tekniska högskola EITF11 Digitala projekt Gustaf Backman, Anton Nystedt & Nicholas Peebo 1 1. Inledning 1.1 Bakgrund Digitala projekt (EITF11) är en konstruktionskurs där studenter delas

Läs mer

Rafiki Wa Kupanda. EITF11, Digitala projekt VT18. Linnea Håkansson, Anton Gunneberg, Ruben Schultz

Rafiki Wa Kupanda. EITF11, Digitala projekt VT18. Linnea Håkansson, Anton Gunneberg, Ruben Schultz Rafiki Wa Kupanda EITF11, Digitala projekt VT18 Linnea Håkansson, Anton Gunneberg, Ruben Schultz Lunds Tekniska Högskola Institutionen för elektro- och informationsteknik Handledare: Bertil Lindvall och

Läs mer

Projektrapport - Roterande digital LED-klocka

Projektrapport - Roterande digital LED-klocka Projektrapport - Roterande digital LED-klocka Kurs : EITF 11 - Digitala projekt Elever : Axel Truedsson, Erik Lundström, Sara Åkerblom Handledare : Bertil Lindvall Datum : 2017-05-17 Lunds Tekniska Högskola

Läs mer

Projekt EITA15. Väckarklocka. LTH Ingenjörshögskolan vid Campus Helsingborg Datateknik

Projekt EITA15. Väckarklocka. LTH Ingenjörshögskolan vid Campus Helsingborg Datateknik Projekt Väckarklocka LTH Ingenjörshögskolan vid Campus Helsingborg Datateknik Grupp:, och Handledare: Bertil Lindvall och Lars Göran Larsson Kurs: EITA 15 Lunds Tekniska Högskola Datum: 2019-05-21 Sammanfattning

Läs mer

Ansvarig lärare: Olof Andersson, Telefon 021-101314 (besöker skrivsalen)

Ansvarig lärare: Olof Andersson, Telefon 021-101314 (besöker skrivsalen) MÄLRLENS HÖGSKOL Institutionen för elektroteknik Tentamen Mikrodatorteknik T3760 atum 2005-10-28 Tid 08.30 12.30 nsvarig lärare: Olof ndersson, Telefon 021-101314 (besöker skrivsalen) Om du klarat samtliga

Läs mer

Källkod. #include <avr/io.h> #include <util/delay.h> #include <avr/interrupt.h> #define green_diode PD5. #define RS PD4

Källkod. #include <avr/io.h> #include <util/delay.h> #include <avr/interrupt.h> #define green_diode PD5. #define RS PD4 Källkod #include #include #include #define red_diode PD6 #define green_diode PD5 #define E PD0 #define RW PD1 #define RS PD4 unsigned int password = 1; unsigned

Läs mer

EITF11 - Digitala Projekt

EITF11 - Digitala Projekt EITF11 - Digitala Projekt Tvåfaktorslås Lunds Universitet, Lunds Tekniska Högskola Skriven av Erik Mellberg, Hannes Olsson & Zack Jeppesen 22 maj 2018 Sida 1 av 16 Abstract The purpose of this report is

Läs mer

Feeding Daisy. EITF11 Lunds Tekniska Högskola. Grupp 12: Pontus Akervall Louise Landare Anton Schölin. En automatisk blomvattnare

Feeding Daisy. EITF11 Lunds Tekniska Högskola. Grupp 12: Pontus Akervall Louise Landare Anton Schölin. En automatisk blomvattnare Feeding Daisy En automatisk blomvattnare EITF11 Lunds Tekniska Högskola Grupp 12: Pontus Akervall Louise Landare Anton Schölin Handledare: Bertil Lindvall Introduktion... 3 Hårdvara... 3 Processor... 3

Läs mer

RemoteBud. Inlämnas: Patrik Johnsson, e01pjo Viktor Karlsson, e01vk

RemoteBud. Inlämnas: Patrik Johnsson, e01pjo Viktor Karlsson, e01vk RemoteBud Inlämnas: 2005-02-01 Patrik Johnsson, e01pjo Viktor Karlsson, e01vk Abstract Skulle du också vilja styra dina lampor och rulla ner dina persienner med hjälp av din TV-fjärrkontroll? Remotebud

Läs mer

LARMANLÄGGNING. Digitala Projekt, EITF11. Oskar von Knorring Emin Karimov Henrik Akej Handledare: Bertil Lindvall

LARMANLÄGGNING. Digitala Projekt, EITF11. Oskar von Knorring Emin Karimov Henrik Akej Handledare: Bertil Lindvall LARMANLÄGGNING Digitala Projekt, EITF11 Oskar von Knorring Emin Karimov Henrik Akej Handledare: Bertil Lindvall 1. Sammanfattning Vi har byggt ett larm vars syfte är att användas i hemmet. Larmet använder

Läs mer

Digitala projekt Linjeföljande bil

Digitala projekt Linjeföljande bil Digitala projekt Linjeföljande bil EITA15 Elektro- och informationsteknik Handledare: Bertil Lindvall Grupp 17 Hannes Adolfsson Milad Amini Albin Svärd Almir Šaran Emir Zukic EITA 15 - Digitala projekt

Läs mer

Digitala Projekt: Digitala Projekt, EITF11 - VT17 Oscar Ahlgren, Patrik Lorentsson och Sten Hellberg Handledare: Bertil Lindvall

Digitala Projekt: Digitala Projekt, EITF11 - VT17 Oscar Ahlgren, Patrik Lorentsson och Sten Hellberg Handledare: Bertil Lindvall Digitala Projekt: Arcade Basket Digitala Projekt, EITF11 - VT17, och Handledare: Bertil Lindvall Industriell Ekonomi, Lunds Tekniska Högskola 2017-05-22 Abstract This project is a part of the course Digital

Läs mer

The Secure Light. Digitala Projekt EITF11. Hanna Tinglöf, I-12 Anna Horvath, I-12 Filippa Österlin, I-12. Handledare: Bertil Lindvall

The Secure Light. Digitala Projekt EITF11. Hanna Tinglöf, I-12 Anna Horvath, I-12 Filippa Österlin, I-12. Handledare: Bertil Lindvall The Secure Light Digitala Projekt EITF11 Hanna Tinglöf, I-12 Anna Horvath, I-12 Filippa Österlin, I-12 Handledare: Bertil Lindvall Lunds Tekniska Högskola 2015-05-18 ABSTRACT The Secure Light is the new

Läs mer

Liftmaestro. Lunds Tekniska Högskola Elektro- och informationsteknik. Olle Gemfors, I13 Dayanand Sagar, I13 Mattias Wendler, I13

Liftmaestro. Lunds Tekniska Högskola Elektro- och informationsteknik. Olle Gemfors, I13 Dayanand Sagar, I13 Mattias Wendler, I13 Lunds Tekniska Högskola Elektro- och informationsteknik Liftmaestro Olle Gemfors, I13 Dayanand Sagar, I13 Mattias Wendler, I13 Handledare: Andreas Johansson, Bertil Lindvall 2016-05-20 Projektarbete, EITF11

Läs mer

Digitalt Projekt: Radiostyrd Bil

Digitalt Projekt: Radiostyrd Bil Digitala Projekt EITF11 Digitalt Projekt: Radiostyrd Bil Elektro- och informationsteknik, Lunds Tekniska Högskola och Handledare: Bertil Lindvall 2015-05-20 1 Digitala Projekt EITF11 Abstract This project

Läs mer

SIMON SAYS Projekt i EITF11 Digitala Projekt

SIMON SAYS Projekt i EITF11 Digitala Projekt SIMON SAYS Projekt i EITF11 Digitala Projekt Oskar Strömberg I13 & Olof Svanemur I13 Lunds Tekniska Högskola Institutionen för elektro- och informationsteknik Handledare: Bertil Lindvall Sammanfattning

Läs mer

Datorprojekt, del 1. Digitala system 15 p

Datorprojekt, del 1. Digitala system 15 p Namn: Laborationen godkänd: Digitala system 15 p L T H I n g e n j ö r s h ö g s k o l a n v i d C a m p u s H e l s i n g b o r g Datorprojekt, del 1 Projektet består i att skapa en klocka där tiden visas

Läs mer

LTH Ingenjörhögskolan vid Campus Helsingborg. Mastermindspel

LTH Ingenjörhögskolan vid Campus Helsingborg. Mastermindspel LTH Ingenjörhögskolan vid Campus Helsingborg Mastermindspel Handledare: Bertil Lindvall, Lars-Göran Larsson 2019 Projektarbete för kursen Digitala System, EITA15 Utförd av: Henrik Brange, Linus Piggott,

Läs mer

Pulsmätare med varningsindikatorer

Pulsmätare med varningsindikatorer Pulsmätare med varningsindikatorer Elektro- och informationsteknik Projektrapport, EITF11 Digitala Projekt Charlie Hedhav Sofia Johansson Louise Olsson 2016-05-17 Abstract During the course Digitala Projekt

Läs mer

Lunds Tekniska Högskola. I-10 Grupp 11: David Sundström Max Schulz Albert Lundberg Handledare: Bertil Lindvall

Lunds Tekniska Högskola. I-10 Grupp 11: David Sundström Max Schulz Albert Lundberg Handledare: Bertil Lindvall 2013 Lunds Tekniska Högskola I-10 Grupp 11: David Sundström Max Schulz Albert Lundberg Handledare: Bertil Lindvall DIGITALA PROJEKT The objective of the course Digital Project is letting a group of students

Läs mer

Rapportsammanfattning. Optima Sous Vide

Rapportsammanfattning. Optima Sous Vide Rapportsammanfattning Optima Sous Vide Elektro- och informationsteknik, Lunds Tekniska Högskola Anton Bengtsson, Hannes Helin, Ingrid Hyltander Handledare: Bertil Lindvall 2017-05-20 Abstract The following

Läs mer

Digitala Projekt (EITF11) Larmanläggning

Digitala Projekt (EITF11) Larmanläggning Digitala Projekt (EITF11) Larmanläggning Handledare: Bertil Lindvall 2013-05-20 Caroline Brandt, Jonathan Bratel, Angelika Jansson, Sammanfattning Kursen Digitala Projekt (I) har som syfte att skapa förståelse

Läs mer

A-del motsvarande KS1

A-del motsvarande KS1 MÄLARDALENS HÖGSKOLA Institutionen för elektroteknik Tentamen Mikrodatorteknik CT3760 Datum 2005-10-28 Tid 08.30 12.30 Svar till A- och B-del A-del motsvarande KS1 Uppgift A1. Vad blir resultatet då instruktionen

Läs mer

DEPARTMENT OF INFORMATION TECHNOLOGY. Digitala Projekt. Redovisning av Projekt - Grupp 14

DEPARTMENT OF INFORMATION TECHNOLOGY. Digitala Projekt. Redovisning av Projekt - Grupp 14 DEPARTMENT OF INFORMATION TECHNOLOGY Digitala Projekt Redovisning av Projekt - Grupp 14 Carl Hoffstedt (c03cho@student.lth.se) & Gustaf Lund (d02gl@student.lth.se) 5/19/2007 How can you construct an embedded

Läs mer

Linjeföljare Digitala projekt Johan Engström e02je Henrik Persson e02hp

Linjeföljare Digitala projekt Johan Engström e02je Henrik Persson e02hp 2005-12-11 Linjeföljare Digitala projekt Johan Engström e02je Henrik Persson e02hp Abstract This project is about how we built a line follower. The project-course is given by the It-institution of LTH

Läs mer

Design vid utveckling av inbyggda system

Design vid utveckling av inbyggda system Design vid utveckling av inbyggda system Föreläsning i KMM, 2013-10-11 Innehåll Hårdvarunära design Avbrottsrutiner och huvudloopar Kopplingsschema Designspec Dagens föreläsning Hårdvarunära design - värt

Läs mer

Digitala projekt, EDI021 Rapport Handledare: Bertil Lindvall

Digitala projekt, EDI021 Rapport Handledare: Bertil Lindvall Digitala projekt, EDI021 Rapport Handledare: Bertil Lindvall Zoltan Darvas (dt06zd8) Nicklas Nidhögg(dt06nn8) 2010-03-01 1 Abstract I detta project har vi skapat ett huslarm där det finns två stycken sensorer,

Läs mer

Projektrapport Målgång

Projektrapport Målgång Projektrapport Målgång Lunds Tekniska Högskola EITF11 Digitala Projekt 2016-05-23 Grupp 3 Författare: Albert Johansson Ludvig Brisby Jeppsson Mattias Hamberg Handledare: Bertil Lindvall 1 Inledning...

Läs mer

Konstruktion av en radiostyrd legobil. Digitala projekt av Arbon Vata Leonardo Vukmanovic Amid Bhatia

Konstruktion av en radiostyrd legobil. Digitala projekt av Arbon Vata Leonardo Vukmanovic Amid Bhatia Konstruktion av en radiostyrd legobil Digitala projekt av Arbon Vata Leonardo Vukmanovic Amid Bhatia 1 1.Innehållsförtäckning Rapport Radiostyrd LEGO bil...1 1. Innehållsförtäckning...2 2.0 Inledning...3

Läs mer

Department of Information Technology Digitala Projekt Frysboxregulator. 10 december 2007

Department of Information Technology Digitala Projekt Frysboxregulator. 10 december 2007 Department of Information Technology Digitala Projekt Frysboxregulator Andreas Gustavsson E05 Simon Saffer D02 10 december 2007 1 Abstract The project consisted of constructing a regulator for a freezer.

Läs mer

Aml Abbas, Ali Darwish, Ehsanolah Hafezi, Fatima Zahra Doussi Grupp 15

Aml Abbas, Ali Darwish, Ehsanolah Hafezi, Fatima Zahra Doussi Grupp 15 Aml Abbas, Ali Darwish, Ehsanolah Hafezi, Fatima Zahra Doussi Grupp 15 Slutrapport: Klocka 2019-05-21 Kurs: Digitala System (EITA15) Handledare: Bertil Lindvall Institution: Campus Helsingborg 1 Abstract

Läs mer

AVR 3 - datorteknik. Avbrott. Digitala system 15 hp. Förberedelser

AVR 3 - datorteknik. Avbrott. Digitala system 15 hp. Förberedelser Namn: Laborationen godkänd: Digitala system 15 hp AVR 3 - datorteknik LTH Ingenjörshögskolan vid Campus Helsingborg Avbrott. Syften med den här laborationen är att introducera avbrott. Avbrott som uppkommer

Läs mer

EITF11: Bandkanon Grp 05

EITF11: Bandkanon Grp 05 EITF11: Bandkanon Grp 05 Kristofer Adolfsson John Karlsson Erik Lagerberg Handledare: Bertil Lindvall Abstract This project was planned and completed during the course EITF11 at Lund Tekniska Högskola

Läs mer

Datorteknik 1 (AVR 1)

Datorteknik 1 (AVR 1) Namn: Laborationen godkänd: Digitala system 15 hp Datorteknik 1 (AVR 1) LTH Ingenjörshögskolan vid Campus Helsingborg Introduktion till datorteknikutrustningen. Laborationens syfte. Syftet med laborationen

Läs mer

Design av inbyggda system

Design av inbyggda system Design av inbyggda system Innehåll Hårdvarunära design Erfarenhet värd att tänka på Avbrottsrutiner och huvudloopar hantering av gemensamma data Kopplingsschema hur och varför Designspecar bra / dåligt

Läs mer

Projektrapport - Feststation

Projektrapport - Feststation Projektrapport - Feststation Program: Industriell Ekonomi, LTH Kurs: EITF11 Digitala projekt Elever : Simon Janzon, Ellen Peber & Love Regefalk, Handledare: Bertil Lindvall & Christoffer Cederberg Datum:

Läs mer

Pulsmätare. EITF11 Digitala Projekt VT15. Grupp 9: Emma Albertz, Mathilde Hagander & Alexandra Mansner Handledare: Andreas Johansson & Bertil Lindvall

Pulsmätare. EITF11 Digitala Projekt VT15. Grupp 9: Emma Albertz, Mathilde Hagander & Alexandra Mansner Handledare: Andreas Johansson & Bertil Lindvall Pulsmätare EITF11 Digitala Projekt VT15 Grupp 9: Emma Albertz, Mathilde Hagander & Alexandra Mansner Handledare: Andreas Johansson & Bertil Lindvall Abstract As part of the course Digital Projects EITF11

Läs mer

/* * dancing3.c * * Created: :53:20 * Author: digpi10 */ #include <avr/io.h> #include <avr/interrupt.h> #include <util/delay.

/* * dancing3.c * * Created: :53:20 * Author: digpi10 */ #include <avr/io.h> #include <avr/interrupt.h> #include <util/delay. /* * dancing3.c * * Created: 2016-05-19 10:53:20 * Author: digpi10 */ #include #include #include int value; //värde från AD-omvandlaren int limit = 0b0101000000;

Läs mer

Digitala Projekt. Chip Quiz. Projektmedlemmar: Olov Nordenstam och Linus Hägerbrand. Grupp 9

Digitala Projekt. Chip Quiz. Projektmedlemmar: Olov Nordenstam och Linus Hägerbrand. Grupp 9 Digitala Projekt Chip Quiz Projektmedlemmar: Olov Nordenstam och Linus Hägerbrand Grupp 9 050516 Abstract We have accomplished a project in the course Digital Systems, Project Laboratory. We decided to

Läs mer

Whac A mole. Ett rektionstest i kursen Digitala Projekt EITF11 utfört av: Axel Spångberg I10 Marcus Witting I10. Handlett av: Bertil Lindvall

Whac A mole. Ett rektionstest i kursen Digitala Projekt EITF11 utfört av: Axel Spångberg I10 Marcus Witting I10. Handlett av: Bertil Lindvall Whac A mole Ett rektionstest i kursen Digitala Projekt EITF11 utfört av: Axel Spångberg I10 Marcus Witting I10 Handlett av: Bertil Lindvall Abstract In the course Digitala Projekt the students are tasked

Läs mer

Kontrollskrivning Mikrodatorteknik CDT209 2007-09-20 S2-704

Kontrollskrivning Mikrodatorteknik CDT209 2007-09-20 S2-704 Kontrollskrivning Mikrodatorteknik CDT209 2007-09-20 S2-704 Svar Svar till uppgifterna lämnas på separat papper. En poäng per uppgift. Max 30 poäng. Bonuspoäng beräknas enligt följande tabell: 6-10 poäng

Läs mer

Demonstration och konsultation Arbetsbokens avsnitt 5 och 6 LCD Grafisk display Introduktion till laboration 3

Demonstration och konsultation Arbetsbokens avsnitt 5 och 6 LCD Grafisk display Introduktion till laboration 3 LCD Display och Grafik Demonstration och konsultation Arbetsbokens avsnitt 5 och 6 LCD Grafisk display Introduktion till laboration 3 Målsättning: Efter lektionen ska alla självständigt kunna slutföra

Läs mer

Rapport i Digitala Projekt (EDI021)

Rapport i Digitala Projekt (EDI021) Rapport i Digitala Projekt (EDI021) Grupp 6 Daniel Raneland, dt05dr1 2009-03-01 1 Sammanfattning Idag är det väldigt vanligt att man har en termometer hemma som mäter temperaturen både inomhus och utomhus.

Läs mer

Digitala Projekt - Snake Grupp - 7. Erik Ljung, d01elj Erik Simmons, d01es 25 maj 2005

Digitala Projekt - Snake Grupp - 7. Erik Ljung, d01elj Erik Simmons, d01es 25 maj 2005 Digitala Projekt - Snake Grupp - 7 Erik Ljung, d01elj Erik Simmons, d01es 25 maj 2005 INNEHÅLL INNEHÅLL Innehåll 1 Introduktion 3 2 Hårdvara 3 2.1 Processor - Motorola 68008..................... 3 2.2

Läs mer

EIT. Digitala projekt EITF11. Larmanläggning. Handledare Bertil Lindvall Anna Lindberg I-11 Caroline Vitasp I-11 Eric Eliason I-10

EIT. Digitala projekt EITF11. Larmanläggning. Handledare Bertil Lindvall Anna Lindberg I-11 Caroline Vitasp I-11 Eric Eliason I-10 EIT Digitala projekt EITF11 Larmanläggning Handledare Bertil Lindvall 2014-05-14 Anna Lindberg I-11 Caroline Vitasp I-11 Eric Eliason I-10 Sammanfattning I kursen digitala projekt (EITF11) på Lunds Tekniska

Läs mer

Design av inbyggda system

Design av inbyggda system Design av inbyggda system Innehåll Hårdvarunära design Erfarenhet/Utmaningar värda att tänka på Avbrottsrutiner och huvudloopar hantering av gemensamma data Kopplingsschema hur och varför Designspecar

Läs mer

Source code. #undef F_CPU. #define F_CPU 8000000UL. #include <avr/io.h> #include <avr/delay.h> #include <string.h> #include <avr/eeprom.

Source code. #undef F_CPU. #define F_CPU 8000000UL. #include <avr/io.h> #include <avr/delay.h> #include <string.h> #include <avr/eeprom. Source code #undef F_CPU #define F_CPU 8000000UL #include #include #include #include #define LCD_DATA_PORT #define LCD_DATA_DDR #define LCD_DATA_PIN PORTA

Läs mer

Laboration 5. Temperaturmätning med analog givare. Tekniska gränssnitt 7,5 p. Förutsättningar: Uppgift: Temperatur:+22 C

Laboration 5. Temperaturmätning med analog givare. Tekniska gränssnitt 7,5 p. Förutsättningar: Uppgift: Temperatur:+22 C Namn: Laborationen godkänd: Tekniska gränssnitt 7,5 p Vt 2014 Laboration 5 LTH Ingenjörshögskolan vid Campus Helsingborg Temperaturmätning med analog givare. Syftet med laborationen är att studera analog

Läs mer

Väderstation. EITF11, Digitala projekt RAPPORT. Isabella Bergvik, Emma Sandén & Hanna Åberg

Väderstation. EITF11, Digitala projekt RAPPORT. Isabella Bergvik, Emma Sandén & Hanna Åberg Väderstation EITF11, Digitala projekt RAPPORT Isabella Bergvik, Emma Sandén & Hanna Åberg Handledare: Bertil Lindvall Institution: Elektro- och informationsteknik, Lunds tekniska Högskola -05-21 Figur

Läs mer

JOFEN-Prototypes. Målsökande pansarvagn. Projektarbete i Kursen EITA15. Jonatan Claesson, Olle Jonasson, Felix Rödén, Edvin Rossi & Nils Olén

JOFEN-Prototypes. Målsökande pansarvagn. Projektarbete i Kursen EITA15. Jonatan Claesson, Olle Jonasson, Felix Rödén, Edvin Rossi & Nils Olén JOFEN-Prototypes Målsökande pansarvagn Projektarbete i Kursen EITA15 Jonatan Claesson, Olle Jonasson, Felix Rödén, Edvin Rossi & Nils Olén Handledare: Bertil Lindvall & Lars-Göran Larsson Abstract This

Läs mer

Lista på registeruppsättningen i PIC16F877A Datablad TTL-kretsar 74-serien

Lista på registeruppsättningen i PIC16F877A Datablad TTL-kretsar 74-serien DIGITAL- OCH MIKRODATORTEKNIK, U2 11-01-12 09.00 13.00 Tillåtna hjälpmedel: Instruktionslista PIC16F877A Lista på registeruppsättningen i PIC16F877A Datablad TTL-kretsar 74-serien Fullständiga lösningar

Läs mer

Studera databladen för LCD på sid 4, 5, 7, 8, 14, 18, 19, 20 och 23. Datablad finns på kurshemsidan.

Studera databladen för LCD på sid 4, 5, 7, 8, 14, 18, 19, 20 och 23. Datablad finns på kurshemsidan. Namn: Laborationen godkänd: Digitala system 15 p Datorprojekt, del 2 L T H I n g e n j ö r s h ö g s k o l a n v i d C a m p u s H e l s i n g b o r g Projektlaboration 2, skrivning till LCD. Förberedelser:

Läs mer

Avståndsmätare. Digitala System EITA Grupp 7. Abdelsalem Yabrag, Abdulhadi kikar, Fredrik Peterson, Jesper Annefors

Avståndsmätare. Digitala System EITA Grupp 7. Abdelsalem Yabrag, Abdulhadi kikar, Fredrik Peterson, Jesper Annefors Avståndsmätare Digitala System EITA15 2019-05-21 Grupp 7 Abdelsalem Yabrag, Abdulhadi kikar, Fredrik Peterson, Jesper Annefors Handledare: Bertil Lindvall, Lars-Göran Larsson Abstract There are some situations

Läs mer

Blue Key Digitala projekt VT

Blue Key Digitala projekt VT Blue Key Digitala projekt VT 2 2004 Maj 2004 Martin Erikson, E00 Mikael Andersson, E00 Department of Information Technology 0 Lund Institute of Technology Sammanfattning Denna rapport behandlar vårt projekt

Läs mer

Vi har i kursen Digitala Projekt EITF11 byggt en spelkonsol på vilken man kan spela Snake. Mjukvaran programmerades i C på en AVR Mega32 processor.

Vi har i kursen Digitala Projekt EITF11 byggt en spelkonsol på vilken man kan spela Snake. Mjukvaran programmerades i C på en AVR Mega32 processor. Vi har i kursen Digitala Projekt EITF11 byggt en spelkonsol på vilken man kan spela Snake. Mjukvaran programmerades i C på en AVR Mega32 processor. Övrig hårdvara som användes var en 128x64-pixlars LCD-display,

Läs mer

Labyrintspelet EDI021 Grupp 5

Labyrintspelet EDI021 Grupp 5 Labyrintspelet EDI021 Grupp 5 Kristian Sylwander d04ks@student.lth.se Emil Wasberger d03ew@student.lth.se Michael Winberg d04mwi@student.lth.se 16 maj 2008 1 Inledning Syftet med kursen EDI021 är att bygga

Läs mer

DIGITALA PROJEKT - EITF11

DIGITALA PROJEKT - EITF11 LUNDS UNIVERSITET DIGITALA PROJEKT - EITF11 KYLSKÅPSLARM Handledare: Bertil Lindvall 2015-04-15 Sammanfattning Syftet med kursen Digitala Projekt (EITF11) är att konstruera en fungerande prototyp innehållandes

Läs mer