Uživatelské nástroje

Nástroje pro tento web


arduino

Toto je starší verze dokumentu!


Arduino

  • Arduino je dá se říct destička pro mikroprocesor. Slouží jako vývojářská platforma. Celkově se snaží zpřístupnit možnosti mikroprocesorů obyčejným smrtelníkům.
  • Programuje se přes USB port, má vlastní arduino IDE, ale lze použít i AVR C
  • Pro arduino existují Shields - různá rozšíření funkcionality formou nových destiček, které lze přímo připojit k základní desce
  • Existují různé varianty základní desky
  • bootloader
    • není povinný a v mikroprocesoru vůbec být nemusí
      • nastavuje se pomocí FUSE bitů
    • sídlí ve flash paměti
      • paměť se rozdělí na část pro aplikaci a část pro bootloader
      • nastavuje se pomocí FUSE bitů
    • spouští se po přivedení napájení
    • většinou se používá pro přeprogramování aplikační části flash paměti
    • do zařízení se nahrává přes programátor (například ISP)
    • arduiono sériový bootloader
      • při startu koukne na sériovou linku (UART sběrnici)
      • (proto se všechny arduina hlásí po připojení k PC jako sériová linka)
      • pokud tam je speciální sekvence znaků, spustí programování
      • jinak předá řízení aplikaci
    • DFU bootloader
      • AVR USB chipy většinou obsahují DFU (Device Firmware Update) bootloader
      • je to speciální rozhraní. Ovladače jsou dostupné pro všechny platformy
      • režim se aktivuje myslím spojením učitých pinů

Modely

  • Arduino Nano 33 BLE
    • builds on the nRF52840 microcontroller with 1MB CPU Flash Memory.
    • Featuring a 9 axis inertial measurement unit and the possibility for Bluetooth Low Energy (BLE)
Označení modulu Mikrokontrolér Flash KiB EEPROM KiB SRAM KiB Digitální I/O / PWM kanály Analogové vstupy Typ USB rozhraní
Diecimila ATmega168 16 0.5 1 14/6 6 FTDI
Duemilanove ATmega168/328P 16/32 0.5/1 1/2 14/6 6 FTDI
Uno ATmega328P 32 1 2 14/6 6 ATmega8U2
Due ATMEL SAM3U 256 50 16
Mega ATmega1280 128 4 8 54/14 16 FTDI
Mega2560 ATmega2560 256 4 8 54/14 16 ATmega8U2
Leonardo ATmega32u4 32 1 2.5 20/7 12 Atmega32u4
Micro ATmega32u4 32 1 2.5 20/7 12 Atmega32u4
Fio ATmega328P 32 1 2 14/6 8 Žádné
Nano ATmega168 or ATmega328 16/32 0.5/1 1/2 14/6 8 FTDI
LilyPad ATmega168V or ATmega328V 16 0.5 1 14/6 6 Žádné
Yún Atheros AR9331 – 400MHz (ATmega32u4) 16 MiB (32KiB) 1 64 MiB DDR2 (1KiB) 20/7 (ATmega32u4) 12 ATmega32u4
  • všimni si, že desky s Atmega32u4 mají USB rozhraní tvořeno přímo kontrolérem
    • to umožňuje používat zařízení přímo jako USB HID zařízení
  • FTDI znamená, že na desce je speciální obvod převádějící sériový USB port na UART rozhraní
  • Arduino Uno a Mega2560 používá na USB rozhraní další Atmel AVR mikroprocesor (s USB rozhraním)
    • asi lze taky přeprogramovat na libovolné zařízení, viz HoodLoader2
  • Flash je paměť pro uložení programu
  • EEPROM je persistentní paměť pro ukládání hodnot
  • SRAM je operační paměť
  • analogové vstupy - ADC převodníky
  • digitální I/O piny - programovatelné in/out
  • PWM - jakoby analogový výstup. Napětí se ve skutečnosti nemění - na výstup se posílají pulzy 1/0. Délka pulzu a prodleva mezi nimi určuje jakoby napětí. Spoléhá se na setrvačnost. Například PWM řízení otáček nebo intenzita jasu LED

pro micro z ebay za kilo

Problémy

  • avrdude butterfly programmer uses avr_write_page() but does not provide a cmd()
    • chtěl jsem nahrát nový sketch a vypsalo to hromadu failed a hlášku výše
    • arduino přestalo komunikovat (po připojení nezobrazilo sériové rozhraní)
    • musel jsem přes USBasp vypálit z Arduino IDE znovu zavaděč
    • musel jsem odinstalovat apt-get –purge remove modemmanage
avrdude: Error: butterfly programmer uses avr_write_page() but does not
provide a cmd() method.
 *** page 121 (addresses 0x6bfa - 0x6c79) failed to write

avrdude: error: programmer did not respond to command: set addr
avrdude: butterfly_recv(): programmer is not responding
avrdude: verification error, first mismatch at byte 0x0160
         0xff != 0x00
avrdude: verification error; content mismatch
avrdude: verification error; content mismatch

Odkazy

arduino.1635924023.txt.gz · Poslední úprava: (upraveno mimo DokuWiki)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki