==================================Outline====================================
Dos Serial 통신
----------------------------------------------------------------------------
Dos Serial 통신
Non-canonical Mode를 사용하여 배열에 있는 데이터를 출력해보자.
**VMware를 재부팅 후 데이터를 보내니 잘되었다. 이유는 알 수 없다.
VMware 탓인지 리눅스 탓인지 알 수 없으나, linux 환경에서는 리더기와의 통신이 되지 않았다.
도스환경에서 시리얼 통신을 해보자.
시리얼 통신을 위해 사용해야 하는 함수는 아래와 같다.
1. CreatFile
2. SetupComm
3. PurgeComm
4. GetCommState
5. WriteFile
6. ReadFile
7. CloseHandle
1. CreateFile
HANDLE WINAPI CreateFile(
_In_ LPCTSTR lpFileName,
_In_ DWORD dwDesiredAccess,
_In_ DWORD dwShareMode,
_In_opt_ LPSECURITY_ATTRIBUTES lpSecurityAttributes,
_In_ DWORD dwCreationDisposition,
_In_ DWORD dwFlagsAndAttributes,
_In_opt_ HANDLE hTemplateFile
);
각 인자에 대한 설명 - https://msdn.microsoft.com/en-us/library/windows/desktop/aa363858(v=vs.85).aspx
2. SetupComm
BOOL WINAPI SetupComm(
_In_ HANDLE hFile,
_In_ DWORD dwInQueue,
_In_ DWORD dwOutQueue
);
각 인자에 대한 설명 - https://msdn.microsoft.com/ko-kr/library/windows/desktop/aa363439(v=vs.85).aspx
3. PurgeComm
BOOL WINAPI PurgeComm(
_In_ HANDLE hFile,
_In_ DWORD dwFlags
);
각 인자에 대한 설명 - https://msdn.microsoft.com/ko-kr/library/windows/desktop/aa363428(v=vs.85).aspx
4. GetCommState
BOOL WINAPI GetCommState(
_In_ HANDLE hFile,
_Inout_ LPDCB lpDCB
);
각 인자에 대한 설명 - https://msdn.microsoft.com/ko-kr/library/windows/desktop/aa363260(v=vs.85).aspx
5. WriteFile
BOOL WINAPI WriteFile(
_In_ HANDLE hFile,
_In_ LPCVOID lpBuffer,
_In_ DWORD nNumberOfBytesToWrite,
_Out_opt_ LPDWORD lpNumberOfBytesWritten,
_Inout_opt_ LPOVERLAPPED lpOverlapped
);
각 인자에 대한 설명 - https://msdn.microsoft.com/en-us/library/windows/desktop/aa365747(v=vs.85).aspx
6. ReadFile
BOOL WINAPI ReadFile(
_In_ HANDLE hFile,
_Out_ LPVOID lpBuffer,
_In_ DWORD nNumberOfBytesToRead,
_Out_opt_ LPDWORD lpNumberOfBytesRead,
_Inout_opt_ LPOVERLAPPED lpOverlapped
);
각 인자에 대한 설명 - https://msdn.microsoft.com/en-us/library/windows/desktop/aa365467(v=vs.85).aspx
7. CloseHandle
BOOL WINAPI CloseHandle(
_In_ HANDLE hObject
);
각 인자에 대한 설명 - https://msdn.microsoft.com/ko-kr/library/windows/desktop/ms724211(v=vs.85).aspx
장비가 없음으로 내 곁에 있는 ComPortMaster와 통신하자.
RFID 리더기와 통신하면 6byte를 수신하게 된다.
CRC 값을 함수를 써서 계산하자.
데이터시트를 참조하여 reader기의 동작 옵션을 바꿔보자.
PDF p/22
'코스웨어 > 15년 스마트컨트롤러' 카테고리의 다른 글
20151209_[안향진]_RFID_2 (5) | 2015.12.09 |
---|---|
20151209-김재홍-Serial_3일차-RFID_도스 (3) | 2015.12.09 |
20151209 업무일지 -여지윤- RFID(Dos) (3) | 2015.12.09 |
20151209 - 홍준모 3일차 오전 : 가상 리눅스 RFID 시리얼 통신(실패), 오후 : 도스 RFID 시리얼 통신(성공) (4) | 2015.12.09 |
20151209 수업 / RFID_2-남수진 (4) | 2015.12.09 |
20151208 - 홍준모 : 리눅스 윈도우 시리얼 통신 2일 차 (2) | 2015.12.09 |
20151208 - 강동조 개인업무일지 (3) | 2015.12.09 |
20151208 임현수 업무일지 RF통신이론, 코드작성 (3) | 2015.12.09 |