Foglalt lábak, specifikus kiosztások (mega r3)

Processing/Wiring (illetve C) nyelvű programozási fogások, tippek. (AVR-Duino, Arduino, EthDuino, Diecimila, Severino, Nano, LilyPad)
Avatar
wappler.tibor
DrótVégénSzéndarab
Hozzászólások: 47
Csatlakozott: 2016. november 18. péntek, 1:21

Foglalt lábak, specifikus kiosztások (mega r3)

Hozzászólás Szerző: wappler.tibor »

Sziasztok!

Arduino Mega 2560 r3 lábkiosztásairól több féle táblát, rajzot láttam, de olyat nem amin (könnyen) megtalálom a "foglalt" lábakat amiket nem lehet másra használni, nem lehet átprogramozni, vagy csak erős kompromisszumok árán adhatok neki új funkciót. Olyan kötöttségekre gondolok, mint a D13 LED kivezetése, az SCL, SDA, vagy az ICSP pontjai. Azt olvastam, hogy a lábak átprogramozhatóak, de mégis néha felbukkan egy- egy fórumos megjegyzés, hogy azt a lábat ez és ez használja, tehát azt ott nem lehet.

A saját kis hoby projektemen dolgozom, úgy, hogy olvasok- tanulok, tervezek, vásárolok- építek és átalakítok, bővítek, majd minden kezdődik majdnem elölről, mert hibákat követek el, majd újra gondolva és újra gombolva megint nekifutok. Eddig érdekes és tanulságos volt a játék, de most már szeretnék nagyobb léptékben haladni és a vakvágányokat kikerülni. Menet közben arra már magamtól rájöttem, hogy az Arduino rendszer nem egy ipari stabilitású lehetőség, de tanulni nagyon jó. Külön- külön remekül működtek az építő kockáim, de összeszerelve már ellenőrizhetetlen katyvasz lett a sok dugdosós vezetékből és még a felénél (sem) tartok. https://drive.google.com/open?id=0B1rqO ... VYxUDJVcEE

Ezért most ott tartok, hogy a stabilabb csatlakozások szemponjai szerint helyezem el az egységeket, de így nagyon nehéz lesz az átalakítás, a portkiosztás megváltoztatása ha rosszul találom ki, hogy mit hova kössek, ezért kellene kizárásos alapot, hogy mit nem lehet. Csináltam egy emeleti shieldet a TavIR csupalyuk lapjára, az első képen látható 2 db drv8825 stepper vezérlő van rajta és tápcsatlakozók. Itt fixen beforrasztottam a 40,42,44,46,48,50 PINeket, majd vele szemben a kezelő panel csatlakozói:41,43,45,47,49,51,53 szalagkábel csatlakozóval jól funkcionálnak.

Még áttudom rendezni a lábkiosztást ha muszáj, de pont e miatt vetődött fel a kérdés, hogy a még a szükséges cuccokat hova pozícionáljam?
Amivel tervezek:
- Arduino Mega 2560 r3.................( működik )
- nyomógombos ledes kezelő panelka ( működik )
- 2 db drv8825 stepper motor driver..( működik )
- LCD 2x16 ..............................( I2C bus -opcionálisan )
- GY-511 gyroscope ( TavIR ) sensor, I2C bus
- Data Logger RTC+ SD card,...........I2C bus
- Dallas DS18B20 hőmérő............... I2C bus
- PWM kimenet LED- hez
- PWM kimenet LCD kijelző LEDhez
- 1db analóg bemenet fényméréshez ( 10K fotoellenállás )

Szóval, a hardveres- szoftveres ütközéseket szeretném elkerülni és az újra építést. Tudom, hogy ez így elsőre sok és lehet, hogy átláthatatlan, ezért keresem a tiltott, másra nem használható lábakat. Szerettem volna még vásárolni a TavIR- ban, de így jártam :
http://shop.tavir.hu/index.php/konzulta ... ktora-c-72
--
üdv : wt
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10191
Csatlakozott: 2005. december 9. péntek, 7:00

Re: Foglalt lábak, specifikus kiosztások (mega r3)

Hozzászólás Szerző: Robert »

Egyszerű:
http://www.pighixxx.com/test/portfolio-items/mega/

Kötöttek: PWM, SPI (MOSI/MISO/SCK/SS), I2C (SCL/SDA), SoftWare Serial (Rx lábai), INT/PCINT, ADC, Hardware soros (Rx, Tx - összes), AIN, T0/T1/ICP (Timer In), Primer soros (feltöltés - Tx/Rx)

Sima Digit I/O bárhol lehet...


A konzultációs tanfolyam jelenleg nem érhető el - tervezés és kialakítás alatt van.
http://www.tavir.hu - a gazda :)
Avatar
wappler.tibor
DrótVégénSzéndarab
Hozzászólások: 47
Csatlakozott: 2016. november 18. péntek, 1:21

Re: Foglalt lábak, specifikus kiosztások (mega r3)

Hozzászólás Szerző: wappler.tibor »

Köszönöm a gyors választ. Emésztem.
--
üdv : wt
Avatar
wappler.tibor
DrótVégénSzéndarab
Hozzászólások: 47
Csatlakozott: 2016. november 18. péntek, 1:21

Re: Foglalt lábak, specifikus kiosztások (mega r3)

Hozzászólás Szerző: wappler.tibor »

Robert írta:Egyszerű:
http://www.pighixxx.com/test/portfolio-items/mega/

Kötöttek: PWM, SPI (MOSI/MISO/SCK/SS), I2C (SCL/SDA), SoftWare Serial (Rx lábai), INT/PCINT, ADC, Hardware soros (Rx, Tx - összes), AIN, T0/T1/ICP (Timer In), Primer soros (feltöltés - Tx/Rx)

Sima Digit I/O bárhol lehet...
Köszi az újabb színes rajzot. Sokat segített és nem a rajz hibája, hogy újabb kérdéseket is felvetett.

Ha az emeleti vezérlő shield- en foglalom le, illetve használom "másra" az SPI illetve a PWM lábakat, akkor a shield eltávolítása után, újra programozható, eredeti funkciójába vissza írható az SPI és a PWM funkció? Láttam példát arra, hogy a PWM 8,9,10 lábakat stepper motor vezérlésre használta, tehát digitális outputként használta.

Az I2C (SCL/SDA) lábak azokat értem, rendben, én is arra szeretném használni.
A SoftWare Serial (Rx lábai) a 2,3 és a 16,17- es fizikai PIN az átrható más funkcióra? Például digitális INPUT- ra?
Az INT/PCINT lábakból többet is látok, van az ANALOG zónában is és a PWM zónában is. Ezeket ott, azokra a funkciókra használhatom csak vagy átprogramozhatóak?
Az ADC, gondolom, hogy az ANALOG DIGITAL CONVERSIO, az a A0-A15- ig csak analóg jel feldolgozásra vagy másra is használható? A3- A7- ig látok egy TCK,TMS,TDO,TDI opciót. Ez mi lenne, mire használható? Ha ilyen opcionális jelölést látok egy láb mellett akkor az azt jelenti, hogy a jelölések közül használható valamelyikre?

"Sima Digit I/O bárhol lehet..."
Van e olyan PIN ami abszolúte de soha semilyen körülmények között nem használható másra?
--
üdv : wt
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10191
Csatlakozott: 2005. december 9. péntek, 7:00

Re: Foglalt lábak, specifikus kiosztások (mega r3)

Hozzászólás Szerző: Robert »

Minden láb lehet Digit I/O (egyetlen ellenjavalt: D0/D1)
De akkor más funkcióra (azonos áramkörben) ne használd.

Pl. nézd meg A0 bemenetként olvasod miközben Digit Outra teszed. H illetve L szintet teszel rá.
Visszakapod, hogy hány voltra is áll be a kimenet :).

A3- A7- ig látok egy TCK,TMS,TDO,TDI
Igen: JTAG kivezetés - futásidejű hibakeresésre lehet használni (nem Arduino alatt és JTAGICE vagy ICEMKII debuggerrel).

A program mondja meg mire használod a lábat. Más program - más funkció....
http://www.tavir.hu - a gazda :)
Avatar
wappler.tibor
DrótVégénSzéndarab
Hozzászólások: 47
Csatlakozott: 2016. november 18. péntek, 1:21

Re: Foglalt lábak, specifikus kiosztások (mega r3)

Hozzászólás Szerző: wappler.tibor »

Köszönöm, tisztul a dolog.

Az fizikai I2C buszt (SCL-SCA - nincs lábszám R3 only) eredeti buszt használnám négy eszközre, viszont úgy látom a nemlétező adatlapon, hogy a GY-511 giroszkóp az 3,3V- os, a DataLogger modul- RTC+SD card az 5V-os valamint az LCD is 5V- os rendszerű. Jól látom, hogy ezek nem lehetnek egy fizikai buszon?
Van a TavIR- nak 5V-os rendszerű Giroscop modulja? Mert ha van akkor megúszhatnék egy szint illesztési problémát. Vagy ez hogyan kezelendő?
--
üdv : wt
Avatar
wappler.tibor
DrótVégénSzéndarab
Hozzászólások: 47
Csatlakozott: 2016. november 18. péntek, 1:21

Re: Foglalt lábak, specifikus kiosztások (mega r3)

Hozzászólás Szerző: wappler.tibor »

További láb felhasználási gondom és perverz ötletem adódott a szalag kábelek korrekt elvezetései miatt.
A 4 db HALL szenzor feszültség ellátása mehet e digitális I/O lábon keresztül? Ha igen akkor könnyű és "szép" egymás melletti érpárokkal dolgozhatok és nem kell a táppal külön vesződni. Ugye itt arról van szó, hogy a logikai alacsony szint lenne a -U ( GND ) és a logikai magas lenne a +VCC a HALLok- számára. Szabad ilyet csinálni?
--
üdv : wt
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10191
Csatlakozott: 2005. december 9. péntek, 7:00

Re: Foglalt lábak, specifikus kiosztások (mega r3)

Hozzászólás Szerző: Robert »

A IIC esetén jelszintillesztés lehet 3V3 / 5V közt:
http://shop.tavir.hu/product_info.php/s ... ctwi-p-201

A tápfeszlábad lehet a Digit H szint is, de:
- Max. terhelés 20mA
- Logikai H szint feszültsége: 2.1....5V! (jellemző: 4.5...5V)

Digit Hall szenzort nem zavarja, az Analog meg eléggé megzavarodik....
http://www.tavir.hu - a gazda :)
Avatar
wappler.tibor
DrótVégénSzéndarab
Hozzászólások: 47
Csatlakozott: 2016. november 18. péntek, 1:21

Re: Foglalt lábak, specifikus kiosztások (mega r3)

Hozzászólás Szerző: wappler.tibor »

Ez szuper, köszönöm.
--
üdv : wt
Avatar
wappler.tibor
DrótVégénSzéndarab
Hozzászólások: 47
Csatlakozott: 2016. november 18. péntek, 1:21

Re: Foglalt lábak, specifikus kiosztások (mega r3)

Hozzászólás Szerző: wappler.tibor »

Ha a GY-521 (MPU6050) gyroszkóp i2C buszon van feldolgozva akkor minden lábát be kekk kötni vagy csak a VCC- GND és SDL- SDA lábakat ?
Vagy ez program kérdése is, hogy miként használom? Én csak a Z tengelyre vagyok igazán kiváncsi, az is csak "statikusan" lassan változik, ha változik, de az állapotát mérni kellene, tehát nem egy kihegyezett mérésről van szó.
GY-521 PIN:
1 - Vcc (3.3...5V)
2 - GND,
3 - SCL,
4 - SDA,
5 - XDA,
6 - XCL,
7 - AD0,
8 - INT.

A kérdés hasonlóan vetődik fel a DataLogger RTC+SD modulnál is, hogy a VCC,GND, SDL,SDA lábak bekötése elegendő e?
TavIR (Deek-Robot ID: 8122)
1- CS
2- MOSI
3- MISO
4- SCK
5- SCL
6- SDA
7- GND
8- 5V
--
üdv : wt
Avatar
wappler.tibor
DrótVégénSzéndarab
Hozzászólások: 47
Csatlakozott: 2016. november 18. péntek, 1:21

Re: Foglalt lábak, specifikus kiosztások (mega r3)

Hozzászólás Szerző: wappler.tibor »

Nem látom, de attól még lehet az Arduino- nak ONE_Wire (1Wire) dedikált lába? Ezt hova illik kötni, ha esetleg több eszköz érintett benne? Ez szoftveresen ütközik- e, ütközhet- e valamivel?

Ha van kellő számú PIN kimenet az LCD számára és a kábelezés jól megoldható, akkor érdemesebb a párhuzamos vezérlés használni az I2C bus helyett?
Szoftveresen melyik kód foglal kevesebb helyet a memóriában?
--
üdv : wt
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10191
Csatlakozott: 2005. december 9. péntek, 7:00

Re: Foglalt lábak, specifikus kiosztások (mega r3)

Hozzászólás Szerző: Robert »

RTC-nél: I2C-vel az órát tudod megszólítani, az SPI rész az SD kártyához kell.
GX521 kezelhető I2C illetve SPI módban- Neked az I2C módhoz a Vcc, SCL, SDA, GND kell. AD0 - címkiválasztás: 0x68 vagy 0x69-en szólaljon meg a szenzor. Ez a modulon kötendő.

Az 1wire licensz miatt NEM lehet dedikált. Hardwarte 1-Wire MASTERt csak a Maxim-Dallas gyárthat! Azaz a szoftveres emulált megoldással bárhol lehet.

Az LCDnél hogy I2C vagy sima bekötésű kb. 200-400 byte az eltérés (Mega chipen nem mindegy? :) ). Kábelezésben, stabilitásban a paralell bekötés macerásabb. Viszont I2C-n kicsit lassabban ír ki (képernyőtöltés, frissülő adatok helye / memóriaszervezés miatt -> Lsd 60 napos tanfolyam LCD II. fejezet).
Én ha van I2C - mindig I2Cre rakom. Az fogy most 3fps vagy 1.9fps a kiírási sebesség nem probléma. Úgyse videót nézek rajta :)
http://www.tavir.hu - a gazda :)
Avatar
wappler.tibor
DrótVégénSzéndarab
Hozzászólások: 47
Csatlakozott: 2016. november 18. péntek, 1:21

Re: Foglalt lábak, specifikus kiosztások (mega r3)

Hozzászólás Szerző: wappler.tibor »

Jól értem, hogy az SD kártya nem érhető el az I2C buszon keresztül? Elég suta dolog, hogy egy ilyen kicsi eszközre két busz rendszert is be kell kötni.
--
üdv : wt
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10191
Csatlakozott: 2005. december 9. péntek, 7:00

Re: Foglalt lábak, specifikus kiosztások (mega r3)

Hozzászólás Szerző: Robert »

Az eszközök és a programok - sosem a kívánságok, hanem a beleprogramozott/kialakított tulajdonságok alapján működnek.
Pl. az SD kártya sebessége I2C buszon -> 100kHz busz, 1 eszközcím, min. 4 memóriacím, majd 16...512 byte blokkadat.
Hát az adatátvitel teljes újraíráskor ~0.5kbyte / sec lenne.... Most SPI buszon (4 MHz busz) -> ~40k/sec.
Ha sok adat kell és I2C busz:
24LC512 helyett a bufferelt vagy gyorselérésű legyen (FRAM). De ez sem egetrengető sebességű az SD-hez képest....

Tipp:
Pro Mini, amit I2C slaveként kezelsz és lóg rajta 1 SD kártya...
Itt is igaz a blokkos írás: 512 byte egy blokk, ott 1 byte átírása a teljes blokk kiolvasása, 1 byte változtatás, és a teljes blokk újraírása....
És I2C felől megszólítod....


Az alap/ökölszabályok alapján: nagy memóra/nagy adathalmaz - csak nagysebességű buszon lehet (vagy nagy adatszélességű):
Ilyen eszközök: Ethernet, SD kártya, nagyfelbontású TFT/LCD, SRAM, DataFlash. Jellemző a SPI busz ezekre.

Kis sebességű, jelzés, kis adatmennyiség: I2C
http://www.tavir.hu - a gazda :)
Avatar
wappler.tibor
DrótVégénSzéndarab
Hozzászólások: 47
Csatlakozott: 2016. november 18. péntek, 1:21

Re: Foglalt lábak, specifikus kiosztások (mega r3)

Hozzászólás Szerző: wappler.tibor »

Rendben, köszönöm a segítséget és az áttekintést.
--
üdv : wt
Válasz küldése