[求助]CH341DLL.DLL 函數(shù) CH341MemReadAddr1卡死 BUG

第一次調(diào)用 CH341MemReadAddr1 函數(shù) 讀引腳狀態(tài), 或CH341MemWriteAddr1 寫狀態(tài), 會出現(xiàn)卡死現(xiàn)像, 無法關(guān)閉軟件, 就算任務(wù)管理器也無法終止, 必須拔掉設(shè)備才可以恢復(fù)響應(yīng) 求解決方法

測試 重現(xiàn)此BUG方法 1. 運行開發(fā)包示例程序 CH341PAR1.EXE, 并切換到 數(shù)字IO 選項卡, 選擇 地址1 2. CH341A 設(shè)備 連機 第一次, 隨即 軟件界面卡死, 無響應(yīng) 3. CH341A 設(shè)備 連機 第二次, 恢復(fù)正常了, 8位開關(guān)狀態(tài)處的, 刷新狀態(tài)按鈕可正常使用

錄像為證, 求解決.......錄像中, 選擇 地址1(代表使用 CH341MemReadAddr1 和CH341MemWriteAddr1), 隨即設(shè)備進行連機, 就會現(xiàn)軟件卡死, 具體在3樓貼子, 我做了詳細解釋 201462617122783.gif

有一個疑問,剛開始你設(shè)備不在的時候,是如何點擊刷新狀態(tài)按鈕的?


設(shè)備 一連機 軟件界面 就卡死了, 標題根本就來不急刷新為 已連機狀態(tài) 例程里的 VC++, VB, DELPHI, 全部代碼生成的程序, 都測試, 都是此現(xiàn)像

示例代碼里了, 設(shè)備一連機 就會調(diào)用 數(shù)字IO的事件. 觸發(fā)了SendLedVal過程的代碼

CH341_INT_Func的回調(diào)函數(shù) 引用的部份代碼 If (bEnable = True) Then //窗體標題顯示 Form1.Caption := 'CH341EVT **設(shè)備已插上' Else Form1.Caption := 'CH341EVT **設(shè)備已拔出';

If (bEnable = True) Then //數(shù)字I/O窗口已初始化,刷新LED,按拔碼開關(guān)狀態(tài) Begin Form1.LED1Click(Form1.LED1);//調(diào)用的LED Checkbox事件, 事件里則是調(diào)用SendLedVal過程 Form1.LED2Click(Form1.LED2); Form1.LED3Click(Form1.LED3); Form1.LED4Click(Form1.LED4); Form1.LED5Click(Form1.LED5); Form1.LED6Click(Form1.LED6); Form1.LED7Click(Form1.LED7); Form1.LED8Click(Form1.LED8); Form1.Button1Click(Form1.Button1); End;

SendLedVal里的代碼, 調(diào)用了 CH341MemWriteAddr1函數(shù), 所以就會出現(xiàn)卡死

只要設(shè)備拔掉, 重新連機, 這樣之后都不會出現(xiàn)卡死現(xiàn)像了

我反復(fù)測試

只要是第一次使用 CH341MemWriteAddr1 和 CH341MemReadAddr1 函數(shù), 就會出現(xiàn)卡死


我用EVT包下面的演示文件,無論插撥多少次,都是插上就卡死,必須撥出才能恢復(fù)。每個平臺的EXE都一樣,我是在341A最小板上試的,對比EVT電路圖,應(yīng)該不致于啊


你說的最小版是哪個板子?341A的27引腳千萬不能接地


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

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