일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- CDG
- ION Gauge
- 설비제어
- 드라이에쳐
- 자동제어
- hivac
- PMAC
- REGULATOR
- RS232
- rs-485
- Gas box
- Dry etcher
- rs-232
- pressure
- Polling
- 폴링
- 시리얼통신
- c# build date
- MODBUS
- melsec
- gauge
- 가스
- 레귤레이터
- Helium
- DATAGRIDVIEW
- pc제어
- MelsecNet-G
- HI-Vacuum
- VACUUM
- cluster
- Today
- Total
목록RS232 (2)
진공에 대해 알려주마.
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cyBzYE/btrsXsah5dy/c2Bz4KgYavnRrGDs2MY0i1/img.png)
RS-232 통신을 하면서 간혹 TTL 관련하여 문제가 발생하였다. 장치 중 하나가 TTL 레벨의 통신을 한다. 이참에 막연히 알고 있던 TTL에 관하여 찾아보았다. PC에서 RS-232를 이용하여 하는 경우 Tx, Rx, GND 세 개의 케이블을 이용하여 장치와 연결하고 통신을 하게 된다. 보통 RS-232는 12 Volt 레벨의 전압을 이용하여 지정된 시간의 간격마다 voltage의 차이를 두어 이를 0과 1로 표시하게 된다. 0과 1의 조합으로 ASCII Code에 정의된 문자를 전송하면 같은 방식으로 원하는 값을 회신하게 된다. RS-232와 TTL(Transistor Transistor Logic)은 같은 통신 방식을 사용한다. 단지 0, 1을 구분하는 Voltage level이 다르다는 것이다..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/ryDuH/btrgHEmlGRa/anEk1xiKRXKHhOII3zl9Ck/img.jpg)
C#에는 serial port의 수신 버퍼의 값을 읽어오는 여러 가지 방법이 있다. 아래 두 개의 함수가 그것들인데 Read 함수를 사용하던 중 문제가 발생하여 원인을 해결하고자 찾아본 내용이다. .Read() https://docs.microsoft.com/ko-kr/dotnet/api/system.io.ports.serialport.read?view=dotnet-plat-ext-5.0 .ReadExisting() https://docs.microsoft.com/ko-kr/dotnet/api/system.io.ports.serialport.readexisting?view=dotnet-plat-ext-5.0 처음에는 read() 함수를 사용하였으나 회신된 내용이 앞쪽 일부만 보여지는 문제가 발생하였다. ..