Tartalomjegyzék:
- 1. lépés: A macskakötél kialakítása
- 2. lépés: Az Avrdude telepítése és használata
- 3. lépés: Az Arduino programok AVR -re történő áthelyezése
Videó: AVR/Arduino villog Raspberry Pi -vel: 3 lépés (képekkel)
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:41
A rendszeren belüli programozó (ISP) olyan eszköz, amellyel számos mikrokontrollert programozhat, például az ATMega328p-t, amely az Arduino Uno agya. Vásárolhat valamit, például USBtinyISP -t, vagy akár Arduino -t is használhat. Ez az oktatóanyag megmutatja, hogyan használhatja a Raspberry Pi -t internetszolgáltatóként.
Az avrdude program, amelyet az Arduino IDE használ a motorháztető alatt a chipek villanásához, sok programozóval használható. Ennek egyik lehetősége az SPI csapok használata a Pi bővítőportján. Elmagyarázom, hogyan kell létrehozni a megfelelő csatlakozásokat, össze kell állítani egy egyszerű áramkört a perfboardon, hogy ne kelljen minden alkalommal újrafordítani a vezetékeket, amikor chipet akar villanni, és hogyan kell telepíteni és használni az avrdude -ot. Azt is megmutatom, hogyan lehet a programokat az Arduino IDE segítségével összeállítani egy AVR chipre, például ATmega vagy ATtiny segítségével ezzel a módszerrel.
Szükséges dolgok:
- Raspberry Pi a legújabb Raspbian telepítéssel
- 40 tűs férfi fejléc (vagy 26 tűs, ha régebbi Pi van)
- IDE kábel a Pi -hez való csatlakoztatáshoz
- 16 MHz -es kristályrezonátor
- 22 pF kondenzátor (2)
- LED (1) jelzi a programozó állapotát
- 8, 14 és/vagy 28 tűs IC aljzat, attól függően, hogy milyen típusú chipeket szeretne villogni
- Némi perfboard, vezetékek, forrasztás
1. lépés: A macskakötél kialakítása
A soros perifériás interfész (SPI), más néven négyvezetékes soros, egy kommunikációs mód egyetlen mester eszköz és egy vagy több slave eszköz között. Ezt a chipek villanására használjuk, a Pi a mester, a chip pedig a szolga. A következő kapcsolatokat fogja létrehozni a Pi és a chipje között (lásd a fenti pinoutokat a különböző AVR -k és Pi bővítőportok között, hogy megtudja, melyek azok a tűk):
- Csatlakoztassa a MOSI (master-out-slave-in) csapokat
- Csatlakoztassa az SCLK (megosztott óra) csapokat
- Csatlakoztassa a MISO (master-in-slave-out) csapokat egy 220 ohmos ellenállással, hogy megvédje a Pi-t a chipből származó váratlanul magas feszültségektől
- Csatlakoztassa a GPIO 25 -öt a Pi -n közvetlenül a chip RESET -tűjéhez. A Pi programozáskor lehúzza ezt a csapot, ezért 10K ellenállást használunk, hogy magasan tartsuk, amikor nem programozunk, és egy 1K védelmi ellenállással rendelkező LED pozitív feszültségre, hogy kellemes vizuális visszajelzést kapjunk programozás közben.
Csatlakoztatjuk a földelt és a tápfeszültségű (3,3 V) csapokat a Pi és a programozni kívánt chipek közé. Ha még nem ismerné, a Raspberry Pi csapjai nem tolerálják az 5 V -ot - megsérülnek, ha 3,3 V -nál több jelenik meg rajtuk. Ha a programozandó chipek valamilyen okból 5 V -os tápellátást igényelnek, használhatunk szintváltó chipet a Pi csapjainak védelmére, de nem ütköztem semmilyen problémába a 3.3V használatával - ezért azt javaslom, hogy játsszon biztonságosan, és takarékoskodjon az alkatrészekkel.
Végül egy 16 MHz -es kristályoszcillátort csatlakoztatunk a chip XTAL csapjaihoz, amelyet pár 22pF kondenzátoron keresztül a földhöz is csatlakoztatunk. Az AVR chipek beállíthatók különböző frekvenciákon történő működésre, és beállítható úgy is, hogy belső vagy külső forrást használnak a frekvencia meghatározására. Ha chipje külső kristályt használ frekvenciaforrásként, nélküle nem tudja újraprogramozni. Különben mindegy, hogy ott van -e.
Az utolsó képen található kapcsolási rajzot útmutatóként használhatja a cobbler tartozékának a perfboardon történő összeszereléséhez. Annyi vagy kevés különböző IC -aljzatot kaphat, amennyit csak akar, csak csatlakoztassa a megfelelő tűket párhuzamosan a Pi -vel és a kristállyal. N. B. ha útmutatásként használja a prototípusom képét, vegye figyelembe, hogy hozzáadtam néhány fejlécet és aljzatot, hogy független okokból hozzáférhessek a Pi csapjaihoz.
2. lépés: Az Avrdude telepítése és használata
Az avrdude Pi -re történő telepítéséhez csak írja be
sudo apt-get install avrdude
Ezután engedélyeznie kell az SPI felületet, ha még nem volt bekapcsolva. Erre van parancssori módszer, de sokkal könnyebb használni a Raspberry Pi konfigurációs eszközt. típus
sudo raspi-config
és lépjen az Interfész beállításai oldalra az SPI bekapcsolásához.
A chip villogása érdekében csatlakoztassa a szalagkábelt a Pi -ből a perfboard áramkör csatlakozójába, és helyezze be a chipet a megfelelő IC aljzatba (győződjön meg róla, hogy a megfelelő irányba néz).
A program villogásakor ügyeljen arra is, hogy a chipben lévő biztosítékok megfelelően legyenek beállítva. Ezek valójában csak bitek a chipben, amelyet úgy állított be, hogy megmondja, milyen órajelen kell futni, törölni kell -e az EEPROM -ot a chip írásakor stb. sokkal könnyebb használni az engbedded.com/fusecalc webhelyen található biztosítékkalkulátort. Válassza ki a használt AVR alkatrész nevét, és válassza ki a kívánt opciókat a "Feature Selection" területen. Általában csak meggyőződöm arról, hogy az óra beállításai helyesek, és a többi dolgot alapértelmezettként hagyom. Szinte mindig a "Soros programozás engedélyezve" jelölőnégyzetet és a "Visszaállítás letiltva" opciót szeretné ellenőrizetlenül hagyni - különben nem tudja újraprogramozni a chipet. Ha a megfelelő beállításokkal rendelkezik, görgessen lefelé az "Aktuális beállítások" területen, és másolja át az AVRDUDE érveket a képen látható módon.
A biztosítékok beállításához írja be a parancsot
sudo avrdude -c linuxspi -P /dev/spidev0.0 -p
ahol a partnév megfelel az Ön által használt chipnek. Az alkatrésznevek listáját a sudo ardude -c linuxspi -p? Típus beírásával találhatja meg. A program villanásához győződjön meg arról, hogy az aktuális könyvtárban van, és írja be
sudo avrdude -c linuxspi -P /dev/spidev0.0 -p -U flash: w:: i
Mindkét parancs után a LED világítani fog a chip módosításakor.
3. lépés: Az Arduino programok AVR -re történő áthelyezése
Ennek az utasításnak a fő hangsúlya a már lefordított programok chipekre való felvillantása, nem pedig az, hogy hogyan kell írni vagy fordítani. Mindazonáltal el akartam magyarázni, hogyan lehet bináris fájlokat fordítani az Arduino IDE használatával, és ezeket a módszert használva csupasz AVR -chipekre helyezni, mivel az Arduino viszonylag könnyen megtanulható, és annyi oktatóanyag és példa található.
Először is hozzá kell adnia a villogni kívánt AVR chipek adatait, hogy az IDE tudja, hogyan kell fordítani nekik. James Sleeman nagyon segítőkészen állított össze néhány beállításfájlt, amelyek elérhetők a githubon. Ezek használatához nyissa meg az Arduino IDE "Beállítások" menüjét, és kattintson a "További táblák kezelő URL -címei" mező melletti négyzetre. Másolja és illessze be a következő URL -eket a megjelenő párbeszédpanelen:
Ezután lépjen az "Eszközök" menübe, és keresse meg a "Táblakezelő …" opciót a "Tábla" almenüben. Görgessen le a lista aljára a Táblákkezelő párbeszédpanelen, és telepítse a DIY ATmega és a DIY ATtiny táblákat.
A programok összeállításához először győződjön meg arról, hogy a megfelelő processzort választotta ki a "Processzor" menüben, valamint a megfelelő processzor sebességet. Válassza a "Bootloader használata: Nem" opciót, mivel közvetlenül a Pi -vel töltjük fel, és így használhatjuk az Arduino rendszerbetöltő által általában elfoglalt extra helyet. Most kattintson az "Ellenőrzés" gombra (a pipa). Ez lefordítja a programot anélkül, hogy megpróbálná feltölteni (mivel ezt a lépést maga végzi).
Feltételezve, hogy minden jól megy, most el kell juttatnia az összeállított programot a Pi -hez. Az IDE egy ideiglenes helyen elrejti őket, mivel magát a programokat kívánja feltölteni. Windows rendszeren az AppData/Local/Temp mappában található a felhasználói könyvtárban, az "arduino_build" betűvel kezdődő mappában. Keresse meg a.hex fájlt - ez a programja! Küldje el a Pi -re FTP -n keresztül vagy USB -pendrive segítségével, és máris üzletelhet.
Ehhez Windows PC -vel vagy Mac -el kell rendelkeznie a programok összeállításához, amelyeket aztán elküld a Pi -nek. Igazán csúnya lenne ezt megtenni magán a Pi -n, de sajnos az Arduino IDE hivatalos verziója, amely elérhető a Raspbian lerakatban, meglehetősen régi, és nem rendelkezik igazgatótanáccsal. E nélkül a csupasz AVR -ek fordításához megfelelő beállítások hozzáadása egy kicsit bonyolultabb. Vannak oktatóanyagok az Arduino újabb verziójának összeállításához a Pi -n - ha ezt szeretné tenni, keresse meg őket! Azt is érzem, hogy lehetővé kell tenni, hogy az IDE a linuxspi programozót használja egy chip megvillantására az IDE -n belülről (azaz a "letöltés" gomb használatával), de ez meghaladja a türelmemet és a készségemet - ha tudja egy módja, tegye közzé a megjegyzésekben! Végül csak írhat programokat közvetlenül az AVR-C-be, és összeállíthatja azokat a Pi-n az avr-gcc segítségével, így teljes AVR fejlesztői platformot kaphat a Raspberry Pi-ben. Csináltam belőle egy picit, és ha ezt az utat akarja járni, akkor gratulálok. Villogjon!
Ajánlott:
StickC M5Stack LED villog: 7 lépés
StickC M5Stack LED villogás: Ebben a projektben megtanuljuk, hogyan kell csatlakoztatni és villogni egy LED -et az M5StickC ESP32 modul használatával. Nézze meg a videót
LED villog {Gombvezérelt}: 5 lépés
LED villog {Gombvezérlés}: Kang Chiao diák vagyok. Ez az én projektem, az Arduino-t használom, és led-villogó lámpát készítettem egy gombbal, amivel villogni tud. Felteheti a ruhájára, és amikor néhány ember túl közel van hozzá, megnyomhatja a gombot és az izzót
LED villog Raspberry Pi - A GPIO csapok használata a Raspberry Pi -n: 4 lépés
LED villog Raspberry Pi | A GPIO csapok használata a Raspberry Pi -n: Sziasztok, ebben az oktatási útmutatóban megtanuljuk, hogyan kell használni a Raspberry pi GPIO -jait. Ha valaha is használta az Arduino -t, akkor valószínűleg tudja, hogy a LED -es kapcsolót stb. Csatlakoztathatjuk a csapjaihoz, és úgy működtethetjük. hogy a LED villogjon, vagy kapjon bemenetet a kapcsolóról, így
Visuino Pro Macchina interfész OBDII Első lépések LED Villog: 3 lépés
Visuino Pro Macchina Interface OBDII Kezdő lépések LED villog: Film pokazuje najprostszy z programów którym rozpocząłem testowanie interfejsu MACCHINA M2 OBDII Fordítás: Egy videó, amely a MACCHINA M2 OBDII interfész tesztelésének legegyszerűbb példáját mutatja
Villog a LED az ESP32 NodeMCU WiFi és Bluetooth modul használatával: 5 lépés
Villog a LED az ESP32 NodeMCU WiFi és Bluetooth modul használatával Oktatóanyag: Leírás A programozás a Lua szkriptnyelv használatával történik. A platform az eLua nyílt forráskódú projektjein alapul. A platform sok nyílt forráskódú projektet használ, például lua-cjson, spiffs. Ez az ESP32 NodeMc