Sida 1 av 2

Hur jämföra portar (pin) mellan Arduino Uno och Mini

Postat: 28 december 2017, 23:01:27
av HUGGBÄVERN
Jag har en sketch, som jag testat på en Arduino Uno och det funkar klockrent. Hade en fundering att låta en Atmega328 få köra solo och styra det som ska styras (åtta reläer bland annat) men funderar på att använda en Pro Mini (328), vilken kan placeras på ett veroboard lätt som en plätt.

MEN, hur fanken översätter jag UNOns ut- och ingångar till Minins? Letar halv ihjäl mig men hittar inget vettigt på nätet.
Eller är det så enkelt som att UNOns Port A, B, C, D mosvaras direkt av Minins portar med samma nuffra?

Re: Hur jämföra portar (pin) mellan Arduino Uno och Mini

Postat: 28 december 2017, 23:05:58
av sommarlov

Re: Hur jämföra portar (pin) mellan Arduino Uno och Mini

Postat: 28 december 2017, 23:14:16
av lillahuset
Hur går det med hemläxan? En annan bekant har frågat efter en 2,5" PATA-disk. Obs OT.

Re: Hur jämföra portar (pin) mellan Arduino Uno och Mini

Postat: 29 december 2017, 10:27:39
av HUGGBÄVERN
LH: Det kanske ska till att hända något idag ..

Angående Arduinopinnarna var det något sådant här jag grubblade över. Hur ser kopplingen ut mellan de olika enheternas in/ut-pinnar/portar:
comp_arduino.jpg
Nu är UNOn lite liten, och Minin en Micro, men kan jag direkt översätta portarna, så har jag en sketch skriven för UNO där jag använder en speciell port eller en pinne på en bort, kommer sketchen att ge samma funktion för "samma port/pinne" på Mini (eller Micro/Nano ...).

Problemet är ju att det mesta material vad gäller basics är ju skrivet för UNO och det bara verkar som om alla andra varianter är till för "proffs" som klarar ut det hela själva.

(Jag står i begrepp att programmera upp min Mini med massa pulsande utgångar för att handgripligen se vad som är vad).

Re: Hur jämföra portar (pin) mellan Arduino Uno och Mini

Postat: 29 december 2017, 11:26:22
av lillahuset
Jämför databladen för processorerna. Där brukar portarna heta lika även om det naturligtvis kan skilja lite grand. Sedan gör du en snygg tabell. :)

Re: Hur jämföra portar (pin) mellan Arduino Uno och Mini

Postat: 29 december 2017, 12:05:47
av HUGGBÄVERN
Ska det inte vara samma processor Atmega328, fast i DIP- resp SMD-kapsling.

Får kolla om jag har någon RW-DVD-skiva liggande. Dagens kontoutdrag var inte vackert ...

Re: Hur jämföra portar (pin) mellan Arduino Uno och Mini

Postat: 29 december 2017, 12:31:30
av lillahuset
Vad vet jag om Arduino? Allt jag behöver, dvs ≈ ε. :D

Re: Hur jämföra portar (pin) mellan Arduino Uno och Mini

Postat: 29 december 2017, 16:02:08
av Wedge
I bilden jämför du Uno med en Pro Micro, som är nånting helt annat (nåja...) än den Pro Mini du skriver att du tänkt använda. Olika processorer i mini och micro.

Re: Hur jämföra portar (pin) mellan Arduino Uno och Mini

Postat: 29 december 2017, 16:18:18
av HUGGBÄVERN
Det noterade jag också, tanken var att visa hur jag menade i händelse att det inte gick fram. Jag hittade i hastigheten Micron trots att jag sökte på Mini ...

Re: Hur jämföra portar (pin) mellan Arduino Uno och Mini

Postat: 29 december 2017, 16:38:09
av Wedge
Ah, nu faller orden på plats och jag förstår vad du menar.
Enklaste resonemanget/översättningen är de flesta pinnarna är exakt desamma. Digitalpinne 0-13, och analogpinne A0-A3 (på Arduinospråk) finns på båda, och är exakt likadant portmappade.
Det du får se upp med är ifall du väljer en 3.3V-Mini, då åker klockfrekvensen ned till 8 MHz också.

Re: Hur jämföra portar (pin) mellan Arduino Uno och Mini

Postat: 29 december 2017, 16:42:52
av HUGGBÄVERN
Vi kör 5V och 16MHz. det kan ju bli mackel om man ska ansluta till något som vill ha TTL-nivåer.

Re: Hur jämföra portar (pin) mellan Arduino Uno och Mini

Postat: 29 december 2017, 19:48:41
av nifelheim
Om du använder Arduino IDE är det ju liksom hela iden att du inte behöver fundera på det.
( Du ska alltså helst inte läsa datablad och kolla vad pinnar och portar heter där :) )

Om du använder pinne D1 i ditt program kan du bara byta mellan dom olika modellerna och det är fortfarande pinne D1.
När minnet tar slut i din UNO byter du till en MEGA och när den inte är snabb nog byter du till en Arduino DUE (32 bitar ARM 80MHz)
Utan att ändra i ditt program, bara byta "board" i menyn på IDE'n.

Det är enkelheten som är grejen ( sedan blir ju en del annat lidande :) )

Re: Hur jämföra portar (pin) mellan Arduino Uno och Mini

Postat: 29 december 2017, 20:15:57
av HUGGBÄVERN
Om du använder pinne D1 i ditt program kan du bara byta mellan dom olika modellerna och det är fortfarande pinne D1.
Du är en ängel Nifelheim! Det är precis det här jag vill höra.

Nu har jag inga problem med vare sig minnesutrymme eller sprutt. Kortaste tiden jag kör med är en halv sekund och längsta 18 minuter ...

Re: Hur jämföra portar (pin) mellan Arduino Uno och Mini

Postat: 30 december 2017, 00:51:34
av Mr Andersson
nifelheim skrev:Om du använder Arduino IDE är det ju liksom hela iden att du inte behöver fundera på det.
( Du ska alltså helst inte läsa datablad och kolla vad pinnar och portar heter där :) )

Om du använder pinne D1 i ditt program kan du bara byta mellan dom olika modellerna och det är fortfarande pinne D1.
När minnet tar slut i din UNO byter du till en MEGA och när den inte är snabb nog byter du till en Arduino DUE (32 bitar ARM 80MHz)
Utan att ändra i ditt program, bara byta "board" i menyn på IDE'n.

Det är enkelheten som är grejen ( sedan blir ju en del annat lidande :) )
Nä riktigt så enkelt är det inte. Skilj på portar, pinnar och "arduino-pinnar".
Använder man Arduinos egna digitalWrite & co så stämmer deras egen pinnumrering mellan alla modeller. Men TS pratar ju om portar.
T.ex. så är D1 arduinopinne 1 på en 328 och arduinopinne 20 på en 2560.

Vill du ha portabilitet, använd arduinos egna funktioner. Vill du ha prestanda använd portarna direkt (och gör en separat #ifdef för varje modell)

Re: Hur jämföra portar (pin) mellan Arduino Uno och Mini

Postat: 30 december 2017, 09:25:48
av HUGGBÄVERN
Öööööh!? Trodde jag hade koll på läget för ett kort ögonblick men nu är jag helt ..... vilse igen. :roll: