多張CH365 PCI板卡IO訪(fǎng)問(wèn)問(wèn)題。

在我的應(yīng)用中,之前一直通過(guò)轉(zhuǎn)換ISA卡的方式來(lái)處理多張卡,但是有個(gè)比較麻煩的事情,就是產(chǎn)品量產(chǎn)的時(shí)候,裝機(jī)時(shí),生產(chǎn)工人要么就忘記了地址撥碼,要么就將不同地址撥碼的卡的位置按轉(zhuǎn)反了,到了客戶(hù)那邊經(jīng)常出現(xiàn)異常情況,非常麻煩。 再重溫CH365的資料時(shí),發(fā)現(xiàn)可以自動(dòng)識(shí)別多張卡。于是進(jìn)入測(cè)試中。 1、 通過(guò)HANDLE WINAPI CH365mOpenDevice( // 打開(kāi)CH365設(shè)備,返回句柄,出錯(cuò)則無(wú)效 ULONG iIndex, // 指定CH365設(shè)備序號(hào),0對(duì)應(yīng)第一個(gè)設(shè)備 BOOL iEnableMemory, // 是否需要支持存儲(chǔ)器 BOOL iEnableInterrupt ); // 是否需要支持中斷 此函數(shù)可以打開(kāi)0、1兩個(gè)CH365設(shè)備,(這一步正常); 2、 通過(guò)BOOL WINAPI CH365mGetIoBaseAddr( // 獲取I/O端口的基址 ULONG iIndex, // 指定CH365設(shè)備序號(hào) mPCH365_IO_REG *oIoBaseAddr ); // 保存I/O端口基址的單元地址 此函數(shù)可以獲取0、1兩個(gè)設(shè)備的IO基地址分別為0xd100,0xd000,(這一步也正常) 3、 通過(guò)BOOL WINAPI CH365mWriteIoByte( // 向I/O端口寫(xiě)入一個(gè)字節(jié) ULONG iIndex, // 指定CH365設(shè)備序號(hào) PVOID iAddr, // 指定I/O端口的地址 UCHAR iByte ); // 待寫(xiě)入的字節(jié)數(shù)據(jù) 和BOOL WINAPI CH365mReadIoByte( // 從I/O端口讀取一個(gè)字節(jié) ULONG iIndex, // 指定CH365設(shè)備序號(hào) PVOID iAddr, // 指定I/O端口的地址 PUCHAR oByte );// 指向一個(gè)字節(jié)單元,用于保存讀取的字節(jié)數(shù)據(jù) 分別對(duì)0、1兩個(gè)設(shè)備進(jìn)行相同的操作時(shí),發(fā)現(xiàn)設(shè)備0的結(jié)果不正常,設(shè)備1的結(jié)果正常。

想請(qǐng)教版主:有遇到過(guò)這正問(wèn)題嗎?是我的操作步驟哪里不對(duì)嗎?

注:我檢查過(guò)好多篇,第三步中得函數(shù)調(diào)用格式形參填寫(xiě)沒(méi)有錯(cuò)誤,設(shè)備序號(hào)iIndex也制定的IO端口地址是一一對(duì)應(yīng)的。[b]文字[/b][b]分別對(duì)0、1兩個(gè)設(shè)備進(jìn)行相同的操作時(shí),發(fā)現(xiàn)設(shè)備0的結(jié)果不正常,設(shè)備1的結(jié)果正常。[/b]分別對(duì)0、1兩個(gè)設(shè)備進(jìn)行相同的操作時(shí),發(fā)現(xiàn)設(shè)備0的結(jié)果不正常,設(shè)備1的結(jié)果正常。

已經(jīng)通過(guò)郵件處理。


遇到同樣的問(wèn)題,求解決方法。


只有登錄才能回復(fù),可以選擇微信賬號(hào)登錄

国产91精品新入口,国产成人综合网在线播放,九热这里只有精品,本道在线观看,美女视频a美女视频,韩国美女激情视频,日本美女pvp视频