본문 바로가기

프로그래밍

C# 시리얼통신을 뚫어보자(송신/수신, SerialPort, ReceiveData, Invoke) C# 시리얼통신을 뚫어보자(송신/수신, SerialPort, ReceiveData, Invoke) PC와 외부 장치를 연결하기 위해 GUI를 만드는 중에 시리얼통신 수신 부분이 막혀서 인터넷을 검색하고 검색하여 이해한 내용을 정리하려고 한다. 위와 같이 시리얼통신을 위한 폼을 하나 만들었다. COM 포트를 설정할 수 있는 콤보박스. 연결 버튼, 해제 버튼, 상태표시 레이블. 수신창. 송신창, 보내기 버튼. serialPort1 컨트롤. 중요한 부분들을 하나씩 살펴보자. 1. using System.IO.Ports; 를 추가해준다. using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; us..
c# 기초강좌 - LAYER6AI C# 기초강좌 - LAYER6AI C# 강좌 1편. 시작 C# 강좌 2편. Hello, world! C# 강좌 3편. 변수, 데이터 형식, 상수 C# 강좌 4편. 연산자(Operators) C# 강좌 5편. 조건문(if, else, switch) C# 강좌 6편. 반복문(while, do, for, foreach) C# 강좌 7편. 무한 루프, 제어문(continue, break, goto) C# 강좌 8편. 메소드(Method) C# 강좌 9편. 배열(Array) C# 강좌 10편. 클래스(Class) C# 강좌 11편. 접근 제한자(Access Modifier), this C# 강좌 12편. 생성자와 소멸자(Constructor and Destructor) C# 강좌 13편. 클래스의 상속(Class..
C# 기초강좌 - YUN DAE HEE C# 기초강좌 - YUN DAE HEE C# 강좌 : 제 1강 - 소개 및 설치 C# 강좌 : 제 2강 - 프로젝트 생성 C# 강좌 : 제 3강 - 프로젝트 구성 C# 강좌 : 제 4강 - ComboBox & ListBox C# 강좌 : 제 5강 - RadioButton & CheckBox C# 강좌 : 제 6강 - PictureBox & Graphics C# 강좌 : 제 7강 - SaveFileDialog & OpenFileDialog C# 강좌 : 제 8강 - Timer C# 강좌 : 제 9강 - 데이터 형식 C# 강좌 : 제 10강 - 분기문 C# 강좌 : 제 11강 - 반복문 C# 강좌 : 제 12강 - 점프문 C# 강좌 : 제 13강 - 클래스 & 메소드 (1) C# 강좌 : 제 14강 - 클래..
비주얼베이직.net - Delegate란? 비주얼베이직.net - Delegate란? Delegate 의 사전적 의미는 '권한을 위임하다' 라는 뜻이다. 그렇다면 VisualBasic.net에서는 어떻게 쓰이는지 쉽게(우선 대충) 알아보자. 참고로 C언어에서의 포인터 개념을 알면 좀 더 쉽게 이해할 수 있을 것이다. 그렇지 않더라도 어렵지 않다. . . 그림과 같은 간단한 프로그램이 있다. Button1을 클릭하면 Text창에 "Button1을 클릭하셨네요."가 뜬다. 다음으로 다음 동작을 위해 Text창을 비운다. 오른쪽 Button2 델리게이트 실행 버튼을 누르면 Button1을 누른 것과 똑같이 Text창에 "Button1을 클릭하셨네요."가 뜬다. Button2가 직접 문장을 출력하지 않고 중간에 대리자를 세워 Button1 더러 대신 하..
C언어 포인터 - 역사상 가장 쉬운 설명 C언어 포인터 - 역사상 가장 쉬운 설명 맨 밑에 이야기가 하나 있다. 심심하면 먼저 읽어도 좋다.만화라면 더 좋을 것 같다. 그래도 좀 더 이해를 도울 수 있을 거라 생각된다. Q: 포인터(Pointer) 영어 뜻이 뭐냐?A: 가리키는 것. Q: 포인터는 왜 쓰냐?A: 필요하니까 쓴다. 메모리를 효율적으로 사용할 수 있게 된다고 한다. 다른 이유들도 있을 것 같다. 그러니 우선은 다음으로 넘어가자. 보통은 '특정 데이터가 저장된 메모리의 주소를 저장하는 변수'라고 정의하는 것 같은데 다른 말로 바꾸면 1. 어떤 변수이름에 '*'가 붙으면,2. 주소가 전혀 다른 변수로 넘어가서,3. 거기에 있는 값을 지지고 볶을 수 있다. 라고 해도 되지않을까 싶다. 두가지를 기억하자. '*'는 포인터를 만들 때 필요하..
비주얼베이직.net - Serial 통신 GUI 공부하기 좋은 강좌 - 땜쓰 전자연구소 비주얼베이직.net - Serial 통신 GUI 공부하기 좋은 강좌 - 땜쓰 전자연구소 Visual Basic(비주얼 베이직) Serial 통신 GUI 프로그래밍 1강 - 프로그램 기초 설계 Visual Basic(비주얼 베이직) Serial 통신 GUI 프로그래밍 2강 - 시리얼 통신 설정 기능추가 Visual Basic(비주얼 베이직) Serial 통신 GUI 프로그래밍 3강 - 프로그램 로그창 및 기타 기능 추가 Visual Basic(비주얼 베이직) Serial 통신 GUI 프로그래밍 4강 - 시리얼 통신 명령 송신기능 추가 Visual Basic(비주얼 베이직) Serial 통신 GUI 프로그래밍 5강 - 프로그램 화면 꾸미기와 팁 Visual Basic(비주얼 베이직) Serial 통신 GUI..
비주얼베이직.net - 기초 공부하기 좋은 강좌 - 땜쓰 전자연구소 비주얼베이직.net - 기초 공부하기 좋은 강좌 - 땜쓰 전자연구소 Visual Basic(비주얼 베이직) 2015 1강 - Visual Basic의 개요 Visual Basic(비주얼 베이직) 2015 2강 - Visual Basic 프로그래밍의 시작 Visual Basic(비주얼 베이직) 2015 3강 - 윈도우 기본 폼 컨트롤(1) Visual Basic(비주얼 베이직) 2015 4강 - 윈도우 기본 폼 컨트롤(2) Visual Basic(비주얼 베이직) 2015 5강 - 윈도우 기본 폼 컨트롤(3) Visual Basic(비주얼 베이직) 2015 6강 - 변수와 데이터타입 Visual Basic(비주얼 베이직) 2015 7강 - 연산자(1) Visual Basic(비주얼 베이직) 2015 8강 -..
MODBUS - Huanyang HY01D523B VFD, RS485 MODBUS Protocol, RTU Mode Huanyang HY01D523B VFD, RS485 MODBUS Protocol, RTU Mode Format RTU mode all data : Hex 01. Function Read (Last 2 bytes are CRC value) TX: 04 01 03 01 00 00 6D DB --- PD001 : Source of run Commands RX: 04 01 02 01 02 F5 AD --- 02 -> Communication port TX: 04 01 03 02 00 00 9D DB --- PD002 : Source of Operationg Frequency RX: 04 01 02 02 02 F5 5D --- 02 -> Communication port TX: 04 01 03 03 00 00 ..