Rapport i Digitala Projekt (EDI021)
|
|
- Lisa Axelsson
- för 6 år sedan
- Visningar:
Transkript
1 Rapport i Digitala Projekt (EDI021) Grupp 6 Daniel Raneland, dt05dr
2 1 Sammanfattning Idag är det väldigt vanligt att man har en termometer hemma som mäter temperaturen både inomhus och utomhus. Det blir allt vanligare med avancerade funktioner på dessa, såsom tryckmätare eller statistik. Mitt projekt gick ut på att bygga en digital termometer som ritar upp en graf över temperaturen de senaste 12 timmarna. Själva termometern styrs av en AVR ATMega16, en microprocessor med bland annat inbyggt minne och AD-omvandlare. Projektet resulterade i en prototyp som skulle kunna serietillverkas, prototypen är ihopsatt på ett kopplingsbräde och komponenterna är sammankopplade med sladdar. 1
3 Innehåll 1 Sammanfattning 1 2 Inledning Krav Komponenter AVR Atmega LM LCD-display Konstruktion Hårdvara Mjukvara Vidareutveckling 5 5 Resultat 5 6 Referenser 6 A Källkod 7 A.1 ascii.h A.2 lcd.h A.3 ascii.c A.4 lcd.c A.5 main.c
4 2 Inledning Kursen Digitala Project (EDI021) är en praktisk kurs där man designar och bygger ett digitalt system, själva systemet konstrueras som en prototyp på ett kopplingsbräde. Eftersom jag inte har någon som helst erfarenhet av digitala projekt tidigare valde jag att göra något ganska enkelt - en väderstation. Detta kändes som en ungefär lagom utmaning då det innefattar ganska få digitala och analoga komponenter, men ända tillräckligt många för att man ska lära sig något utav det. 2.1 Krav De inledande kraven på väderstationen var att den skulle kunna: Avläsa inohumtemeperatur och visa denna Avläsa utomhustemperatur och visa denna Spara högsta/lägsta inomhustemperatur och visa dessa Spara högsta/lägsta utomhustemperatur och visa dessa Spara största skillnaden mellan utomhus- och inomhustemperatur och visa denna Under projektets gång ändrades dock detta till att väderstationen ska kunna: Avläsa inohumtemeperatur och visa denna Avläsa utomhustemperatur och visa denna Rita upp en graf över uppmätta temperaturer de senaste 12 timmarna 2.2 Komponenter De komponenter som ingår i väderstation är följande: 1st AVR ATMega16 microprocessor 1st vanlig tryckknapp 1st färdigkopplad 128x64 LCD display med anslutna kontrollers 2st National Semiconductor LM335 temperaturmätare Några motstånd Komponenterna är ihopkopplade enligt figur 1. 3
5 V DS1 1 2 S1 ATmega16L U1 1 PB0 (XCK/T0) (AD0) PA0 40 VDD 0 2 PB1 (T1) (AD1) PA1 39 VSS 1 V0 2 CS1 3 3 PB2 (INT2/AIN0) 4 PB3 (OC0/AIN1) (AD2) PA2 38 (AD3) PA3 37 CS2 4 5 PB4 (SS) (AD4) PA4 36 LCD DB0 5 DB1 6 DB2 7 6 PB5 (MOSI) 7 PB6 (MISO) (AD5) PA5 35 (AD6) PA6 34 R1A R1B DB3 8 DB4 9 DB5 10 DB PB7 (SCK) 9 RESET 10 VCC (AD7) PA7 33 AREF 32 GND 31 U2A LM135 3 ADJ U2B LM135 3 ADJ DB GND AVCC 30 RST 13 R/W 14 DI XTAL2 13 XTAL1 (TOSC2) PC7 29 (TOSC1) PC6 28 E PD0 (RXD) (TDI) PC PD1 (TXD) (TDO) PC4 26 PD2 (INT0) (TMS) PC PD3 (INT1) (TCK) PC PD4 (OC1B) (SDA) PC PD5 (OC1A) (SCL) PC PD6 (ICP) (OC2) PD7 21 Figur 1: Kopplingsschema för väderstationen 4
6 2.2.1 AVR Atmega16 AVR Atmega16 är en komplett microprocessor som innehåller bland annat minne, AD-omvandlare och 3 st digitala räknare som kan användas för att generera periodiska avbrott. Microprocessorn kan arbeta i 1, 2, 4, eller 8 Mhz och den fria mjukvaran AVR Studio gör att det är mycket enkelt att arbeta med den LM335 LM335 är en temperaturmätare från National Semiconductor som arbetar linjärt i Kelvin. Detta innebär att man väldigt enkelt kan avläsa temperaturen med den inbyggda AD-omvandlaren på ATMega LCD-display Displayen är av okänt märke och sitter ihopkopplad med två st KS108B kontrollkretsar. Dessa styr vars en halva av displayen och kommunikationen sker via tre styrsignaler och en databuss på åtta bitar. 3 Konstruktion 3.1 Hårdvara De fysiska komponenterna i väderstationen sattes ihop på ett kopplingsbräde och virades ihop för att det skulle vara lätt att ändra om något blev fel. Genom att inte använda de ben på microprocessorn som börjar på PD kunde jag koppla in microprocessorn till datorn via ett JTAG interface 1. Detta gjorde att det blev mycket smidigt att debugga kod och testa kommunikationen med de andra komponenterna. 3.2 Mjukvara Det enda i väderstationen som behövde programmeras var microprocessorn, detta gjordes i C. Programmet är uppdelat i två headerfiler och tre källkodsfiler. Dessa listas i tabell 1. Själva programmet fungerar så att microprocessorn läser av de analoga signalerna kontinuerligt medans uppdateringen av displayen är kopplat till ett avbrott som sker varje sekund. I avbrottsrutinen räknas en intern klocka upp och ett sampel tas för grafen om det har gått 432 sekunder sedan det förra samplet togs 2. Hela källkoden till programmet finns i appendix A. 1 JTAG står för Joined Test Action Group och är en standard för att ansluta till inbyggda system 2 Eftersom grafen består av 100 sampel innebär 432 sekunder att grafen täcker 12 timmar 5
7 Namn ascii.h lcd.h ascii.c lcd.c main.c Beskrivning Deklarerar de funktioner som finns i ascii.c Deklarerar de funktioner som finsn i lch.c Definierar funktioner för att skriva ascii-tecken till LCD-displayen Definierar funktioner för att kommunicera med LCD-displayen Definierar main-metoden samt metoder för att initialisera microprocessorn och hantera avbrott Tabell 1: Förklaring av de filer som programmet består av 4 Vidareutveckling Programmet till microprocessorn är skrivet så att man lätt kan byta ut funktionaliteten, bland annat så är rutinerna för LCD-displayen helt generella och går att använda i andra projekt med liknande sammankoppling, man behöver inte ens koppla in LCD-displayen på samma portar utan dessa ställs in i headerfilen lcd.h. Det är mycket enkelt att koppla in flera analoga signaler till väderstationen, själva programmet stödjer upp till åtta insignaler genom att ändra en variabel. Dock måste man ändra lite i koden om man inte har linjära insignaler. 5 Resultat Själva väderstationen fungerar utmärkt, på grund av att kabeln mellan LCDdisplayen och microprocessorn är för lång syns däremot en del störningar på displayen, dessa försvinner dock om man byter till en kortare kabel. Eftersom kraven på väderstationen ändrades under projektets gång, detta eftersom jag fick en bättre inblick i vad jag egentligen ville göra med min väderstation, så uppfyller väderstationen bara de senare listade kraven. Överlag så är jag mycket nöjd med projektet, det har varit roligt att göra något praktiskt och jag känner att jag har lärt mig väldigt mycket. 6 Referenser Datablad för ATMega16 Datablad för LM335 Datablad för KS108B 6
8 A Källkod Här listas källkoden för väderstationen. A.1 ascii.h #ifndef ASCII_H #define ASCII_H #include <avr/io.h> #define ERROR_CHAR 93 #define START_CHAR 32 #define CHAR_WIDTH 5 #define CHAR_HEIGHT 8 void asciitest(); void putchar( const char c ); #endif // ASCII_H A.2 lcd.h #ifndef LCD_H #define LCD_H #include <avr/io.h> // Define LCD Commands #define LCDPORT PORTB #define LCDCMD PORTD #define CS1 0 #define CS2 1 #define RW 2 #define RS 3 #define E 4 #define RESET 5 // Define window boundaries #define WINDOW_HEIGHT 9 #define WINDOW_WIDTH 16 // The active controller static volatile uint8_t CS = CS1; static volatile uint8_t X; static volatile uint8_t Y; void putstring( const char* c ); 7
9 void display( uint8_t d ); void wait( uint8_t c ); void clearlcd( void ); void move( uint8_t x, uint8_t y ); void write( uint8_t byte ); #endif // LCD_H A.3 ascii.c #include <avr/io.h> #include "ascii.h" #include "lcd.h" /** * Outputs all printable characters in the ASCII table * tot he LCD. This is useful when debugging changes in * the character definitions. */ void asciitest() { clearlcd(); move( 0, 0 ); putstring( "!\"#$% &()*+,-./01234" ); move( 0, 1 ); putstring( "56789:;<=>?@ABCDEFGHI" ); move( 0, 2 ); putstring( "JKLMNOPQRSTUVXYZ[\\]^_" ); move( 0, 3 ); putstring( " abcdefghijklmnopqrst" ); move( 0, 4 ); putstring( "uvxyz{ ~" ); /** * Output a character to the LCD. * This method supports all printable characters * in the ASCII table, to reduce the amount of code, * lowercase letters are converted to upper case. * c A character */ void putchar( const char c ) { uint8_t num; if ( a <= c && c <= z ) { num = c - START_CHAR + A - a ; 8
10 else { num = c - START_CHAR; switch ( num ) { case 0: case 1: write( 0x5F ); //, #, # # # # # case 2: write( 0x07 ); //,,,,, # # # write( 0x07 ); //,,,,, # # # case 3: write( 0x54 ); //, #, #, #,, write( 0x3E ); //,, # # # # #, write( 0x55 ); //, #, #, #, # write( 0x3E ); //,, # # # # #, write( 0x15 ); //,,, #, #, # case 4: write( 0x04 ); //,,,,, #,, write( 0x2A ); //,, #, #, #, write( 0x2A ); //,, #, #, #, write( 0x10 ); //,,, #,,,, case 5: write( 0x22 ); //,, #,,, #, write( 0x15 ); //,,, #, #, # write( 0x2A ); //,, #, #, #, write( 0x54 ); //, #, #, #,, write( 0x22 ); //,, #,,, #, 9
11 case 6: write( 0x07 ); //,,,,, # # # case 7: write( 0x38 ); //,, # # #,,, write( 0x44 ); //, #,,, #,, write( 0x52 ); //, #, #,, #, write( 0x22 ); //,, #,,, #, write( 0x50 ); //, #, #,,,, case 8: write( 0x1C ); //,,, # # #,, write( 0x22 ); //,, #,,, #, case 9: write( 0x22 ); //,, #,,, #, write( 0x1C ); //,,, # # #,, case 10: write( 0x0A ); //,,,, #, #, write( 0x06 ); //,,,,, # #, write( 0x0F ); //,,,, # # # # write( 0x06 ); //,,,,, # #, write( 0x0A ); //,,,, #, #, case 11: write( 0x3E ); //,, # # # # #, case 12: write( 0xE0 ); // # # #,,,,, 10
12 write( 0x60 ); //, # #,,,,, case 13: case 14: write( 0x60 ); //, # #,,,,, write( 0x60 ); //, # #,,,,, case 15: write( 0x60 ); //, # #,,,,, write( 0x18 ); //,,, # #,,, write( 0x06 ); //,,,,, # #, write( 0x01 ); //,,,,,,, # case 16: write( 0x3E ); //,, # # # # #, write( 0x51 ); //, #, #,,, # write( 0x45 ); //, #,,, #, # write( 0x3E ); //,, # # # # #, case 17: write( 0x42 ); //, #,,,, #, case 18: write( 0x46 ); //, #,,, # #, write( 0x61 ); //, # #,,,, # write( 0x51 ); //, #, #,,, # write( 0x46 ); //, #,,, # #, case 19: 11
13 write( 0x36 ); //,, # #, # #, case 20: write( 0x30 ); //,, # #,,,, write( 0x2C ); //,, #, # #,, write( 0x22 ); //,, #,,, #, write( 0x20 ); //,, #,,,,, case 21: write( 0x4F ); //, #,, # # # # write( 0x30 ); //,, # #,,,, case 22: write( 0x3E ); //,, # # # # #, write( 0x30 ); //,, # #,,,, case 23: write( 0x01 ); //,,,,,,, # write( 0x01 ); //,,,,,,, # write( 0x79 ); //, # # # #,, # write( 0x05 ); //,,,,, #, # write( 0x02 ); //,,,,,, #, case 24: write( 0x36 ); //,, # #, # #, write( 0x36 ); //,, # #, # #, case 25: write( 0x06 ); //,,,,, # #, 12
14 write( 0x3E ); //,, # # # # #, case 26: write( 0x6C ); //, # #, # #,, write( 0x6C ); //, # #, # #,, case 27: write( 0xEC ); // # # #, # #,, write( 0x6C ); //, # #, # #,, case 28: write( 0x14 ); //,,, #, #,, write( 0x14 ); //,,, #, #,, write( 0x22 ); //,, #,,, #, write( 0x22 ); //,, #,,, #, case 29: write( 0x14 ); //,,, #, #,, write( 0x14 ); //,,, #, #,, write( 0x14 ); //,,, #, #,, write( 0x14 ); //,,, #, #,, write( 0x14 ); //,,, #, #,, case 30: write( 0x22 ); //,, #,,, #, write( 0x22 ); //,, #,,, #, write( 0x14 ); //,,, #, #,, write( 0x14 ); //,,, #, #,, case 31: write( 0x02 ); //,,,,,, #, write( 0x01 ); //,,,,,,, # write( 0x59 ); //, #, # #,, # write( 0x05 ); //,,,,, #, # write( 0x02 ); //,,,,,, #, case 32: 13
15 write( 0x3E ); //,, # # # # #, write( 0x4D ); //, #,, # #, # write( 0x4D ); //, #,, # #, # write( 0x2E ); //,, #, # # #, case 33: write( 0x7E ); //, # # # # # #, write( 0x09 ); //,,,, #,, # write( 0x09 ); //,,,, #,, # write( 0x09 ); //,,,, #,, # write( 0x7E ); //, # # # # # #, case 34: write( 0x36 ); //,, # #, # #, case 35: write( 0x1C ); //,,, # # #,, write( 0x22 ); //,, #,,, #, case 36: write( 0x22 ); //,, #,,, #, write( 0x1C ); //,,, # # #,, case 37: case 38: write( 0x09 ); //,,,, #,, # write( 0x09 ); //,,,, #,, # write( 0x01 ); //,,,,,,, # 14
16 write( 0x01 ); //,,,,,,, # case 39: write( 0x1C ); //,,, # # #,, write( 0x22 ); //,, #,,, #, write( 0x79 ); //, # # # #,, # case 40: case 41: case 42: write( 0x21 ); //,, #,,,, # write( 0x1F ); //,,, # # # # # case 43: write( 0x14 ); //,,, #, #,, write( 0x22 ); //,, #,,, #, case 44: case 45: 15
17 write( 0x06 ); //,,,,, # #, write( 0x18 ); //,,, # #,,, write( 0x06 ); //,,,,, # #, case 46: write( 0x03 ); //,,,,,, # # write( 0x1C ); //,,, # # #,, write( 0x60 ); //, # #,,,,, case 47: write( 0x3E ); //,, # # # # #, write( 0x3E ); //,, # # # # #, case 48: write( 0x09 ); //,,,, #,, # write( 0x09 ); //,,,, #,, # write( 0x09 ); //,,,, #,, # write( 0x06 ); //,,,,, # #, case 49: write( 0x3E ); //,, # # # # #, write( 0x51 ); //, #, #,,, # write( 0x61 ); //, # #,,,, # write( 0x7E ); //, # # # # # #, case 50: write( 0x09 ); //,,,, #,, # write( 0x09 ); //,,,, #,, # write( 0x09 ); //,,,, #,, # write( 0x76 ); //, # # #, # #, case 51: write( 0x26 ); //,, #,, # #, write( 0x32 ); //,, # #,, #, 16
18 case 52: write( 0x01 ); //,,,,,,, # write( 0x01 ); //,,,,,,, # write( 0x01 ); //,,,,,,, # write( 0x01 ); //,,,,,,, # case 53: write( 0x3F ); //,, # # # # # # write( 0x3F ); //,, # # # # # # case 54: write( 0x07 ); //,,,,, # # # write( 0x38 ); //,, # # #,,, write( 0x38 ); //,, # # #,,, write( 0x07 ); //,,,,, # # # case 55: write( 0x3F ); //,, # # # # # # write( 0x38 ); //,, # # #,,, write( 0x3F ); //,, # # # # # # case 56: write( 0x63 ); //, # #,,, # # write( 0x14 ); //,,, #, #,, write( 0x14 ); //,,, #, #,, write( 0x63 ); //, # #,,, # # case 57: write( 0x07 ); //,,,,, # # # write( 0x70 ); //, # # #,,,, write( 0x07 ); //,,,,, # # # case 58: write( 0x61 ); //, # #,,,, # write( 0x51 ); //, #, #,,, # 17
19 write( 0x45 ); //, #,,, #, # write( 0x43 ); //, #,,,, # # case 59: case 60: write( 0x01 ); //,,,,,,, # write( 0x06 ); //,,,,, # #, write( 0x18 ); //,,, # #,,, write( 0x60 ); //, # #,,,,, case 61: case 62: write( 0x04 ); //,,,,, #,, write( 0x02 ); //,,,,,, #, write( 0x01 ); //,,,,,,, # write( 0x02 ); //,,,,,, #, write( 0x04 ); //,,,,, #,, case 63: case 64: write( 0x01 ); //,,,,,,, # write( 0x02 ); //,,,,,, #, write( 0x04 ); //,,,,, #,, 18
20 // a-z goes here, lowercase letters are converted to uppercase // and definiton of lowercase letters is therefore optional. // Don t forget to remove the conversion from lowercase to uppercase // if adding lowercase letters case 91: write( 0x36 ); //,, # #, # #, case 92: case 93: write( 0x36 ); //,, # #, # #, case 94: write( 0x04 ); //,,,,, #,, write( 0x04 ); //,,,,, #,, write( 0x04 ); //,,,,, #,, default: A.4 lcd.c #include "lcd.h" #include "ascii.h" 19
21 #include <avr/io.h> #include <avr/interrupt.h> /** * Turns on/off the display on the LCD. d If the display should be on or off (1 or 0) */ void display( uint8_t d ) { cli(); LCDPORT = ( 0x3E d ); LCDCMD = ( 1<<RESET 1<<CS1 1<<CS2 ); LCDCMD = 1<<E; LCDCMD = ( 1<<RESET 1<<CS1 1<<CS2 ); sei(); /** * Print a string characters on the screen. * Prints a string of characters from the ASCII table on the screen. * s An null-terminated string of ASCII characters */ void putstring( const char s[] ) { uint8_t i = 0; char c = s[0]; while ( c!= \0 ) { // Write the char putchar( c ); // Spacing between chars write( 0 ); i++; c = s[i]; /** * Clear the LCD * Clears the LCD by writing zeroes to all pages */ void clearlcd( void ) { uint8_t x = 0; uint8_t y = 0; for ( y = 0; y < 8; y++ ) { move( 0, y ); for ( x = 0; x < 128; x++ ) { 20
22 write( 0 ); /** * Set the LCD to a specific page. x X-coordinate, y Y-cooridnate, 0-8 */ void move( uint8_t x, uint8_t y ) { // Set x X = x; Y = y; if ( x < 64 ) { CS = CS1; else { CS = CS2; x = x-64; cli(); LCDPORT = ( 1<<6 x ); LCDCMD = ( 1<<RESET 1<<CS ); LCDCMD = ( 1<<RESET 1<<CS 1<<E ); LCDCMD = ( 1<<RESET 1<<CS ); // Set y LCDPORT = ( 1<<7 1<<5 1<<4 1<<3 y ); LCDCMD = ( 1<<RESET 1<<CS ); LCDCMD = ( 1<<RESET 1<<CS 1<<E ); LCDCMD = ( 1<<RESET 1<<CS ); sei(); /** * Wait for a LCD controller to be ready. * Sets the LCD controller in status mode and waits until * the busy flag is low. * c The controller number (0 or 1) */ void wait( uint8_t c ) { // Set PORTB to input DDRB = 0; 21
23 uint8_t cs; if ( c == 0 ) { cs = CS1; else { cs = CS2; uint8_t flag = 0x80; // Wait for busy flag to go low while ( flag & 0x80 ) { cli(); // Enable the controller and tell it to output status LCDCMD = 1<<cs 1<<RW 1<<RESET; LCDCMD = 1<<cs 1<<RW 1<<RESET 1<<E; LCDCMD = 1<<cs 1<<RW 1<<RESET; flag = PINB; sei(); // Set PORTB to output again DDRB = 0xFF; /** * Write display data to an LCD controller. * Writes the screen to the LCD controller. * c The controller number (0 or 1) */ void write( uint8_t byte ) { cli(); LCDPORT = byte; // Write the data LCDCMD = ( 1<<CS 1<<RS 1<<RESET ); LCDCMD = ( 1<<CS 1<<RS 1<<RESET 1<<E ); LCDCMD = ( 1<<CS 1<<RS 1<<RESET ); sei(); //wait( CS ); X++; if ( X == 64 ) { 22
24 move( X, Y ); A.5 main.c #define F_CPU UL #include <avr/io.h> #include <avr/interrupt.h> #include <util/delay.h> #include <stdio.h> #include "ascii.h" #include "lcd.h" #define NUM_INPUTS 2 // This will give us 12h of history (graph coverage) #define SAMPLE_INTERVAL 432 #define NUM_SAMPLES 100 #define GRAPH_START 25 #define GRAPH_BOTTOM -20 #define GRAPH_STEP 3 #define GRAPH_TOP 49 #define GRAPH_HEIGHT 23 static float VperKelvin[NUM_INPUTS] = { , ; static uint8_t AdcInput = 0; static float Temps[NUM_INPUTS]; static uint8_t Fake[15] = { 6, 5, 12, 20, 13, 23, 7, 1, 0, 2, 3, 5, 12, 9, 7 ; static uint8_t Samples[NUM_INPUTS][NUM_SAMPLES]; static uint8_t Hours = 0; static uint8_t Minutes = 0; static uint8_t Seconds = 0; static uint16_t Count = 0; static uint8_t SamplesTaken = 0; static uint8_t n = 0; void initadc( void ) { // Set Vref to AREF, keep result right-justified and set input source to ADC0 ADMUX = 0; // Enable the ADC, start the first conversion and enable interrupts ADCSRA = 1<<ADEN 1<<ADSC; // Wait for the first conversion to complete and discard it while ( ( ADCSRA & (1<<ADIF) ) == 0 ) { // Reset the flag ADCSRA = ( ADCSRA 1<<ADIF ); // Start the next conversion 23
25 ADCSRA = ( ADCSRA 1<<ADSC ); void initinterrupts( void ) { // Enable global interrupts sei(); // Enable the timer1 compare interrupt A TIMSK = TIMSK 1<<OCIE1A; void inittimers( void ) { // Start timer 1, set to CTC (OCR1A) with 1/256 prescaler TCCR1A = 0; TCCR1B = 1 <<WGM12 1<<CS12; // Set the top value for timer1a (interrupt is caused when this value is hit) // 4Mhz / 256 / = 1Hz OCR1A = 15625; // Reset timer 1 TCNT1 = 0; void initports( void ) { // Setup the LCD data buss DDRB = 0xFF; DDRD = 1<<CS1 1<<CS2 1<<RESET 1<<E 1<<RS 1<<RW; DDRA = 0; PORTA = ~( 1<<1 1 ); LCDPORT = 0; LCDCMD = 0; /** * Display the graph and temperature readings on the LCD */ void redraw( void ) { clearlcd(); int8_t in = Temps[0]; 24
26 int8_t out = Temps[1]; // In temperature move( 0, 0 ); putstring( "In:" ); // Handle negative numbers if ( in < 0 ) { in = -in; putchar( - ); if ( in >= 10 ) { putchar( (uint8_t) ( in / 10 ) + 0 ); write( 0 ); putchar( (uint8_t) in % ); write( 0 ); putchar( C ); // This erases any trailing characters putchar( ); putchar( ); // Out temperature move ( 0, 4 ); putstring( "Out:" ); // Handle negative numbers if ( out < 0 ) { out = -out; putchar( - ); if ( out >= 10 ) { putchar( (uint8_t) ( out / 10 ) + 0 ); write( 0 ); putchar( (uint8_t) out % ); write( 0 ); putchar( C ); // This erases any trailing characters putchar( ); putchar( ); // Output the Graphs // Labels move( 0, 1 ); putstring( "+50" ); // A _ at the top of the row write( 0x1 ); 25
27 write( 0x1 ); write( 0x1 ); write( 0x1 ); write( 0x1 ); move( 0, 3 ); putstring( "-20_" ); move( 0, 5 ); putstring( "+50" ); // A _ at the top of the row write( 0x1 ); write( 0x1 ); write( 0x1 ); write( 0x1 ); write( 0x1 ); move( 0, 7 ); putstring( "-20_" ); // Draw the graphs uint8_t page; uint8_t i; uint8_t x; uint8_t height; int8_t bits; uint8_t byte; // Loop through inputs and samples, outputting each graph one page // at a time for ( i = 0; i < NUM_INPUTS; i++ ) { for( page = 0; page < 3; page++ ) { move( GRAPH_START, 3 - page + 4 * i ); for ( x = 0; x < SamplesTaken; x++ ) { height = Samples[i][x] + 1; // Calculate how many bits we should show in this page bits = height - page * 8; // A page is maximum 8 bits if ( bits > 8 ) { bits = 8; // We must output 0 bits, else the graph will be crooked else if ( bits <= 0 ) { bits = 0; // Output the page, adjust for empty row at the bottom page byte = 0xFF<<(8 - bits); if ( page == 0 ) { byte &= 0x7F; 26
28 write( byte ); int main( void ) { initports(); inittimers(); initadc(); initinterrupts(); // Turn on the display display( 1 ); while ( 1 ) { // Check if conversion is complete if ( ADCSRA & (1<<ADIF) ) { // Reset the flag ADCSRA = ( ADCSRA 1<<ADIF ); // Adjust the input, give the old value a significance of 99% and the new val // This will provide a more stable value less influenced by analog noise Temps[AdcInput] = Temps[AdcInput] * ( ADC * 5.24 / 1024 / VperKelvin[Ad // Increase the input, wrap if overflow AdcInput = ( AdcInput + 1 ) % NUM_INPUTS; // Set the ADMUX to the new adcinput ADMUX = ( ADMUX & ( BIT7 BIT6 BIT5 ) ) AdcInput; // Start the next conversion ADCSRA = ( ADCSRA 1<<ADSC ); _delay_ms( 50 ); /** * Handle interrupt when counter 1 has reached TOP. * This method increases the clock with one second and updates * the LCD. If enough time have passed a sample is also taken. */ void SIG_OUTPUT_COMPARE1A( void ) { 27
29 Seconds += 1; if ( Seconds == 60 ) { Seconds = 0; Minutes += 1; if ( Minutes == 60 ) { Minutes = 0; Hours = ( Hours + 1 ) % 24; // Increase count Count++; // Take a sample for the graph if ( Count == SAMPLE_INTERVAL ) { float t; n = ( n + 1 ) % 15; if ( SamplesTaken < NUM_SAMPLES ) { // Append samples uint8_t i = 0; for ( i = 0; i < NUM_INPUTS; i++ ) { t = Temps[i]; if ( t < GRAPH_BOTTOM ) { t = GRAPH_BOTTOM; else if ( t > GRAPH_TOP ) { t = GRAPH_TOP; Samples[i][SamplesTaken] = (int) ( ( t - GRAPH_BOTTOM ) / GRAPH_STEP ); SamplesTaken++; else { // Push Samples backwards uint8_t i = 0; uint8_t j = 0; for ( i = 0; i < NUM_INPUTS; i++ ) { for( j = 0; j < NUM_SAMPLES - 1; j++ ) { Samples[i][j] = Samples[i][j+1]; t = Temps[i]; if ( t < GRAPH_BOTTOM ) { t = GRAPH_BOTTOM; else if ( t > GRAPH_TOP ) { t = GRAPH_TOP; 28
30 Count = 0; redraw(); sei(); Samples[i][NUM_SAMPLES-1] = (int) ( ( t - GRAPH_BOTTOM ) / GRAPH_STEP ); 29
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........................
Växtviskaren EITF11 Digitala projekt VT15, I12
Växtviskaren EITF11DigitalaprojektVT15,I12 NathalieLiljebrunn,EbbaRiismark,AnnaNorelius LundsTekniskaHögskola Institutionenförelektro ochinformationsteknik Handledare:BertilLindvall,AndreasJohansson 2015
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...
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
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
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
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
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
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
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
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
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
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
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
#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
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
Laboration 5 C-programmering på AVR TSEA57 Datorteknik I
Laboration 5 C-programmering på AVR TSEA57 Datorteknik I Anders Nilsson 2018 version 0.22 Innehåll 1 Introduktion 5 1.1 Syfte....................................... 5 1.2 Förkunskaper..................................
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
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
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
ETSA01 Digitala Projekt (I) VT- 13. Projektarbete AC- 58008. Handledare Bertil Lindvall
ETSA01 Digitala Projekt (I) VT- 13 Projektarbete AC- 58008 Victor Bodin Albert Strömberg Alexander Söderberg Handledare Bertil Lindvall 1 Sammanfattning Rapporten behandlar processen kopplat till konstruktionen
UDPong - Pong over UDP
UDPong - Pong over UDP Digital projects (EDI01) Lund University, Faculty of Engineering. Thomas Eriksson, Samuel Skånberg Abstract The goal with this paper is to demonstrate a construction done with an
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
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
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...
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
Projektrapport - RoboWalter
Projektrapport - RoboWalter Projektarbete i kursen Digitala System (EITA15) vid Lunds Tekniska Högskola (LTH) Grupp 1: Angelika Larsson, Oscar Persson, Albin Andersson och Fanny Zolotarevskaia Handledare:
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
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
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
Support Manual HoistLocatel Electronic Locks
Support Manual HoistLocatel Electronic Locks 1. S70, Create a Terminating Card for Cards Terminating Card 2. Select the card you want to block, look among Card No. Then click on the single arrow pointing
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:
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
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
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
Microprocessor / Microcontroller. Industrial Electrical Engineering and Automation
Microprocessor / Microcontroller Varför? Billiga Innehåller bara det nödvändigaste Kräver få kringkomponenter Enkla att programmera PIC16F887 PIC16F887 In- och utgångar Pinnar på PIC16F887 Exempel: pinne
/* * 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;
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
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
Microprocessor / Microcontroller
Microprocessor / Microcontroller Varför? Industrial Electrical Engineering and Automation Billiga Innehåller bara det nödvändigaste Kräver få kringkomponenter Enkla att programmera PIC16F887 PIC16F887
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
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
Innehåll. 1 Inledning 3
Digitala projekt Tomas Bjerre D04 d04tb@student.lth.se Gustav Reiz D04 d04gr@student.lth.se Roger Schildmeijer D04 d04rp@student.lth.se 26 februari 2008 1 Innehåll 1 Inledning 3 2 Utrustning 3 2.1 ATMega16...............................
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
RAPPORT: DIGITALA PROJEKT
2012-05-14 LTH RAPPORT: DIGITALA PROJEKT Linus Ahlberg, Johan Ryde och Kristin Svensson I-09 Innehåll Inledning... 3 Krav... 3 Ursprungliga krav... 3 Modifierade krav (ej trådlös)... 3 Konstruktion...
TEMPERATUR OCH VINDMÄTARE MED HÖGTALARFUNKTION
TEMPERATUR OCH VINDMÄTARE MED HÖGTALARFUNKTION Digitala Projekt EITF 11, 18 maj 2015 Grupp 13; Morten Rosén, Henrik Boris-Möller, Christoffer Nordberg Projekthandledare: Bertil Lindvall Innehållsförteckning
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
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
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
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
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
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:
LOOKY LUKE. Caroline Hellström och Ville Orlander Arvola Industriell ekonomi I10. - Att välja en lyckosam väg EITF11 Digitala projekt
LOOKY LUKE - Att välja en lyckosam väg EITF11 Digitala projekt Caroline Hellström och Ville Orlander Arvola Industriell ekonomi I10 Handledare: Bertil Lindvall 2013-05-19 Abstract This project was done
HockeyMate Projektarbete i EITF40 - Digitala Projekt Institutionen för elektro- och informationsteknik
HockeyMate Projektarbete i EITF40 - Digitala Projekt Institutionen för elektro- och informationsteknik Grupp 7 Niclas Thuning, 860215-3994, et06nt3@student.lth.se Carl Cristian Arlock, 840306-3954, dt07ca7@student.lth.se
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
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
Fan Controller Digital projects (EITF01) Lund University, Faculty of Engineering John Hedestig, Karl Fogelström Handledare: Bertil Lindvall
Fan Controller Digital projects (EITF01) Lund University, Faculty of Engineering John Hedestig, Karl Fogelström Handledare: Bertil Lindvall Abstract The aim of this digital project was to construct a controller
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...
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
Övning 7. Timer, serieport
Övning 7 Timer, serieport 7.6 timer_1 Memory-Mapped addresses 0x920 status 0x924 control 0x928 periodl 0x92C periodh 0x930 snapl 0x934 snaph 15 0 Run TO (Time-Out) ITO cont start stop timer_1 start D Q
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
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
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.
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
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
Exempelsamling Assemblerprogrammering
Exempelsamling Assemblerprogrammering I uppgifterna nedan utgå från följande programskelett: #include.data var1:.word 12 var2:.word 19 sum: prod:.float 0.set noreorder.text.globl start.ent start
WALL E. WALL EVADER EDI021 DIGITALA PROJEKT
2009 Av: Aron Lidé dt05al1 Marie Li Korse dt05ml9 Handledare: Bertil Lindvall WALL E. WALL EVADER EDI021 DIGITALA PROJEKT Sammanfattning Den här rapporten behandlar konstruktionen av en självgående robot
Guitar tuner Digitala Projekt (EITF40)
Guitar tuner Digitala Projekt (EITF40) Jakub Gorski, D07 (dt07jg8@student.lth.se) Patrik Thoresson, D07 (dt07pt2@student.lth.se) Handledare: Bertil Lindvall Inlämnad: 2011-03-01 Sammanfattning This project
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
LUNDS TEKNISKA HÖGSKOLA. Väderstation. Digitala Projekt, EITF11. Martin Olofsson, I08 & Fredrik Oher, I08 Vt 2012
LUNDS TEKNISKA HÖGSKOLA Väderstation Digitala Projekt, EITF11 Martin Olofsson, I08 & Fredrik Oher, I08 Vt 2012 The aim of this course Digital Projects was to plan, construct and program an electrical device,
OBS!! Detta är DEL 2 av tentan. För att få ut denna måste du ha lämnat in del 1. Om du inte fått ut del 1 bör du meddela skrivningsvakten. OBS!!
Sid 1 av 8 Datavetenskap Tentamen för DVG A03 Datorsystemteknik, 7,5 hp, del 2 fredag 2009-01-09 kl. 08.15-13.15 Tentamen del 2 består av 4 sidor. Ansvariga lärare: Tillåtna hjälpmedel: Kerstin Andersson
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
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,
Det finns en handledning till kortet på hemsidan. AVR STK500.
Laboration 1 (ver 1) Uppgifter: AVR Studio 4.lnk Bli bekant med utvecklingskortet, och AVR studio. Skriva in program för binärräknare. Simulera detta samt ladda ner det till kortet. Förse ovanstående program
Voltmeter EITF11 LUNDS TEKNISKA HÖGSKOLA Grupp 3 Timmy Andersson Jesper Tempel Christoffer Lundgren
LUNDS TEKNISKA HÖGSKOLA Voltmeter EITF11 2014-05-19 Grupp 3 Timmy Andersson Jesper Tempel Christoffer Lundgren Project report on how to build a basic voltmeter using an AVR ATmega16. Innehållsförteckning
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
Programmering av grafisk display
Programmering av grafisk display Arbetsboken avsnitt 5 - Drivrutrin för grafisk display, s. 86-96. Datablad LCD Grafisk under resurser på kurshemsidan, s.14-23. Lab 3 - Drivrutiner - Enkel grafik Lab 5
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
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
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,
Självgående fordon Rapport i kursen digitala projekt, EDI021
Självgående fordon Rapport i kursen digitala projekt, EDI021 Nina Wirandi e04nw Mårten Kjellsson e04mk Handledare: Bertil Lindvall Mars 2010 Abstract This project was for the course Digital Systems, EDI021
Från idé till skapelse av en äkta RoomBot
Institutionen för elektro- och informationsteknik vid LTH Från idé till skapelse av en äkta RoomBot Projektarbete i kursen EITF11 - Digitala Projekt Gustav Handmark, Claudio Gandra & Kasper Trolltoft -
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
Projektrapport i Digitala System
Projektrapport i Digitala System Stämapparat LTH Ingenjörshögskolan vid Campus Helsingborg Handledare: Bertil Lindvall Utförd: Vårtermin 2019 Utförd av: Markus Ljungqvist Nilsson, Gustav Wetterbrandt,
Programmering av grafisk display
Programmering av grafisk display Arbetsboken avsnitt 5 - Drivrutrin för grafisk display, uppg. 5.10-5.16. Datablad LCD Grafisk under resurser på kurshemsidan, s.14-23. Lab 3 - Drivrutiner - Enkel grafik
Väderstation. Datum: Projektarbete vid elektro och informationstekniks institution
Datum: 2011-05-14 Väderstation Projektarbete vid elektro och informationstekniks institution Abstract: The goal for this project was to create a weather station from a programmable ATmega 16 processor
LTH. EITF11- Digitalaprojekt. Projektrapport WEB
EITF11- Digitalaprojekt Projektrapport 2011-05- 10 WEB Projekt utfört av Per Gifvars och Johan Linåker http://www.eit.lth.se/fileadmin/eit/courses/edi021/sammanfattning/2011/lp4/grupp3/html.html Abstract
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
Rapport: Väderstation
Rapport: Väderstation 2019-05-20 Kurs: EITA15 Handledare: Bertil Lindvall och Lars-Göran Larsson Grupp 14: Väderstation Dominik Gashi Rilind Zejnullahu Mohammed Menim Sammanfattning Detta projekt har i
2.45GHz CF Card Reader User Manual. Version /09/15
2.45GHz CF Card Reader User Manual Version 2.0 2008/09/15 Install SYRD245-CF Card Reader to PDA: 1. Explorer SYRD245-CF folder of SYRIS Xtive CD-ROM 2. Check your PDA OS (Mobile5 or PPC2003) NETCF V2 currently
BRUKSANVISNING. 2007-10-29 Bruksanvisning för roboten Saphira
2007-10-29 Bruksanvisning för roboten Saphira Revisionshistoria Datum Beskrivning 2007-08-15 Första utgåva 2007-10-29 Uppdatering av firmware till version 1.1 med nya kommandon för att styra hastigheten.
Tentamen PC-teknik 5 p
Tentamen PC-teknik 5 p Namn:. Klass:... Program: Di2, Em3, Et3 Datum: 03-08-15 Tid: 13:30-18:30 Lokal: E171 Hjälpmedel: Linjal, miniräknare, Instruktionsrepertoar för 8086 (utdelas), Lathund, Pacific C
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
Jan Babor och Oscar Ågren Handledare: Bertil Lindvall 5/16/2011
LUNDS TEKNISKA HÖGSKOLA Kyl- & fryslarm Ett projekt i EITF11 Handledare: Bertil Lindvall 5/16/2011 Introduktion Syftet I det stora hela har kursen Digitala Projekt krävt att studenten ska lära och förstå
Övning 6. Parallellport, timer
Övning 6 Parallellport, timer 6.1 de2_pio_toggles18 Memory-Mapped addresses LEDG8 LEDR17 LEDR16 LEDR15 LEDR14 LEDR13 LEDR12 LEDR11 LEDR10 LEDR9 LEDR8 LEDR7 LEDR6 LEDR5 LEDR4 LEDR3 LEDR2 LEDR1 LEDR0 LEDG7
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
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
Tidsstyrd persiennöppnare
Tidsstyrd persiennöppnare Projektrapport i Digitala Projekt - EITF11, Elektro- och informationsteknik, Lunds Tekniska Högskola Carl Agmén, Tobias Gard och Viktor Kjellin. I- 09 ABSTRACT With the general
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
Mekanisk solros, Digitala projekt(edi021) Kristoer Nordvall, Stefan Windfeldt, Inlämmnad: 4 december 2006
Mekanisk solros, Digitala projekt(edi021) Kristoer Nordvall, d03kn@student.lth.se Stefan Windfeldt, d03sw@student.lth.se Inlämmnad: 4 december 2006 Innehåll 1 Problembeskrivning 3 2 Teknisk beskrivning