Съдържание:
- Стъпка 1: Използвани ресурси
- Стъпка 2: Монтаж
- Стъпка 3: Нова програма в MBED
- Стъпка 4: Импортиране на библиотеката DS18b20
- Стъпка 5: Нова програма в MBED
- Стъпка 6: Изходен код
- Стъпка 7: Получени данни
- Стъпка 8: Включване на още сензори
- Стъпка 9: Преглед на източника
- Стъпка 10: Файлове
Видео: Невероятно лесно за програмиране!: 10 стъпки
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:53
Днес ще говоря за ядрото STM32, L476RG, което е лицето на Ultra Low Power. Можете да го видите вляво на изображението. Това устройство има две женски щифтове, по една от всяка страна, които не са нищо повече от съединителите за щита arduino. Това е страхотно, нали?
Според мен STMicroelectronics направи това в своя комплект за разработка, защото знае, че професионалистите използват този чип. Тази компания се насочва все повече към arduino. Това важи и за няколко други професионални комплекта STMicroelectronics.
И накрая, що се отнася до проекта днес, ще използваме два сензора DS18b20 в допълнение към L476RG. Така че ще направим просто сглобяване с помощта на L476RG, ще импортираме библиотека в средата MBED, ще създадем програма в средата MBED и ще получим данни от L476RG чрез USB / Serial.
Вече говорих малко за L476RG в това видео: ПО -ЛЕСНИЯТ НАЧИН НА ПРОГРАМИРАНЕ НА МИКРОКОНТРОЛЕР, където показвам как да конфигурирам средата MBED, която е онлайн.
Някои хора, които следват видеоклиповете ми, ме питат дали STM32 заменя ESP32. Казвам едно: не замества и не би могло, защото те са две напълно различни неща.
Този STM32 чип е микроконтролер, или по -скоро; това не е "куп неща", както е ESP32. Така че името може да изглежда подобно, но те са напълно различни. STM32 е микроконтролер с общо предназначение, като PIC, Atmel, например.
Стъпка 1: Използвани ресурси
1 ядро L476RG
2 сензора DS18b20 (използваме общите водоустойчиви модули на пазара)
1 4k7 резистор
Мини протоборд
Джъмпери за свързване
Стъпка 2: Монтаж
Първоначално ще извършим монтажа с помощта на един от температурните сензори.
Мощността му ще бъде 5V.
Резистор 4k7 ще се използва за издърпване на линията за данни (1-Wire).
Ще четем данните, използвайки щифта A0.
Стъпка 3: Нова програма в MBED
След като настроите акаунта си в MBED и получите достъп до него, ние ще създадем нова програма. За да направите това, щракнете с десния бутон върху „Моите програми“и изберете „Нова програма …“
Потвърдете, че „Платформата“съответства на дъската, която използвате.
Сега кликваме върху „Шаблон“.
Ще създадем програма въз основа на примера „Показване на съобщение на компютър с помощта на UART“.
Въведете името на програмата в „Име на програмата“.
Поставете отметка в опцията „Актуализиране на тази програма и библиотеки до най -новата версия“.
Ще бъде създадена нова папка за вашата програма, включително библиотеката по подразбиране MBED и файлът main.cpp.
Можете да го използвате, за да проверите дали всичко работи добре. За да направите това, просто го компилирайте и го копирайте на платформата.
Използвайки сериен терминал по ваш избор, можете да получавате следните съобщения.
Стъпка 4: Импортиране на библиотеката DS18b20
Тъй като има няколко версии на библиотеки за Ds18b20, ще импортираме с помощта на url, така че вашият пример използва същата библиотека.
Стъпка 5: Нова програма в MBED
В полето „URL адрес на източника“попълнете: https://os.mbed.com/users/Sissors/code/DS1820/ и щракнете върху импортиране.
Вашата библиотека DS1820 трябва да се появи в папката на вашата програма.
Стъпка 6: Изходен код
Включва
Започнахме с включването на необходимите библиотеки.
#include "mbed.h" // включване на библиотека padrão do MBED#include "DS1820.h" // включване на biblioteca до сензор DS1820
Определяме константи, които ще представляват използваните пинове.
Обърнете внимание, че DS18b20 е сензор с 1-WIRE комуникация. Поради тази причина използваме библиотеката, която ще обработва целия протокол за комуникация с устройствата. Това включва идентифициране на всяко устройство до команди за четене.
#define PINO_DE_DADOS A0 // дефинирайте o pino para leitura dos dados#дефинирайте MAX_SENSORES 16 // дефинирайте número máximo para o vetor de sensores
Създаваме вектор, който ще сочи към всяко от 16 -те възможни устройства, свързани към линията за данни.
Сензор DS1820* [MAX_SENSORES]; // cria um vetor com 16 позиции за ос сензори
Стартираме метода main (), където, използвайки метода "unassignedProbe ()", съдържащ се в библиотеката DS1820, търсим всички налични устройства в комуникационната линия.
Запълваме сензорния вектор с инстанциите, които ще представляват всеки от наличните сензори.
Правим това, докато не бъде намерен последният или докато достигнем максимума от 16 сензора.
int main () {int encontrados = 0; while (DS1820:: unassignedProbe (PINO_DE_DADOS)) {// инициира прокурарен сензор за сензори [encontrados] = нов DS1820 (PINO_DE_DADOS); // cria uma instancia para o sensor encontrado encontrados ++; if (encontrados == MAX_SENSORES) // проверете дали не можете да прекъснете сензорите; }
Изпращаме броя на сензорите, намерени на линията.
printf ("Dispositivos encontrado (s): %d / r / n / n", encontrados);
Стартираме безкраен цикъл, като искаме всички налични сензори да изчислят съответните си температури, и след това да повторим през сензорния вектор, като изпратим получените показания.
printf ("Dispositivos encontrado (s): %d / r / n / n", encontrados); while (1) {сензор [0]-> convertTemperature (вярно, DS1820:: всички_устройства); // solicita a leitura de temperature para todos os dispositivos encontrados for (int i = 0; itemperature ()); //… e retorna a temperature printf ("\ r / n"); изчакайте (1); }
Стъпка 7: Получени данни
С помощта на един сензор получаваме следния сериен изход.
Стъпка 8: Включване на още сензори
За да тестваме кода, въвеждаме друг сензор в комуникационната линия, просто като го свържем паралелно с първия сензор.
Не забравяйте да изключите монтажа, преди да свържете нови сензори.
При рестартиране на сборката получихме следния изход, без никакви промени в изходния код.
Стъпка 9: Преглед на източника
#include "mbed.h" // включване на библиотека padrão do MBED #include "DS1820.h" // включване на библиотека на сензор DS1820 #define PINO_DE_DADOS A0 // дефиниране на pino para leitura dos dados #дефиниране MAX_SENSORES 16 // дефиниране за най -новите параметри за сензори DS1820* сензор [MAX_SENSORES]; // cria um vetor com 16 позиции за ос сензори int main () {int encontrados = 0; while (DS1820:: unassignedProbe (PINO_DE_DADOS)) {// инициира прокурарен сензор за сензори [encontrados] = нов DS1820 (PINO_DE_DADOS); // cria uma instancia para o sensor encontrado encontrados ++; if (encontrados == MAX_SENSORES) // проверете дали не можете да прекъснете сензорите; } printf ("Dispositivos encontrado (s): %d / r / n / n", encontrados); while (1) {сензор [0]-> convertTemperature (вярно, DS1820:: всички_устройства); // solicita a leitura de temperature para todos os dispositivos encontrados for (int i = 0; itemperature ()); //… e retorna a temperature printf ("\ r / n"); изчакайте (1); }}
Стъпка 10: Файлове
Други
Препоръчано:
Как да променим DC двигателя в нещо невероятно: 5 стъпки
Как да променим DC двигателя в нещо невероятно: Здравейте приятели, в тази инструкция направих невероятна модификация от моя стар DC двигател, в който тялото на двигателя е взето и въртенето на ротора е ясно видимо … Продължи четене
Как лесно да промените знак "Light/LED" за лесно програмиране на Arduino: 7 стъпки (със снимки)
Как лесно да промените знак "Light/LED" за лесно програмиране на Arduino: В тази инструкция ще покажа как всеки може да превърне нещо със светлини в програмируеми мигащи светлини arduino или " Подвижни светлини "
Лесно компютърно програмиране: 5 стъпки
Лесно компютърно програмиране: Много ЛЕСЕН и БЕЗПЛАТЕН начин всеки да напише първата си компютърна програма за десет минути. Забележка: Тази инструкция е за хора, които смятат, че програмирането е някакво магическо нещо, за което се нуждаете от скъпи програми или високотехнологични умения. Надявам се
Как да направите вашия Firefox да изглежда невероятно и готино безплатно !!!: 8 стъпки
Как да накарате вашия Firefox да изглежда невероятно и готино безплатно !!!: В тази инструкция ще ви покажа как да придадете на вашия firefox невероятен шокиращ вид. безплатно!! И използването на сайта за добавяне на Mozilla безопасно! Това е първият ми инструктаж, така че оставяйте коментари, моля МОИТЕ инструкции наскоро бяха включени в buzztrack
Как да накараме Firefox да изглежда невероятно и готино безплатно .. The Sequil: 4 стъпки
Как да накараме Firefox да изглежда невероятно и готино безплатно …….. The Sequil: Здравейте на всички. Тази инструкция е по -малък продължение на My first firefox instructable, който е един от най -популярните firefox как в мрежата. Днес ще ви представя три: (нови и готини добавки за firefox. Ако нямате firefox pl