Агуулгын хүснэгт:

ATTiny85, ATTiny84 ба ATMega328P програмчлах: Arduino нь ISP: 9 алхам (зурагтай)
ATTiny85, ATTiny84 ба ATMega328P програмчлах: Arduino нь ISP: 9 алхам (зурагтай)

Видео: ATTiny85, ATTiny84 ба ATMega328P програмчлах: Arduino нь ISP: 9 алхам (зурагтай)

Видео: ATTiny85, ATTiny84 ба ATMega328P програмчлах: Arduino нь ISP: 9 алхам (зурагтай)
Видео: Minimal Arduino (Subtittle) 2024, Долдугаар сарын
Anonim
ATTiny85, ATTiny84 ба ATMega328P програмчлах: Arduino нь ISP байдлаар
ATTiny85, ATTiny84 ба ATMega328P програмчлах: Arduino нь ISP байдлаар
ATTiny85, ATTiny84 ба ATMega328P програмчлах: Arduino нь ISP байдлаар
ATTiny85, ATTiny84 ба ATMega328P програмчлах: Arduino нь ISP байдлаар

Оршил

Би саяхан ESP8266 дээр суурилсан хэд хэдэн IoT төслүүдийг боловсруулж байсан бөгөөд үндсэн процессор нь удирдахад шаардлагатай бүх ажлуудыг гүйцэтгэхэд хэцүү байгааг олж мэдсэн тул би тийм ч чухал биш зарим үйл ажиллагааг өөр микроконтроллерт тараахаар шийдсэн юм. ингэснээр ESP8266 -г чөлөөлж, IoT төхөөрөмж болох ажлыг үргэлжлүүлэх болно.

Би төслөө аль болох өргөн хүрээний үзэгчдэд нийтлэхийг хүсч байсан тул Arduino IDE -ийг хөгжлийн платформ болгон ашиглахыг сонгосон бөгөөд ийм олон нийтийн дэмжлэгтэй хамт олон байдаг.

Дизайн хязгаарлалт

Зорилтот төхөөрөмжүүдийн зохистой тархалтыг хангахын тулд гарын авлагад тохирох микроконтроллерыг сонгохын тулд би Atmel -ийн дараах хэсгүүдийг шийдсэн. ATMega328P, ATTiny84 ба ATTiny85. Шаардлагатай програмистын нарийн төвөгтэй байдлыг хязгаарлахын тулд би бүх төхөөрөмжийн дотоод цагийг, зөвхөн ATMega328P ба ATTiny84 -ийн хувьд 16 МГц -ийн цагийг хязгаарласан.

Дараахь зүйл бол Arduino програмчлалын талаархи тэмдэглэлүүдийн цуглуулга бөгөөд эдгээр төхөөрөмжүүдэд зориулж Arduino Uno дээр суурилсан энгийн програмист хэрхэн нэгтгэсэн тухай тайлбар юм (дээрх зургууд).

Надад ямар хэсгүүд хэрэгтэй вэ?

Программист бүтээхийн тулд танд дараах хэсгүүд хэрэгтэй болно

  1. Arduino Uno -оос 1 хөнгөлөлт
  2. 2 унтраалттай 28 зүү Zero Insertion Force (ZIF) DIP залгуур (ATMega328P, ATTiny85, ATTiny84 -ийг барих)
  3. Arduino прототип бамбайнаас 1 ширхэг (би эндээс авсан;
  4. 2 унтраалттай 5MM LED
  5. 2 унтраалттай 1K резистор
  6. 1 унтраалттай 10К эсэргүүцэл
  7. 4 унтраалттай 22pF керамик конденсатор
  8. 16 МГц давтамжтай 2 талст
  9. 3 унтраалттай 0.1uF керамик конденсатор
  10. 1 унтраалга 47uF электролитик конденсатор
  11. Электролитик конденсаторыг 10 фунт саванд хийнэ
  12. Янз бүрийн урттай утас боох утас.

Надад ямар програм хангамж хэрэгтэй вэ?

Arduino IDE 1.6.9

Надад ямар ур чадвар хэрэгтэй вэ?

  1. Arduino IDE -ийн талаархи мэдлэг
  2. Цахилгаан бараа, гагнуур хийх талаар зарим мэдлэг
  3. Маш их гарын авлага
  4. Тэвчээр, сайн хараа

Хамрах сэдвүүд

  1. Atmel микроконтроллер програмчлалын ерөнхий танилцуулга
  2. ISP эсвэл Bootloader: Энэ бүхэн жаахан ойлгомжгүй байна
  3. Хэлхээний тойм
  4. Программистаа тохируулж байна
  5. Arduino ISP програмистаа ашиглаж байна
  6. Таны зорилтот систем дээр код боловсруулж байна
  7. Готчас
  8. Дүгнэлт
  9. Ашигласан лавлагаа

Татгалзах

Урьдын адил та эдгээр зааврыг өөрийн эрсдэлээр ашиглах бөгөөд тэдгээр нь дэмжигдээгүй болно

Алхам 1: Atmel микроконтроллерыг програмчлах ерөнхий танилцуулга

Atmel микроконтроллерыг програмчлах ерөнхий танилцуулга
Atmel микроконтроллерыг програмчлах ерөнхий танилцуулга
Atmel микроконтроллерыг програмчлах ерөнхий танилцуулга
Atmel микроконтроллерыг програмчлах ерөнхий танилцуулга
Atmel микроконтроллерыг програмчлах ерөнхий танилцуулга
Atmel микроконтроллерыг програмчлах ерөнхий танилцуулга

Atmel микроконтроллерыг програмчлах хоёр арга байдаг;

  1. Системийн програмчлалын (ISP) хэсэгт,
  2. Өөрийгөө програмчлах (ачаалагч ашиглан).

Өмнөх арга (1) нь төхөөрөмжийг анхны байдалд нь оруулсны дараа микроконтроллерийг SPI интерфейсээр шууд програмчилдаг. Хэрэв өөрөөр заагаагүй бол хөрвүүлсэн эх програмыг төхөөрөмжид эхлүүлэх үед гүйцэтгэсэн газраас нь санах ойн санах ойд үе үе бичдэг. Atmel төхөөрөмжийг програмчлах чадвартай олон ISP төхөөрөмжүүд байдаг бөгөөд тэдгээрийн цөөн хэд нь (зураг 1); AVRISPmkII, Atmel-ICE, Olimex AVR-ISP-MK2, Olimex AVR-ISP500. Зураг 2 -т ISP төхөөрөмж Arduino Uno R3 самбар дээрх ATMega328P (хачин тэмдэглэгдсэн ICSP) -тэй хэрхэн холбогддогийг харуулав (3 -р зураг нь ISP -ийн зүүг гаргаж өгсөн болно). Armelino Uno ашиглан ISP интерфэйсээр дамжуулан Atmel микроконтроллерыг програмчлах боломжтой (зураг 4), энд Uno нь ATMega328P програмчлахад ашиглагддаг.

Сүүлчийн арга (2) нь гүйцэтгэгч кодын санах ойд байнга оршин суудаг "ачаалагч" гэж нэрлэгддэг жижиг кодыг ашигладаг (санамсаргүй байдлаар дахин бичихээс урьдчилан сэргийлэхийн тулд ихэвчлэн түгжигддэг). Энэ кодыг хамгийн түрүүнд асаах эсвэл төхөөрөмжийг дахин тохируулах үед гүйцэтгэдэг бөгөөд микроконтроллерийг өөр эх сурвалжаас өөр интерфэйсээр дамжуулан хүлээн авсан шинэ кодоор дахин програмчлах боломжийг олгодог. Ачаалагчийг Arduino IDE нь Arduino-г компьютер дээр USB коммандын порт болгон дахин програмчлахад ашигладаг (эсвэл MAC, Linux хайрцаг гэх мэт, Зураг 6), мөн Arduino Uno-ийн тусламжтайгаар Atmel төхөөрөмжтэй холбогддог. ATMega328P -ийн IC Pins 2 ба 3 дээрх цуваа интерфейс. Түүнчлэн Arduino Uno (ATMega328P микроконтроллерийг устгасан) нь ATMega328P -ийг ачаалагч ашиглан USB -ээс цуваа адаптер төхөөрөмж болгон үр дүнтэй програмчлахад ашиглаж болно (Зураг 7).

USB -ээс цуваа адаптер гэж юу вэ?

USB-ээс цуваа адаптер бол таны компьютерийн USB порт руу залгаж, цуваа ком порт шиг харагддаг тоног төхөөрөмж юм (компьютер нь EIA-232, V24 эсвэл RS232 гэгддэг цуваа холбооны стандартыг ашигладаг байсан үеэс уламжлагдаж ирсэн). микроконтроллерийн ижил цахилгаан түвшинд цуваа өгөгдлийг илгээх, хүлээн авах. Arduino IDE -аас Tools -> Port -> COMx -ийг сонгохдоо та компьютерээ Arduino -той холбож/холбож байна.

Ийм төхөөрөмжийг заримдаа FTDI (зураг 8, үнэндээ брэнд нэр) эсвэл CH340G гэх мэтээр нэрлэдэг. Arduino uno дээрх USB холболтыг Arduino схемийн дагуу ATMega16U2-MU (R) IC ZU4-ээр хийдэг. доор

Тодорхой болгохын тулд зураг 9 нь Armelino Uno R3 дээрх хоёр Atmel төхөөрөмж болон тэдгээрийн холбогдох ISP холбогчийг тодорхойлдог.

Тэмдэглэл 1: Хэрэв та FTDI төхөөрөмжийн маршрутаар явахаар шийдсэн бол цонхны шинэчлэлтийг ашигласнаар бүтэлгүйтсэн хямд үнэтэй хуурамч төхөөрөмж зах зээл дээр гарч байсан тул нэр хүндтэй худалдагчаас худалдаж аваарай.

Зөвлөмж болгож буй: