Съдържание:

CircuitPython с Itsybitsy M4 Express 1: Настройка: 9 стъпки
CircuitPython с Itsybitsy M4 Express 1: Настройка: 9 стъпки

Видео: CircuitPython с Itsybitsy M4 Express 1: Настройка: 9 стъпки

Видео: CircuitPython с Itsybitsy M4 Express 1: Настройка: 9 стъпки
Видео: Глубокое погружение со Скоттом: Флэш и часы, о боже! #rp2040 #adafruit 2024, Юли
Anonim
CircuitPython с Itsybitsy M4 Express 1: Настройка
CircuitPython с Itsybitsy M4 Express 1: Настройка

Ново сте в кодирането? Използвали сте само Scratch и искате да преминете към текстов език, който дава лесен достъп до физически изчисления със светодиоди, ключове, дисплеи и сензори? Тогава това може да е за вас.

Забелязах, че този сайт съдържа много инструкции за кодиране с Arduinos, използвайки Arduino IDE, но много малко за Python. Преподавам кодиране от 1968 г. (Тогава го наричахме програмиране и използвахме FORTRAN IV с карти Hollerith за въвеждане!) От тези първи дни използвах много различни езици с ученици (от 11 години до възрастни), включително LISP, Pascal и много други различни версии на BASIC.

Напоследък много училища във Великобритания започнаха да използват Python в уроците си, докато учениците преминават от „блок“кодиране с Scratch или подобно на текстови изявления. Python вероятно е по -лесна стъпка напред от използването на Arduino IDE. Кодът на CircuitPython може да бъде изпълнен чрез просто запазване на кода в платката за разработка, сякаш е USB устройство. Успешно използвах Python за физически изчисления с деца от 8 до 11 години в клуба за кодиране на основното училище на внучката ми.

Реших да използвам Itybitsy M4 Express на Adafruit за тези инструкции по следните причини:

  • Евтино - под $ 15 (£ 15)
  • Лесен за настройка и програмиране с CircuitPython (версия на Python, идеална за начинаещи в кодирането)
  • Цифрови входни/изходни щифтове - забавно е да играете с Blinkies
  • Аналогови пинове - 12 битов ADC и DAC - висока точност
  • Вградени червени LED и RGB DotStar светодиоди
  • Задвижва директно Neopixels
  • Поддържани I2C и SPI - за сензори и дисплеи
  • Широка гама от драйвери в обширната библиотека
  • Бърз и мощен - ултра бърз ATSAMD51 Cortex M4 процесор, работещ на 120 MHz
  • Много памет - 2 MB SPI флаш памет за CircuitPython код или файлове с данни
  • Страхотна подкрепа от Adafruit с пълна документация, ръководства и форум за помощ в интернет
  • Нуждае се само от стар лаптоп или компютър - без специален монитор, клавиатура, захранване или мишка.
  • Потребителят може да конвертира в Arduino IDE, на същата платка, след като придобие опит с Python.

Този първи Instructable обяснява как да настроите дъската си и да стартирате първите си скриптове.

Стъпка 1: Какво ви е необходимо, за да започнете

Какво ви е необходимо, за да започнете
Какво ви е необходимо, за да започнете

Хардуер:

  • Itsybitsy M4 Express (adafruit.com, Pimoroni.com)
  • microUSB кабел
  • Компютър - стар лаптоп ще свърши работа
  • Поялник
  • Припой
  • Платка
  • Женска лента за глава (по избор)

Софтуер:

Mu Editor

Изтеглете редактора Mu от

Инсталирайте го на компютъра си. Много лесно с пълни инструкции на сайта.

Стъпка 2: Проверете дали CircuitPython е инсталиран

Проверете дали CircuitPython е инсталиран
Проверете дали CircuitPython е инсталиран

Отворете File Explorer на вашия компютър.

Включете малкия край на USB кабела в конектора на Itsybitsy.

Включете другия край на кабела в USB порт на компютъра.

Трябва да видите ново устройство, наречено CIRCUITPY. (Ако не; отидете на страницата UPDATE.)

Щракнете двукратно върху boot_out и трябва да видите съобщение като това:

Adafruit CircuitPython 3.1.1on 2018-11-02; Adafruit ItsyBitsy M4 Express с samd51g19

Това показва, че имате по -стара версия на CircuitPython, тъй като в момента сме на версия 4. Това засега ще бъде наред, ще актуализираме версията по -късно. Adafruit често подобрява CircuitPython и публикува актуализации. Тези актуализации са много лесни за инсталиране.

Придвижете се до папката с документи и създайте нова папка, наречена Code-with-Mu вътре в нея.

Стартирайте Mu Editor

Стъпка 3: Използване на Mu Editor за първата ви програма

Използване на Mu Editor за първата ви програма
Използване на Mu Editor за първата ви програма

Щракнете върху иконата Serial в горната част на редактора. Това трябва да отвори прозореца REPL в долната част на екрана. В долния ляв ъгъл трябва да пише Adafruit. Му призна, че платка CircuitPython е свързана към компютъра.

Вече можем да напишем първата си програма или скрипт. Щракнете с мишката в горния прозорец и въведете:

print ("Здравей, Свят!")

Щракнете върху иконата Запазване. Изберете устройството CIRCUITPY. Въведете main.py в полето със заглавие и кликнете върху бутона Запазване.

Това прави много. Вашият скрипт се записва във вашата Itybitsy с името "main.py". Всеки файл с това име веднага се изпълнява от борда. Резултатът от изявлението за печат се появява в долния прозорец REPL.

Редактирайте реда на програмата на:

print ("\ nЗдравей, кодер!") и кликнете върху иконата Запазване.

Опитайте да добавите няколко подобни изявления за печат и стартирайте новия си код.

Гледайте своя Itybitsey, докато качвате скрипт. Мигащият зелен DotStar става ЧЕРВЕН, докато скриптът е запазен и се връща към ЗЕЛЕН.

Нека направим грешка, за да видим какво ще се случи. Просто изтрийте символа на последния цитат и стартирайте скрипта отново. Редакторът показва грешката, а изходът показва вида на грешката - синтаксис - и номера на реда - за да ви помогне да коригирате грешката. DotStar показва неизправността чрез промяна на цвета. Повече за това в по -късен раздел.

Поправете грешката и стартирайте скрипта отново.

Сега трябва да запишем скрипта си на сигурно място, за да можем да го използваме по -късно.

Щракнете двукратно върху раздела над скрипта. Придвижете се до документите си Code-with-Mu и запишете скрипта си там с полезно име на файл като FirstProg.py. Забележете, че името и пътят на файла мигат в долната част на редактора.

Стъпка 4: Вашият втори скрипт - Мигайте

Вашият втори скрипт - мигане
Вашият втори скрипт - мигане

Въведете скрипта, запишете го в CIRCUITPY като main.py и щракнете върху Да, за да замените предишния main.py.

(Винаги използвайте името на файла main.py за вашия скрипт, когато записвате във вашия ItsyBitsy. След това CircuitPython веднага стартира новия скрипт.)

Какво прави скриптът:

  • Импортира библиотеки за имената на пиновете на дъската, време за контрол на закъсненията и контрол на цифровите пинове,
  • Настройва щифт 13 за извеждане на напрежение към вградения червен светодиод
  • Изпълнява безкраен цикъл за включване и изключване на светодиода
  • Изчаква кратки закъснения, така че светодиодът да мига.

Сценарият има много коментари, които обясняват какво се случва. Коментарите започват със знак „#“. Те са за човешка употреба, за да ви напомнят за мисленето ви по онова време. Добрите скриптове имат много коментари.

  1. Опитайте да промените стойностите в инструкциите sleep ().
  2. Дръжте светодиода включен два пъти по -дълго, докато е изключен.
  3. Какво се случва, ако забавянията са много кратки? (0,001 секунди)

Щракнете двукратно върху раздела над скрипта си и запишете с името Blink.py във вашата папка Code-with-Mu.

Стъпка 5: Актуализиране на вашата версия на CircuitPython

Актуализиране на вашата версия на CircuitPython
Актуализиране на вашата версия на CircuitPython

Придвижете се до https://circuitpython.org/downloads в интернет. Кликнете върху снимката на Itsybitsy M4 Express (не версията M0).

Щракнете върху лилавия бутон, за да изтеглите. UF2 файла.

Стартирайте File Explorer и намерете. UF2 файла

Свържете своя Itybitsy M4 Express към USB порта и намерете неговото устройство - CIRCUITPY

Щракнете двукратно върху малкия бутон за нулиране и името на файла трябва да се промени на ITSYM4BOOT от CIRCUITPY. Трябва да кликнете два пъти доста бързо.

Плъзнете UF2 файла и го пуснете на устройството ITSYM4BOOT. UF2 файлът ще бъде копиран на дъската IBM4 и името на устройството ще се върне в CIRCUITPY.

Изберете устройството CIRCUITPY и щракнете двукратно върху файла boot_out.

Можете да прочетете новия номер на версията, за да проверите дали е актуализиран.

Направете нова папка на устройството CIRCUITPY, наречена lib. Това ще ни е необходимо в по -късните инструкции за задържане на драйвери за сензори и дисплеи.

Рестартирайте редактора Mu. Заредете файла main.py от IBM4 и го запазете обратно в IBM4. Червеният светодиод трябва да започне да мига.

Ако щракнете еднократно върху бутона за нулиране, той ще рестартира заредения скрипт main.py.

Стъпка 6: REPL

REPL
REPL

Прозорецът в долната част на редактора, включен и изключен със серийната икона, е много повече от просто прозорец за печат.

"Цикъл за четене-евал-печат (REPL), наричан още интерактивна висша или езикова обвивка, е проста, интерактивна среда за компютърно програмиране, която приема входни данни от един потребител (т.е. единични изрази), ги оценява и връща резултата към потребителя; програма, написана в REPL среда, се изпълнява на парчета. " (Google)

По принцип, ако напишете единично изявление на python в REPL, той го изпълнява наведнъж. Нека опитаме.

Щракнете с мишката в прозореца REPL.

Докато изпълнявате скрипта, задръжте клавиша и докоснете (CTRL-C). Това спира вашия скрипт.

Докоснете произволен клавиш, за да влезете в REPL и ще се появи подкана '>>>'.

вид на печат (4 + 100)

Веднага се връща отговорът 104

Погледнете снимката и опитайте няколко от вас. (Опитайте +, -, *, /, // и %)

Опитайте тази:

>> табло за импортиране

>> dir (дъска)

['_class_', 'A0', 'A1', 'A2', 'A3', 'A4', 'A5', 'APA102_MOSI', 'APA102_SCK', 'D0', 'D1', 'D10', ' D11 ',' D12 ',' D13 ',' D2 ',' D3 ',' D4 ',' D5 ',' D7 ',' D9 ',' I2C ',' MISO ',' MOSI ',' RX ', „SCK“, „SCL“, „SDA“, „SPI“, „TX“, „UART“]

>>

Това е списък с имената на щифтове, налични на дъската IBM4

За да се върнете към нормалното с мек рестарт, просто въведете CTRL-D и main.py рестартира.

Изключване на дъската

Винаги изваждайте устройството CIRCUITPY, преди да изключите компютъра. Никога не го изваждайте, докато прехвърля данни.

Стъпка 7: Поставяне на краката

Поставяне на краката
Поставяне на краката
Поставяне на краката
Поставяне на краката

Мъжките хедери са твърде дълги за дъската, така че щракнете/отрежете 2 от тях до правилната дължина.

Избутайте ги в макет, поставете IBM4 отгоре и ги запоявайте. Уверете се, че дъската е правилният път нагоре! (Чип отгоре)

Не поставяйте мъжки заглавки отгоре. Използвам лента от 5 женски заглавки отгоре, за да мога да използвам всички щифтове. Използвайте менгеме, за да държите здраво лентата на хедера близо до точката на изрязване. Използвайте остър ножовка, за да изрежете центъра на дупката - месинговият конектор ще отпадне, докато режете. Изрежете ръба, за да направите чист завършек - без жлеб..

Запояването на щифтовете не е трудно. Погледнете курсовете Arduino и Electronics, ако никога преди не сте използвали поялник. Възможността за запояване означава, че можете да направите чисти дълготрайни версии на вашите проекти на лента и след това да използвате повторно макета.

За да предотвратите прегряване на дъската, предлагам да не запоявате едната страна и след това нагоре другата. Оставете празнини и попълнете по -късно. т.е. пинове 10, RX, 2, A3, RS, BAT, 9, MI …… и т.н.

Стъпка 8: Индикатор за състоянието на CircuitPython RGB - за да ви помогне да намерите грешките

Индикатор за състоянието на CircuitPython RGB - за да ви помогне да намерите грешките
Индикатор за състоянието на CircuitPython RGB - за да ви помогне да намерите грешките

ItsyBitsy M4 Express и много други платки M0 и M4 имат един единствен NeoPixel или DotStar RGB LED на дъската, който показва състоянието на CircuitPython. Тук е между (C) и щифт A0.

Ето какво означават цветовете и мигането:

  • постоянен ЗЕЛЕН: code.py (или code.txt, main.py или main.txt) се изпълнява
  • пулсиращ ЗЕЛЕН: code.py (и т.н.) е завършил или не съществува
  • постоянен ЖЪЛТ при стартиране: (4.0.0-alpha.5 и по-нови) CircuitPython чака за нулиране, за да покаже, че трябва да стартира в безопасен режим
  • пулсиращ ЖЪЛТ: Circuit Python е в безопасен режим: той се срива и рестартира
  • постоянен БЯЛ: REPL работи
  • постоянен СИН: boot.py работи

Цветовете с множество проблясъци по -долу показват изключение на Python и след това показват номера на реда на грешката. Цветът на първата светкавица показва вида на грешката:

  • ЗЕЛЕН: IndentationError
  • CYAN: SyntaxError
  • БЯЛ: NameError
  • ОРАНЖЕВ: OSError
  • PURPLE: ValueError
  • ЖЪЛТ: друга грешка

Те са последвани от мигания, указващи номера на реда, включително стойността на мястото. БЯЛИ светкавици са на място на хиляди, СИНИТЕ са на стотици, ЖЪЛТИ са на десетки, а ЦИАН са на нечие място. Така например грешка в ред 32 би мигнала ЖЪЛТ три пъти и след това ЦИАН два пъти. Нулите са обозначени с изключително дълга тъмна междина.

Те са доста трудни за преброяване. Винаги отваряйте прозореца REPL при разработването на скрипт и там ще се появят съобщения за грешка на английски език.

Стъпка 9: Гледаме напред - към вас

Гледам напред - към вас
Гледам напред - към вас

Когато стартирах този Instructable, очаквах да бъде първият от поредицата, изследваща CircuitPython и физическите изчисления. Моят план за следващото е да покрия основните входове и изходи с аритметика, светодиоди, превключватели, потенциометри и входни изявления. Той също така ще обхваща циклични методи и списъци (масиви).

Преди да го напиша, искам обратна връзка, за да мога да го приспособя към аудиторията.

Нещата, които бих искал да знам са:

  • Нормално ли е темпото?
  • Дали детайлите са твърде много, твърде малко или приблизително правилно?
  • Искате ли някои упражнения за практикуване?

Към теб.

Препоръчано: