Nummerassistenten och presentatören

Smeagol

Oscar Ekbladh, e00oe

Philip Theorin, e00pt

Inledning

Kursen digitala projekt (vt1, 2004) går ut på att under sju veckor designa och bygga en prototyp för vidareutveckling samt att göra en dokumentation av arbetet. Valet föll på att designa en nummerpresentatör vid namn Smeagol, vars utmärkande drag är att den spelar en låt kopplat till det nummer som ringer.

Specifikation

  • Nummerpresentatör som spelar upp olika ljud beroende på vem som ringer
  • Möjlighet att lagra 2016 olika telefonnummer i en telefonbok och att koppla dessa oberoende till olika ljud och digital utsignal
  • Möjlighet att programmera in egna telefonnummer med hjälp av dator i ett användarvänligtgrafiskt gränssnitt
  • Display som visar de 254 senast mottagna nummerna och tidpunkten de kom in
  • Möjlighet att lägga in 7 egna ringsignaler
  • Klocka som visar datum och tid
  • Fem användarvänliga tryckknappar
  • Jukebox – Spela dina egna favoritlåtar
  • Fyra digitala utgångar – koppla in dina egna favoritprylar till Smeagol, det kan vara bilen, båten, husvagnen - vad du själv vill göra det till, möjligheterna är obegränsade

Konstruktion

Hårdvara

Vår hårdvara är uppbyggd kring Motorolas mikroprocessor MC68008 som var enkel att jobba med och som klarade av det den skulle utan problem. Till processorn har vi en mängd kretsar (se bild) och för adressavkodning använder vi en programerbar logikkrets, Lattice 1016E. DTMF-kretsen (Dual Tone Multiple Frequency ) i bilden används för att avkoda siffrorna i det inkommande nummret.

Kopplingsschema: schema.pdf, schema.sch

Hårdvara

Mjukvara

En hel del programkod skrevs till detta projekt. Till hårdvaran skrevs programkod i assembler och i C. Det mesta av assemblerkoden fanns färdig och behövde bara justeras lite för att passa vårt projekt.

C-program: lotr.c
Assembler-program: lib.zip

Flash Editor

För att kunna lägga in egna låtar och för att editera telefonboken skrevs ett program, Flash Editor (se bild)i Visual Basic 6. Programmet skapar en fil som man sedan programmerar flashminnet med.

Flash Editor: flashed.zip

Flash editor

Resultat och utvecklingsmöjligheter

Vi lyckades uppfylla alla krav ifrån vår ursprungliga kravspecifikation förutom möjligheten att koppla nummerpresentatören till PC. Vi har haft prototypen igång i 13 timmar i sträck och den verkar ha fungerat utan problem. Det finns vissa smådetaljer i mjukvaran som inte är färdiga, exempelvis en del kod för att kontrollera giltiga datum. Ett annat exempel är att övre gränsen för antal loggade nummer i skrivande stund inte är skyddad, varför programmet kan bete sig underligt om listan blir full.

När det gäller utvecklingsmöjligheter så är det främst kopplingen till dator som hade varit trevligt att ha. Det är en aning omständigt att behöva plocka ut flash-minnet ur hållaren och programmera den i separat programmerare. Det hade varit betydligt enklare att kunna göra detta direkt på plats.

Rapport: rapport.pdf

Slutsatser

Digitala projekt har varit en mycket lärorik, intressant och kul kurs. Det känns tillfredsställande att ha lyckats bygga något från grunden med hjälp av de erfarenheter man fått under sina år på LTH.

Vi försökte följa förmaningarna om att föra anteckningar under utvecklingsarbetet vilket har varit till stor hjälp vid rapportskrivandet, men även under själva arbetet.

Övrigt

Ett stort tack till Nisse för den fina bakgrundsmusiken!

Musik: mcgyvermid.mid

<bgsound src="mcgyvermid.mid">