Bygga en miniräknare

Planering och tankar kring eventuella framtida projekt.
Användarvisningsbild
baron3d
EF Sponsor
Inlägg: 1353
Blev medlem: 1 oktober 2005, 23:58:43
Ort: Torestorp

Inlägg av baron3d »

Jag hade en väldigt duktig elev förra året som gjorde en miniräknare som slutuppgift till kursen Mikroprocessorteknik A. Den klarade de fyra räknesätten med heltal. En 68HC11 :D , en 16x2-teckens LCD och ett 12-tangenters "telefon" tangentbord användes.
Användarvisningsbild
Chribbe76
EF Sponsor
Inlägg: 1167
Blev medlem: 17 januari 2004, 22:43:17
Ort: Stockholm

Inlägg av Chribbe76 »

Assembler är det "språk" som är mäst maskin-nära (det är samma språk som processorn läser) därför måste du välja Pic eller Avr innan det är någon ide' att lära sig språket.
Assembler har väldigt låg nivå (varje instruktion utför väldigt lite) så att lära sig språket går ganska fort men att lära sig programmera kan ta lite längre tid.

Valet av Pic eller Avr spelar egentligen ingen roll, "alla" på det här forumet är partiska så jag tycker ni ska gå genom ett datablad för en Pic18 och en ATmega, ha fokus på instruktions-uppsättningen, så får ni se vad magkänslan säger. :D
Senast redigerad av Chribbe76 21 januari 2007, 20:53:19, redigerad totalt 1 gång.
Dennis_F
Inlägg: 383
Blev medlem: 8 januari 2007, 19:30:52
Ort: Piteå

Inlägg av Dennis_F »

Gick faktiskt en kurs i assembler för nått år sedan.
Då var all hårdvara färdig (en motorola 68000 processor tror jag det var)
och vi behövde bara skriva programet.
Vi arbetade 2 och 2.
Det tog nästan 50 timmar att få till en miniräknare för oss då.

Men då hade vi ju programerat en hel del i högre språk innan. Så om man
inte kan nått alls om programering kanske det tar längre tid?

Hursomhelst så borde ni klara det på 100 timmar. Kanske enklast att 2st gör hårdvaran och 2st gör mjukvaran?
sebastiannielsen
Inlägg: 3663
Blev medlem: 11 september 2004, 09:30:42
Ort: gbg
Kontakt:

Inlägg av sebastiannielsen »

OT: ska också börja med mikroprocessorteknik A nu på onsdag... På fässberg...
Användarvisningsbild
Micke_s
EF Sponsor
Inlägg: 6741
Blev medlem: 15 december 2005, 21:31:34
Ort: Malmö

Inlägg av Micke_s »

Chribbe76: I hobbyprojekt tycker jag processorvalet borde styras av tillgången till utvecklingsmiljö, där har AVR ett stort övertag jfm pic (så länge vi pratar c).
Khaki
Inlägg: 268
Blev medlem: 12 januari 2007, 01:04:13
Ort: Mölndal

Inlägg av Khaki »

Gick en kurs i microprocessorteknik för sådär 20-25 år sedan och som slutprov fick vi hitta på något med det material som fanns i fysiksalen.
Vi byggde en "miniräknare" med hjälp av ett 16-knappars tangentbord (0-F) som inmatningsenhet och en processor med väldigt lite minne för beräkning och som utmatningsenhet hittade vi en DA-omvandlare som vi kopplade till ett oscilloskop. Med lite assemblerprogrammering lyckades vi få till alla fyra räknesätten och plotta ut resultatet med åtta siffror och flytande decimalkomma. Läraren blev impad och gav 5:a i betyg.
Newi
Inlägg: 15
Blev medlem: 20 januari 2007, 20:21:36
Ort: Järfälla

Inlägg av Newi »

Ja, då var det dags att sätta igång igen. Vi har haft lite problem med att fixa en handledare till vårt projekt, men idag ska gruppen träffas och vi ska försöka beställa hem alla delar så snart som möjligt.

Vi ska besluta vilken processor, vilken knappsats och vilken display vi ska använda. Vi ska också försöka besluta huruvida vi ska bygga en egen programmerare eller köpa en färdig.

Vad behöver man för att kunna koppla ihop alla komponenterna med varandra? Är det några sladdar som vi måste köpa eller?

Är det något mer än processor, knappsats, display, eventuella sladdar och programmerare som vi behöver ha?

Angående programmeringen, kan C vara vettigare att använda om man redan har programmerat 2-3 år i Java, vilket enligt vad jag har hört ska ha liknande grunder med C i alla fall?

Edit. Skulle det gå att använda 2 st telefontangentbord av sorten som är länkad till nedanför, och använda det ena till att skriva in siffrorna och det andra till att välja räknesätt osv.

http://www.elfa.se/elfa-bin/setpage.pl? ... 124650.htm

Edit2. Hur får man ström till miniräknaren?
Senast redigerad av Newi 18 februari 2007, 15:01:43, redigerad totalt 1 gång.
Användarvisningsbild
MicaelKarlsson
Inlägg: 4669
Blev medlem: 18 juni 2004, 09:16:07
Ort: Aneby
Kontakt:

Inlägg av MicaelKarlsson »

16-tangenters tangentbord: Länk 1
För att spara I/O-pinnar: Länk 2
Labbkort: Länk 3 eller Länk 3.5
Kabel: Länk 4

C låter väl som ett bra val!

"Är det något mer än processor, knappsats, display, eventuella sladdar och programmerare som vi behöver ha? "
Kolla in databladen för de komponenter ni skall använda som processor, display och så vidare INNAN ni beställer, det blir billigare så! :doh:

Skulle det gå att använda 2 st telefontangentbord av sorten som är länkad till nedanför, och använda det ena till att skriva in siffrorna och det andra till att välja räknesätt osv
Låter lite onödigt, satsa på t.ex. det jag länkade till.

Lycka till!!
Newi
Inlägg: 15
Blev medlem: 20 januari 2007, 20:21:36
Ort: Järfälla

Inlägg av Newi »

MicaelKarlsson skrev:16-tangenters tangentbord: Länk 1
För att spara I/O-pinnar: Länk 2
Labbkort: Länk 3 eller Länk 3.5
Kabel: Länk 4

C låter väl som ett bra val!

"Är det något mer än processor, knappsats, display, eventuella sladdar och programmerare som vi behöver ha? "
Kolla in databladen för de komponenter ni skall använda som processor, display och så vidare INNAN ni beställer, det blir billigare så! :doh:

Skulle det gå att använda 2 st telefontangentbord av sorten som är länkad till nedanför, och använda det ena till att skriva in siffrorna och det andra till att välja räknesätt osv
Låter lite onödigt, satsa på t.ex. det jag länkade till.

Lycka till!!
Länk 2, 3 och 3.5 har jag inte en blekaste aning om vad det är för något.
Användarvisningsbild
MicaelKarlsson
Inlägg: 4669
Blev medlem: 18 juni 2004, 09:16:07
Ort: Aneby
Kontakt:

Inlägg av MicaelKarlsson »

Länk 2: Kopplas in mellan uC och tangentbord för att det skall gå åt mindre antal I/O-pinnar och få enklare kod. Ta en titt i databladet: Länk det förklarar en hel del.

Länk 3: Experimentkort används för att löda fast komponenterna
Länk 3.5: Funktionen är samma som Länk 3 men du trycker bara ner komponenterna i kopplingsdäcket, riktigt praktiskt för experiment.
Newi
Inlägg: 15
Blev medlem: 20 januari 2007, 20:21:36
Ort: Järfälla

Inlägg av Newi »

MicaelKarlsson skrev:Länk 2: Kopplas in mellan uC och tangentbord för att det skall gå åt mindre antal I/O-pinnar och få enklare kod. Ta en titt i databladet: Länk det förklarar en hel del.

Länk 3: Experimentkort används för att löda fast komponenterna
Länk 3.5: Funktionen är samma som Länk 3 men du trycker bara ner komponenterna i kopplingsdäcket, riktigt praktiskt för experiment.
Måste säga att dom där databladen inte är lättaste laget att förstå, men jag för väl försöka att sätta mig in i det innan vi beställer.

Länk 3.5: Betyder det att man kan sätta fast alla komponenter och testa att det fungerar, utan att behöva löda något? Så ifall något blir fel så är det enkelt att byta plats på saker?

Tack för hjälpen för övrigt.
danei
EF Sponsor
Inlägg: 27411
Blev medlem: 2 juni 2003, 14:21:34
Ort: Östergötland
Kontakt:

Inlägg av danei »

Du har fattat helt rätt om 3.5

Läs regel nummer 1. Den som du acepterade när du regestrerade dig....
Newi
Inlägg: 15
Blev medlem: 20 januari 2007, 20:21:36
Ort: Järfälla

Inlägg av Newi »

F'låt, gammal forum-vana att citera. Ska försöka behärska mig nu.

Idag ska delarna beställas, har bara en liten fråga. Vi hade tänkt att beställa en PIC16F874A, men det finns två att välja på - PIC16F874A-I/L och PIC16F874A-I/P. Den ena finns i lager just nu medan den andra är slut för tillfället. Spelar det någon roll vilken av dom vi köper, eller kan man ta vilken som helst? Det är I/L som finns i lager.
Användarvisningsbild
Chribbe76
EF Sponsor
Inlägg: 1167
Blev medlem: 17 januari 2004, 22:43:17
Ort: Stockholm

Inlägg av Chribbe76 »

I/L är ytmonterad så den passar inte i kopplingsdäcket.

Om ni har för avsikt att programmera assembler så rekommenderar jag en Pic18, om ni kommer programmera C vet jag inte om det spelar någon roll.

Att programmera en Pic18 är inte på något sätt mer komplicerat än en Pic16, det är bara enklare.
Rocky_AL
Inlägg: 617
Blev medlem: 7 december 2006, 15:14:50
Ort: Stockholm

Inlägg av Rocky_AL »

Vill ni köra i assembler så kan jag varmt rekomendera denna sida: http://www.mstracey.btinternet.co.uk/pi ... icmain.htm
Håller själv på att lära mig assembler och denna sida förklarar precis hur assembler fungerar. Dock så förklarar den hur man programmerar en PIC16F84A men kollar man i databladen så märker man snabbt att skillnaden inte är så stor mellan olika PICar.
Skriv svar