Trending News
Promoted
C# 讀取RFID?
目前有1-10號的標籤!
現在我要放在RFID上讀取~!
要求:如果我取出1-3號標籤~就出現錯誤訊息出來讓我知道~!其他標籤則沒事情發生繼續讀取~!
要用C語言寫出來~!
我想了老半天~!就是想不出來~!該用什麼函數來判別他是否沒讀取到標籤然後出現錯誤訊息~!
能麻煩跟我解說要用"哪個函數"比較恰當和"寫出程式"~!
1 Answer
Rating
- 1 decade agoFavorite Answer
int read_str(int fd, int sec_n)
{
//請參考linux程式設計手冊 P15-30 ~ P15-31
int result,nread;
struct timeval timeout;//select timeout資料結構
fd_set inputs;//select 的設定變數
FD_ZERO(&inputs);//將初始FD_SET設為空集合
FD_SET(fd,&inputs);//設定RS-232檔案描述子給select的變數位址
timeout.tv_sec=sec_n;
timeout.tv_usec=50000;//Wait time set 0.05 sec
result = select(FD_SETSIZE, &inputs, (fd_set *)0, (fd_set *)0, &timeout);
if (result == 0) return -1;
nread=read(fd,str_buf,sizeof(str_buf));
str_buf[nread]=0;
return nread;
}
利用此select讓讀取裝置時可以設定timeout
Still have questions? Get your answers by asking now.