LA 2 mikro M1
PERCOBAAN 6
1. Prosedur[Kembali]
2. Buat program untuk mikrokontroler STM32 nya.
3. Inputkan program ke dalam mikrokontroler melalui ST-Link V2 Driver.
4. Setelah program diinputkan, uji rangkaian yang telah dirangkai sesuai dengan output yang ditentukan.
3. Rangkaian Simulasi dan Prinsip Kerja[Kembali]
Program berfungsi untuk mengontrol LED dan buzzer menggunakan input dari push button serta sensor inframerah (IR) dengan mikrokontroler STM32. Pada awal eksekusi, sistem melakukan serangkaian inisialisasi, dimulai dengan pemanggilan fungsi HAL_Init()
, yang mengaktifkan HAL Library agar dapat digunakan dalam program. Selanjutnya, sistem mengonfigurasi clock melalui fungsi SystemClock_Config()
, di mana HSI (High-Speed Internal Clock) digunakan sebagai sumber clock utama tanpa PLL, serta memastikan bahwa bus sistem seperti AHB, APB1, dan APB2 berjalan pada kecepatan yang sesuai.
Setelah konfigurasi clock, sistem menginisialisasi pin GPIO melalui fungsi MX_GPIO_Init()
. Dalam proses ini, pin untuk LED merah, LED hijau, dan buzzer dikonfigurasi sebagai output, sedangkan push button dan sensor IR dikonfigurasi sebagai input tanpa pull-up atau pull-down. Semua output kemudian diatur ke LOW (mati) untuk memastikan sistem mulai dalam kondisi awal yang stabil.
Dalam fungsi main()
, sistem memasuki loop utama yang terus berjalan untuk membaca status push button dan sensor IR. Status ini diperoleh menggunakan HAL_GPIO_ReadPin()
, di mana nilai yang terbaca dari push button disimpan dalam variabel button_status
, sedangkan nilai dari sensor IR disimpan dalam ir_status
. Saat push button ditekan (GPIO_PIN_SET
), sistem akan menyalakan LED merah dan buzzer, menunjukkan bahwa tombol sedang aktif. Sebaliknya, jika sensor IR mendeteksi keberadaan objek (GPIO_PIN_SET
), sistem akan menyalakan LED hijau dan buzzer sebagai indikasi.
Untuk memastikan stabilitas pembacaan inputnya, program menyertakan HAL_Delay(100)
, yang memberikan jeda 100 milidetik guna mengatasi efek bouncing pada tombol mekanis. Setelah delay ini, sistem kembali ke awal loop untuk membaca status tombol dan sensor secara terus-menerus. Dengan demikian, program ini memungkinkan kontrol sederhana atas LED dan buzzer berdasarkan kondisi input dari push button serta sensor IR, dengan sistem yang berjalan secara real-time dan responsif terhadap perubahan lingkungan.
Komentar
Posting Komentar