본문 바로가기

개발환경

(17)
(예제) Node-RED의 root directory를 지정하여 이미지 파일을 불러오기 1. 개요 컴퓨터의 Directory를 Node-RED에서 사용하는 root directory로 지정하고, 그 root directory에 저장된 이미지를 불러와 서버에 보내주는 예제를 진행하려고 한다. 2. 진행과정 1) Node-RED 환경 설정 아래의 링크를 참고하여 Node-RED 개발 환경을 설정한다. https://powerdeng.tistory.com/235 Node-RED와 개발 환경 설정 Node-RED란? 시각화 도구 중 하나로 이벤트 기반 애플리케이션을 위한 로우 코드 프로그램 환경이다. 시각화 도구답게 메시지가 애플리케이션을 통과하는 방식을 시각적으로 보여주는 장점을 지 powerdeng.tistory.com 2) User directory 확인 cmd창에 node-red를 입력하면..
(예제)웹 서버의 특정 경로에 접속하는 경우 메시지 출력하기 1. 개요 1) Web Client가 로컬 호스트일 경우 2) Web Client가 로컬 호스트가 아닐 경우 192.168.2.197의 1880포트를 사용하는 Node-RED 웹 서버가 열리면, Web browser(크롬)로 그 웹 서버의 경로 중 /powerdeng에 접속을 요청한다. 그러면 서버에서 "안녕하세요 powerdeng입니다."라는 메시지를 응답으로 보내주도록 서버를 Node-RED로 만드는 예제를 진행하려고 한다. 마지막으로 그 결과를 Web Client가 로컬 호스트일 경우와 아닌 경우로 나누어, 각각 PC와 핸드폰에서 접속하여 비교한다. ※ 로컬 호스트: 컴퓨터 네트워크에서 사용하는 루프백 주소로, 자신의 컴퓨터를 의미한다. ※ Web browser: Web server에 접속할 수 있..
Node-RED와 개발 환경 설정 Node-RED란? 시각화 도구 중 하나로 이벤트 기반 애플리케이션을 위한 로우 코드 프로그램 환경이다. 시각화 도구답게 메시지가 애플리케이션을 통과하는 방식을 시각적으로 보여주는 장점을 지니고 있다. ▷ Node-RED는 최소한의 코드로 프로그램을 만들 수 있는 개발 환경이다. ※ 로우 코드 로우코드 개발은 기존의 코드 우선 개발 방식이 아닌 적은 코딩으로 소프트웨어 애플리케이션을 만드는 방식입니다. 로우코드 플랫폼은 시각적 도구, 끌어서 놓기 기능, 자동화를 통해 앱을 만듭니다. 로우코드 개발은 일반적으로 기존 개발보다 더 빠르고 간편하며, 전문 개발자뿐만 아니라 기본 코딩 경험이 있는 사람도 로우코드 도구를 사용하여 앱을 만들 수 있습니다. 개발 환경 설정 1. Node.js 다운로드 아래의 링크에..
아두이노 1대 N - RS485 통신 테스트 Arduino Uno, MAX485 TTL to RS-485 컨버터 모듈을 사용하였고, 개발 환경은 Arduino IDE 2.2.1 입니다. 구상도 송수신 과정 1번: Master "A LED ON"을 전송한다. 2번: Slave A/B가 "A LED ON"을 수신받는다. 그리고 Slave A는 LED를 켠다. 3번: Slave A가 "A LED ON"을 전송한다. 그리고 Master는 LED(A 상태)를 킨다. 4번: Master가 "B LED ON"을 전송한다. 5번: Slave A/B가 "B LED ON"을 수신받는다. 그리고 Slave B는 LED를 켠다. 6번: Slave B가 "B LED ON"을 전송한다. 그리고 Master는 LED(B 상태)를 킨다. 7번: Master가 "A LED OF..
Timer Interrupt 설정 - ATSAMD21G18A MCU는 ATSAMD21G18A을 사용하였고 관련 데이터 시트는 아래 첨부했습니다. 코드 분석 void Timer_Init() { /** Divide the 48MHz clock source by divisor 6: 48MHz/6=8MHz, Select Generic Clock (GCLK) 4 */ GCLK->GENDIV.reg = GCLK_GENDIV_DIV(6) | GCLK_GENDIV_ID(4); while (GCLK->STATUS.bit.SYNCBUSY); /** Set the duty cycle to 50/50 HIGH/LOW, Enable GCLK4, Set the 48MHz clock source, Select GCLK4 */ GCLK->GENCTRL.reg = GCLK_GENCTRL_IDC..
GPIO(스위치) 설정 - STM32F030F4P6 MCU는 STM32F030F4P6을 사용하였고 관련 데이터 시트는 아래 첨부했습니다. GPIO mode - Input mode 스위치이므로 핀을 Input mode로 설정한다. GPIO Pull-up/Pull-down – No pull-up and no pull-down/Pull-up/Pull-down 1. Floating 디지털 신호는 High(1) 또는 Low(0)이지만 실제는 그렇지 않은 경우가 많다. Floating은 0과 1이 명확하지 않게 펄럭거리는 상황을 말하며 정전기, 잡음에 의해서 오류가 생기는 것이 가능하다. 위의 그림은 Floating 상태를 보여준다. Input을 1로 받을지 0으로 받을지 모르기 때문이다. 즉, 확실한 전압차이가 나지 않아서 전류가 흐르는지 아닌지도 불명확하기 때문..
GPIO(LED) 설정 - STM32F030F4P6 MCU는 STM32F030F4P6을 사용하였고 관련 데이터 시트는 아래 첨부했습니다. GPIO output level - Low/High GPIO 내장 주변장치의 레지스터 설정의 초기화가 끝난 이후에 해당 GPIO 핀의 출력 상태를 지정할 수 있는 속성이다. 위의 회로는 GPIO 핀이 논리값 High 일 때 점등이 되고, 논리값 Low일 때 소등되는 구조로 동작한다. 만약 여기서 GPIO output level을 Low로 설정한다면, GPIO 내장 주변장치의 레지스터 설정의 초기화가 끝난 이후에 해당 GPIO 핀의 출력 상태가 Low가 되어 LED가 소등되어 있는 상태가 된다. 하지만 High로 설정한다면 해당 GPIO 핀의 출력 상태가 High이므로 LED가 점등되어 있는 상태가 된다. 정리하면, Lo..
Debug 설정 - STM32F030F4P6 MCU는 STM32F030F4P6을 사용하였고 관련 데이터 시트는 아래 첨부했습니다. 개념 - JTAG과 SWD JTAG(Joint Test Action Group)과 SWD(Serial Wire Debug)는 MCU에서 주로 활용되는 디버깅 통신 방식으로 디버깅과 플래시 프로그래밍을 가능하게 해주는 인터페이스이다. JTAG과 SWD는 서로 다른 프로토콜이며, JTAG은 여러 디바이스에 널리 사용된다는 장점이 있고 SWD는 비교적 간단한 구성을 가지고 있다는 장점이 있다. VCC와 GND 제외 필수 연결 핀은 다음과 같다. 설정 Pinout & Configuration 탭에서 SYS를 선택한다. 그리고 Mode에서 Debug Serial Wire를 체크한다. Debug Serial Wire를 체크하면 위..