2023/11 4

아두이노를 이용해서 릴레이제어하기

안녕하세요. 오늘은 아두이노 나노를 이용해서 릴레이를 제어해보겠습니다. 윈도우프로그램은 C#으로 만들었고 MCU는 아두이노 나노를 사용합니다. 둘이 통신은 UART로 합니다. 사용하는 릴레이는 무접점릴레이입니다. (PDDO-105N) *회로구성 아두이노나노, 버튼, 릴레이, OLED(SSD1306)로 구성했습니다. OLED는 MCU에 저장해있는 데이터, 동작상태등을 보여줍니다. ON, OFF, CYCLE데이터를 EEPROM에 저장해서 PC프로그램과 통신을 안해도 정해둔 데이터를 저장해서 전원만 넣으면 버튼으로 START할수있게 만들었습니다. 버튼 : D2 릴레이 : D3 OLED SCL : A5 OLED SDA : A4 *프로그램동작 UART통신을 위한 연결UI가 존재하고, 컨트롤창이 존재합니다. 프로그..

아두이노/활용 2023.11.26

아두이노 우노 EEPROM 사용하기

안녕하세요. 오늘은 아두이노 우노에있는 EEPROM 기능을 사용해보겠습니다 EEPROM이란 Electrically Erasable Programmable Read-Only Memory의 약자로 비휘발성 데이터를 의미합니다 아두이노 우노는 일반적으로 ATMEGA32를 사용하므로 데이터시트를보면 EEPROM은 1024Bytes의 크기를 가지고있고 100,000번 write/erase 사용가능합니다. 제조사가 제시한 횟수를 초과하면 데이터 손실이 있을 수 있습니다 EEPROM라이브러리를 사용하면 매우쉽게 사용이 가능합니다. * Write하기 EEPROM.write(address,value) address는 0~1023까지 가능하고 value에는 1byte 값을 적으면 됩니다 *Read하기 EEPROM.read..

아두이노/이론 2023.11.26

STM32 GPIO제어하기 INPUT MODE

안녕하세요. 오늘은 NUCLEO-F103RB 보드로 HAL라이브러리를 사용하여 GPIO READ를 제어해보겠습니다. 먼저 사용할핀을 INPUT 설정하겠습니다 PC12는 회로도상 아무것도 연결해있지않고 풀업설정을 하지않고 테스트해보겠습니다 /* USER CODE BEGIN WHILE */ while (1) { if(HAL_GPIO_ReadPin(GPIOC, GPIO_PIN_12)) { HAL_GPIO_WritePin(GPIOA,GPIO_PIN_5,1); // LED ON } else { HAL_GPIO_WritePin(GPIOA,GPIO_PIN_5,0); // LED OFF } /* USER CODE END WHILE */ /* USER CODE BEGIN 3 */ } PC12의 상태에따라서 PA5번핀의 ..

STM32/이론 2023.11.18

리눅스 명령어

안녕하세요. 오늘은 리눅스에서 사용하는 명령어를 알아보겠습니다 1.디렉토리 내용 출력하기 ls (list) 디렉토리에 있는 내용을 출력해줍니다 ls -l 파일을 자세히 보여줍니다 ls -t 수정시간 최신순으로 보여줍니다 ls -rt 수정시간 느린순으로 보여줍니다 ls -r : 파일을 알파벳 역순으로 출력해줍니다 ls -S : 파일의 크기가 큰거부터 출력해줍니다 2.디렉토리 이동하기 cd(change directory) 디렉토리를 이용할때 사용하는 명령어입니다. ls로 현재디렉토리의 폴더명을 확인하고 cd로 디렉토리를 이동하면 됩니다 cd : 자신의 홈 디렉토리로 이동하기 cd / 최상위 디렉토리로 이동하기 cd . 현재 디렉토리로 이동하기 cd .. 상위 디렉토리로 이동하기 cd - 이동하기직전의 디렉토..