free性丰满hd毛多多,久久综合给合久久狠狠狠97色69 ,欧美成人乱码一区二区三区,国产美女久久久亚洲综合,7777久久亚洲中文字幕

0
問答首頁 最新問題 熱門問題 等待回答標(biāo)簽廣場(chǎng)
我要提問

單片機(jī)

單片機(jī)只有串口,怎么樣才能使用HID協(xié)議

單片機(jī)只有串口,希望使用HID協(xié)議使用鼠標(biāo)做到絕對(duì)坐標(biāo)定位.求詳細(xì)一點(diǎn)的解答~~感激不盡啊

提問者:yweyrwyds 地點(diǎn):- 瀏覽次數(shù):2996 提問時(shí)間:10-17 14:07
我有更好的答案
提 交
1條回答
上海鼎廷 10-17 14:07

串口的協(xié)議數(shù)據(jù)一般包括 幀頭+地址+功能碼+校驗(yàn)碼+數(shù)據(jù)+幀尾 等組成。

第一種:超時(shí)判斷,思路就是每在接收到串口數(shù)據(jù),進(jìn)入接收中斷后,保存數(shù)據(jù),并賦值一個(gè)變量,然后該變量的值在定時(shí)器里面自減,若自減到零說明對(duì)方數(shù)據(jù)傳送完成,由此可判斷接收完成,下一步就是在主程序里處理串口數(shù)據(jù)了。
這種辦法現(xiàn)在基本不使用。

第二種:在接收中斷里逐級(jí)判斷,只有一級(jí)一級(jí)的數(shù)據(jù)判斷正確,才進(jìn)行接收,最后再判斷校驗(yàn)碼和幀尾,只有整個(gè)過程的數(shù)據(jù)都正確,才能確定數(shù)據(jù)接收完成,此時(shí)置位一個(gè)標(biāo)志位,在主程序里處理通過此標(biāo)志位執(zhí)行相應(yīng)程序。
現(xiàn)在我一直用的就是這種方法,但這種方法很容易有一種限制,就是只能一幀一幀的處理數(shù)據(jù),就是說對(duì)方發(fā)了一幀數(shù)據(jù)后,下一幀數(shù)據(jù)要間隔一段時(shí)間(如10MS)再發(fā)送,如果兩幀或以上的數(shù)據(jù)一起發(fā)送,第二種處理方法就會(huì)產(chǎn)生錯(cuò)誤。

第三種:我也是聽人說過,就是可以解決第二種只能一幀一幀接收數(shù)據(jù)的問題,具體的實(shí)現(xiàn)思路我也不清楚,只能分別簡(jiǎn)單描述一下,第三種方法也是我上來發(fā)帖請(qǐng)教的目的。
這種處理方法就是開辟一個(gè)相對(duì)較大的數(shù)組用于存放接收到的數(shù)據(jù),接收程序只管接收數(shù)據(jù),若接收到的數(shù)據(jù)到達(dá)數(shù)組尾端,下一個(gè)接收到的數(shù)據(jù)又會(huì)從數(shù)組頭開始存放,即會(huì)把之前存放的數(shù)據(jù)覆蓋掉。 
在主程序里,不斷掃描數(shù)組里面存放的數(shù)據(jù),搜索里面的功能協(xié)議,每一條協(xié)議都要從數(shù)組里搜索一遍,每次循環(huán)都要這樣做。我的疑問是懷疑自己理解錯(cuò)了,要是這樣的話,單單搜索協(xié)議都要耗費(fèi)大量的CPU時(shí)間,貌似不太現(xiàn)實(shí)。
撰寫答案
提 交
1 / 3
1 / 3
相關(guān)單片機(jī)
具有音調(diào)控制的單片機(jī)立體聲前置放大器
用于單片機(jī)與電子裝置中的開關(guān)電源
單片機(jī)軟硬件復(fù)位的條件都有啥
電動(dòng)機(jī)的單片機(jī)控制
單片機(jī)應(yīng)用系統(tǒng)開發(fā)實(shí)例導(dǎo)航