LA MODUL 1 (BAGIAN 1)



 LAPORAN AKHIR KONDISI 2 PERCOBAAN 3

MODUL 1 GENERAL INPUT DAN OUTPUT


1. Prosedur [Kembali]

  1. Menyiapkan alat dan bahan.
  2. Merangkai komponen pada breadboard sesuai dengan gambar rangkaian percobaan.
  3. Menghubungkan masing masing pin input output.
  4. Mengunggah program ke mikrokontroler.
  5. Jalankan Rangkaian

2. Hardware dan Diagram Blok [Kembali]

  • Hardware :


    • STM32F103C8
    • IR Transmitter dan IR Receiver
    • Touch Sensor 
    • Buzzer 
    • LED
    • Resistor
    Diagram Blok

     

3. Rangkaian Simulasi dan Prinsip Kerja [Kembali]

Rangkaian Simulasi Di Wokwi





Prinsip kerja :

istem membaca dua input utama yaitu touch sensor sebagai saklar utama dan sensor PIR sebagai pendeteksi gerakan. Saat touch sensor disentuh, sistem akan mengaktifkan atau menonaktifkan mode kerja (toggle system_enable). Jika sistem aktif, LED (lampu) akan menyala terus sebagai kondisi standby. Ketika sensor PIR mendeteksi adanya gerakan, LED tetap menyala dan buzzer akan berbunyi sesaat sebagai indikator adanya aktivitas. Sebaliknya, jika tidak ada gerakan dan sistem dalam kondisi nonaktif, maka LED akan mati. Dengan demikian, rangkaian ini menggabungkan kontrol manual (touch sensor) dan otomatis (PIR) untuk mengatur nyala lampu dan buzzer.

4. Flowchart dan Listing Program [Kembali]

Flowchart program :


Listing Program:
#include "stm32f1xx_hal.h" uint8_t system_enable = 0; uint8_t touch_last = 0; uint8_t pir_first_trigger = 1; void SystemClock_Config(void); static void MX_GPIO_Init(void); void Error_Handler(void); int main(void) { HAL_Init(); SystemClock_Config(); MX_GPIO_Init(); while (1) { uint8_t pir_now = HAL_GPIO_ReadPin(GPIOA, GPIO_PIN_0); uint8_t touch_now = HAL_GPIO_ReadPin(GPIOA, GPIO_PIN_1); if (touch_now == GPIO_PIN_SET && touch_last == GPIO_PIN_RESET) { system_enable = !system_enable; if (system_enable) { HAL_GPIO_WritePin(GPIOB, GPIO_PIN_1, GPIO_PIN_SET); HAL_Delay(100); HAL_GPIO_WritePin(GPIOB, GPIO_PIN_1, GPIO_PIN_RESET); } HAL_Delay(200); } touch_last = touch_now; if (pir_now == GPIO_PIN_SET) { HAL_GPIO_WritePin(GPIOB, GPIO_PIN_0, GPIO_PIN_SET); if (pir_first_trigger) { HAL_GPIO_WritePin(GPIOB, GPIO_PIN_1, GPIO_PIN_SET); HAL_Delay(100); HAL_GPIO_WritePin(GPIOB, GPIO_PIN_1, GPIO_PIN_RESET); pir_first_trigger = 0; } } else { pir_first_trigger = 1;
if(!system_enable) HAL_GPIO_WritePin(GPIOB, GPIO_PIN_0, GPIO_PIN_RESET); } if(system_enable) HAL_GPIO_WritePin(GPIOB, GPIO_PIN_0, GPIO_PIN_SET); } } void SystemClock_Config(void) { RCC_OscInitTypeDef RCC_OscInitStruct = {0}; RCC_ClkInitTypeDef RCC_ClkInitStruct = {0}; RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSI; RCC_OscInitStruct.HSIState = RCC_HSI_ON; RCC_OscInitStruct.HSICalibrationValue = RCC_HSICALIBRATION_DEFAULT; RCC_OscInitStruct.PLL.PLLState = RCC_PLL_NONE; if(HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK) Error_Handler(); RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK | RCC_CLOCKTYPE_SYSCLK | RCC_CLOCKTYPE_PCLK1; RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_HSI; RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1; RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV1; if(HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_0) != HAL_OK) Error_Handler(); } static void MX_GPIO_Init(void) { GPIO_InitTypeDef GPIO_InitStruct = {0}; __HAL_RCC_GPIOA_CLK_ENABLE(); __HAL_RCC_GPIOB_CLK_ENABLE(); GPIO_InitStruct.Pin = GPIO_PIN_0 | GPIO_PIN_1; GPIO_InitStruct.Mode = GPIO_MODE_INPUT; GPIO_InitStruct.Pull = GPIO_NOPULL; HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); GPIO_InitStruct.Pin = GPIO_PIN_0 | GPIO_PIN_1; GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; HAL_GPIO_Init(GPIOB, &GPIO_InitStruct); HAL_GPIO_WritePin(GPIOB, GPIO_PIN_0|GPIO_PIN_1, GPIO_PIN_RESET);
void Error_Handler(void) { __disable_irq(); while(1) { } }  

5. Video Demo [Kembali]


 

6. Kondisi [Kembali]

Percobaan 3 Kondisi 3

 Buatlah rangkaian seperti pada gambar percobaan 3 dengan kondisi ketika Infrared sensor tidak mendeteksi benda dan sensor Touch  mendeteksi sentuhan, maka LED akan menyala

7. Video Simulasi [Kembali]




8. Download File [Kembali]

Komentar

Postingan populer dari blog ini

Modul 2 Transistor

Modul 3 OP AMP