CH551G 模擬成HID在不拔USB設(shè)備的情況下, 如何從HID設(shè)備轉(zhuǎn)換到USB MODULE

CH551G 已經(jīng)成功模擬成HID鍵盤(pán)?


如果要用USB升級(jí), 要求免按鍵.也就是 從用戶(hù)程序跳轉(zhuǎn)到?BOOT_ADDR

但是跳轉(zhuǎn)以后, 設(shè)備管理器里面還是顯示的是HID設(shè)備,? ISP TOOL 也不能查找到 CH551-1

重新上電又自動(dòng)識(shí)別為HID設(shè)備,?

那么,? 如何在不拔USB設(shè)備的情況下, 從HID設(shè)備轉(zhuǎn)換到USB MODULE 實(shí)現(xiàn)在線ISP升級(jí)呢?

現(xiàn)在用先中斷USB,再重新初化設(shè)備描述成 USB_MODULE, 重載USB中斷里面的函數(shù), 等5秒左右,可以成功轉(zhuǎn)到BOOT_ADDR,ISP TOOL 也能查找到 CH551-1了. .?

就是代碼量有點(diǎn)大了, 空間怕多了有點(diǎn)吃不消,? ?不知道有沒(méi)有更高效簡(jiǎn)潔的方法,?


你好,關(guān)于跳轉(zhuǎn)到BOOT區(qū)可以參考我們CH554EVT中的IAP程序,通過(guò)檢測(cè)引腳電平變化進(jìn)入boot區(qū)。


簡(jiǎn)單的代碼就是跳轉(zhuǎn)IAP前,USBDEV_CTL=0,關(guān)閉USB功能,相當(dāng)于軟件斷開(kāi)連接;

延時(shí)1S,(時(shí)間大于200ms)都可以,然后再跳轉(zhuǎn)IAP。

??USBDEV_CTL=0;

? EA = 0;??????????????????????????????????????????????????????????????????? //關(guān)閉總中斷,必加
?tasksArr[0] = BOOT_ADDR;
? mDelaymS( 100 ); ????
? (tasksArr[0])( );????????????????????????????????????????????????????????? //跳至BOOT升級(jí)程序,使用ISP工具升級(jí)?


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

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