코딩/STM32(7)
-
[STM32] 자동급수화분 동영상
개요 STM32 사용 I2C를 이용하여 LCD통신 UART를 이용하여 PC command, BLUETOOTH command 구현 습도 프로브 의 측정 값을 이용하여 펌프제어 조도센서와 PWM을 비례제어 하여 LED 조절 조도에 따른 PWM조절 ㅖ 조도센서 에 따른 LED 변화 BLUETOOTH 커맨드 동작영상 PC 커맨드 동작영상 프로브 값에 따른 펌프동작 DHT11 LCD 표기
2021.12.02 -
[STM32] Elevator project 동작 동영상
1F->2F 2F->3F 1F->3F 3F->2F 2F->1F 3F->1F 온,습도표기, 모터를 이용한 문 열림,닫힘 등 구현할만한 기능은 여럿 있었습니다. 아쉽게도 시간이 부족하여 기본적인 층계 이동만 구현하였습니다. 다음에 시간이 있다면 기능을 좀더 추가해보고 싶습니다.
2021.11.09 -
[STM32]내부RTC Get/Set 동작
#include "main.h" RTC_TimeTypeDef sTime = {0}; RTC_DateTypeDef sDate = {0}; extern RTC_HandleTypeDef hrtc; // ex) 21 // high nibble low nibble // 0010 0001 // *10 *1 //20 + 1 // 21 uint8_t B2D(unsigned char byte) { unsigned char high, low; low = byte & 0x0f;// low nibble high = ((byte >> 4) & 0x0f) * 10;// high nibble return high + low; } uint8_t D2B(unsigned char byte) // Binary to Decimal { re..
2021.11.09 -
[STM32] Stepmotor FOR/BACKWARD/STOP+PC command
MAIN.c void stepmotor_main() { switch (runstate) { case IDLE : stepmotor_half_drive(IDLE); if (getButtonState(BUTTON1_GPIO_Port, BUTTON1_Pin, &prevButton1State)) { direction_state = FORWARD; } else if (getButtonState(BUTTON2_GPIO_Port, BUTTON2_Pin, &prevButton2State)) { direction_state = BACKWARD; } else if (getButtonState(BUTTON3_GPIO_Port, BUTTON3_Pin, &prevButton3State)) { runstate = START; }..
2021.11.09 -
[STM32] photo coupler LED 점등
void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin) { static i = 0; switch(GPIO_Pin) { case GPIO_PIN_0: HAL_GPIO_WritePin(GPIOB, GPIO_PIN_0|GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_3|GPIO_PIN_4|GPIO_PIN_5|GPIO_PIN_6|GPIO_PIN_7, GPIO_PIN_RESET); i %= 8; //printf("LED : %d\n",i); HAL_GPIO_WritePin(GPIOB, 0x01
2021.11.09 -
[STM32] 8cm 초음파 센서 줄자 / 온도계
ultrasonic.c #include "main.h" #include "led_onoff.h" #include #include #include #define TRIG_PORT GPIOC #define TRIG_PIN GPIO_PIN_5 extern volatile int TIM11_10ms_LED_counter; extern volatile int TIM11_10ms_ultrasonic_counter; uint32_t distance=0;//거리 uint8_t ic_cpt_flag=0;//rising edge/falling edge를 detect하는 flag변수 //rising edge/falling edge INT가 발생시 이쪽으로 침입 uint8_t led_flag = 0; void HAL_TIM_..
2021.11.09