Daftar Isi:
- Langkah 1: Sumber Daya yang Digunakan
- Langkah 2: Perakitan
- Langkah 3: Program Baru di MBED
- Langkah 4: Mengimpor Perpustakaan DS18b20
- Langkah 5: Program Baru di MBED
- Langkah 6: Kode Sumber
- Langkah 7: Data Diterima
- Langkah 8: Termasuk Lebih Banyak Sensor
- Langkah 9: Lihat Sumber
- Langkah 10: File
Video: Sangat Mudah Diprogram!: 10 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:57
Hari ini, saya akan berbicara tentang STM32 Core, L476RG, yang merupakan wajah Ultra Low Power. Anda dapat melihatnya di sebelah kiri gambar. Perangkat ini memiliki dua pin bar perempuan, satu di setiap sisi, yang tidak lebih dari konektor untuk pelindung arduino. Ini bagus, bukan?
Menurut pendapat saya, STMicroelectronics melakukan ini dalam Kit Pengembangannya karena mereka mengetahui bahwa para profesional menggunakan chip ini. Perusahaan ini semakin menuju arduino. Dan ini juga berlaku untuk beberapa kit STMicroelectronics profesional lainnya.
Terakhir, mengenai proyek hari ini, kami akan menggunakan dua sensor DS18b20 selain L476RG. Jadi kita akan membuat perakitan sederhana menggunakan L476RG, mengimpor perpustakaan ke lingkungan MBED, membuat program di lingkungan MBED, dan mendapatkan data dari L476RG melalui USB / Serial.
Saya telah berbicara sedikit tentang L476RG dalam video ini: CARA MUDAH MEMPROGRAM MIKROKONTROLER, di mana saya menunjukkan cara mengkonfigurasi lingkungan MBED, yang online.
Beberapa orang yang mengikuti video saya menanyakan apakah STM32 menggantikan ESP32. Saya mengatakan satu hal: itu tidak menggantikan dan tidak bisa, karena mereka adalah dua hal yang sama sekali berbeda.
Chip STM32 ini adalah mikrokontroler, atau lebih tepatnya; itu bukan "kelompok hal" seperti ESP32. Jadi namanya mungkin terlihat mirip, tetapi mereka sama sekali berbeda. STM32 adalah mikrokontroler tujuan umum, seperti PIC, Atmel, misalnya.
Langkah 1: Sumber Daya yang Digunakan
1 Inti L476RG
2 sensor DS18b20 (kami menggunakan modul tahan air umum di pasar)
1 resistor 4k7
papan prototipe mini
Jumper untuk koneksi
Langkah 2: Perakitan
Kami awalnya akan melakukan perakitan menggunakan salah satu sensor suhu.
Kekuatannya akan menjadi 5V.
Sebuah resistor 4k7 akan digunakan untuk melakukan pull-up pada jalur data (1-Wire).
Kami akan membaca data menggunakan pin A0.
Langkah 3: Program Baru di MBED
Setelah akun Anda diatur di MBED dan mengaksesnya, kami akan membuat program baru. Untuk melakukan ini, klik kanan pada "Program Saya" dan pilih "Program Baru …"
Konfirmasikan bahwa "Platform" sesuai dengan papan yang Anda gunakan.
Kami sekarang mengklik "Templat".
Kami akan membuat program berdasarkan contoh, "Tampilkan pesan di PC menggunakan UART".
Masukkan nama program di "Nama Program".
Centang opsi "Perbarui program dan pustaka ini ke revisi terbaru".
Folder baru untuk program Anda akan dibuat, termasuk perpustakaan MBED default dan file main.cpp.
Anda dapat menggunakannya untuk menguji apakah semuanya bekerja dengan baik. Untuk melakukan ini, cukup kompilasi dan salin ke platform.
Menggunakan terminal serial pilihan Anda, Anda dapat menerima pesan berikut.
Langkah 4: Mengimpor Perpustakaan DS18b20
Karena ada beberapa versi pustaka untuk Ds18b20, kami akan mengimpor menggunakan url sehingga contoh Anda menggunakan pustaka yang sama.
Langkah 5: Program Baru di MBED
Pada kolom "Source URL" isikan: https://os.mbed.com/users/Sissors/code/DS1820/ dan klik impor.
Pustaka DS1820 Anda akan muncul di folder program Anda.
Langkah 6: Kode Sumber
Termasuk
Kami mulai dengan menyertakan perpustakaan yang diperlukan.
#sertakan "mbed.h" //sertakan biblioteca padrão do MBED#include "DS1820.h" //incluso da biblioteca do sensor DS1820
Kami mendefinisikan konstanta yang akan mewakili pin yang digunakan.
Perhatikan bahwa DS18b20 adalah sensor dengan komunikasi 1-WIRE. Untuk alasan ini, kami menggunakan perpustakaan yang akan menangani seluruh protokol komunikasi dengan perangkat. Ini termasuk mengidentifikasi setiap perangkat hingga perintah baca.
#define PINO_DE_DADOS A0 //define o pino para leitura dos dados#define MAX_SENSORES 16 //define o número máximo para o vetor de sensores
Kami membuat vektor yang akan menunjuk ke masing-masing dari 16 perangkat yang mungkin terhubung ke jalur data.
DS1820* sensor[MAX_SENSORES]; //cria um vetor com 16 posies para os sensores
Kami memulai metode utama (), di mana, dengan menggunakan metode "unassignedProbe ()" yang terdapat dalam pustaka DS1820, kami mencari semua perangkat yang tersedia di jalur komunikasi.
Kami mengisi vektor sensor dengan contoh yang akan mewakili masing-masing sensor yang tersedia.
Kami melakukan ini sampai yang terakhir ditemukan atau sampai kami mencapai maksimum 16 sensor.
int main(){ int encontrados = 0; while(DS1820::unassignedProbe(PINO_DE_DADOS)) { //inicia a procura por sensores sensor[encontrados] = new DS1820(PINO_DE_DADOS); //cria uma instancia untuk sensor encontrado encontrados++; if (berlawanan dengan == MAX_SENSORES) //memverifikasi apakah sensor rusak secara maksimal; }
Kami mengirimkan jumlah sensor yang ditemukan di telepon.
printf("Dispositivos encontrado(s): %d \r\n\n", encontrados);
Kami memulai loop tak terbatas, meminta semua sensor yang tersedia menghitung suhu masing-masing, dan kemudian beralih melalui vektor sensor dengan mengirimkan bacaan yang diperoleh.
printf("Dispositivos encontrado(s): %d \r\n\n", encontrados); while(1) { sensor[0]->convertTemperature(true, DS1820::all_devices); //solicita a leitura de temperaturea para todos os dispositivos encontrados for (int i = 0; itemperature()); //… e retorna a suhu printf("\r\n"); tunggu(1); }
Langkah 7: Data Diterima
Menggunakan sensor tunggal, kami memperoleh output serial berikut.
Langkah 8: Termasuk Lebih Banyak Sensor
Untuk menguji kode, kami memperkenalkan sensor lain di jalur komunikasi, cukup dengan menghubungkannya secara paralel dengan sensor pertama.
Ingatlah untuk mematikan unit sebelum menghubungkan sensor baru.
Saat memulai ulang perakitan, kami memperoleh output berikut, tanpa perubahan apa pun pada kode sumber.
Langkah 9: Lihat Sumber
#sertakan "mbed.h" //sertakan biblioteca padrão do MBED#include "DS1820.h" //sertakan biblioteca do sensor DS1820 #define PINO_DE_DADOS A0 //define o pino para leitura dos dados #define MAX_SENSORES 16 //define o número máximo para o vetor de sensores DS1820* sensor[MAX_SENSORES]; //cri um vetor com 16 posies para os sensores int main() { int encontrados = 0; while(DS1820::unassignedProbe(PINO_DE_DADOS)) { //inicia a procura por sensores sensor[encontrados] = new DS1820(PINO_DE_DADOS); //cria uma instancia untuk sensor encontrado encontrados++; if (berlawanan dengan == MAX_SENSORES) //memverifikasi apakah sensor rusak secara maksimal; } printf("Dispositivos encontrado(s): %d \r\n\n", encontrados); while(1) { sensor[0]->convertTemperature(true, DS1820::all_devices); //solicita a leitura de temperaturea para todos os dispositivos encontrados for (int i = 0; itemperature()); //… e retorna a suhu printf("\r\n"); tunggu(1); } }
Langkah 10: File
Yang lain
Direkomendasikan:
BLE Daya Sangat Rendah Mudah di Arduino Bagian 2 -- Monitor Suhu/Kelembaban -- Rev 3: 7 Langkah
BLE Daya Sangat Rendah Mudah di Arduino Bagian 2 -- Monitor Suhu/Kelembaban -- Rev 3: Pembaruan: 23 November 2020 – Penggantian pertama baterai 2 x AAA sejak 15 Januari 2019 yaitu 22 bulan untuk 2xAAA AlkalineUpdate: 7 April 2019 – Rev 3 dari lp_BLE_TempHumidity, menambahkan plot Tanggal/Waktu, menggunakan pfodApp V3.0.362+, dan pembatasan otomatis saat
Sistem Penyiraman Mudah Diprogram Dengan Arduino: 4 Langkah
Sistem Penyiraman yang Mudah Diprogram Dengan Arduino: Proyek ini akan membuat tanaman Anda tetap hidup, tanpa intervensi apa pun selama beberapa hari atau bahkan berminggu-minggu. Ringkasnya, ini adalah Sistem Penyiraman yang Dapat Diprogram, didukung oleh Arduino. Jika Anda menyukai elektronik dan tanaman, proyek ini dibuat untuk Anda. Ini tujuannya
DIY MusiLED, LED Musik yang Disinkronkan Dengan Aplikasi Windows & Linux Sekali Klik (32-bit & 64-bit). Mudah Dibuat Ulang, Mudah Digunakan, Mudah Dipindahkan.: 3 Langkah
DIY MusiLED, LED Musik yang Disinkronkan Dengan Aplikasi Windows & Linux Sekali Klik (32-bit & 64-bit). Mudah Dibuat Ulang, Mudah Digunakan, Mudah Dipindahkan.: Proyek ini akan membantu Anda menghubungkan 18 LED (6 Merah + 6 Biru + 6 Kuning) ke Papan Arduino Anda dan menganalisis sinyal waktu nyata Kartu Suara komputer Anda dan menyampaikannya ke LED untuk menyalakannya sesuai dengan efek ketukan (Snare, High Hat, Kick)
Cara yang Sangat Sederhana/mudah/tidak Rumit untuk Membuat Orang/Manusia/Hewan/Robot Terlihat Seperti Memiliki Penglihatan Panas yang Sangat Keren/Terang (Warna Pilihan Anda) Menggunakan GIMP: 4 Langkah
Cara yang Sangat Sederhana/Mudah/Tidak Rumit untuk Membuat Orang/Manusia/Hewan/Robot Terlihat Seperti Memiliki Penglihatan Panas Yang Sangat Keren/Terang (Warna Pilihan Anda) Menggunakan GIMP: Read…the…title
Sangat Sederhana Namun Sangat Efektif Prank (Computer Prank): 3 Langkah
Sangat Sederhana… Namun Sangat Efektif Prank (Computer Prank): Instruksi ini SANGAT sederhana, namun SANGAT efektif! Apa yang akan terjadi adalah: Anda menyembunyikan semua ikon di desktop korban. Korban akan panik ketika mereka melihat komputer setelah Anda melakukan lelucon. Ini tidak dapat membahayakan komputer sama sekali