匯編中怎么判斷一個IO口為高低電平?
一直循環檢測IO口狀態,檢測到起始信號邊緣(如51單片機IO口一直是高電平,當檢測到出現低電平即為啟動信號),然后利用延時程序延時0.5ms,讀取每個數據位的中間位置,判斷是0還是1。
根據你的實際要求,第一次讀取肯定是高電平,第二次讀取為低電平,你需要再判斷第三次和第四次,如果第三、四次均為低電平則為數據1,如果不是則為數據0。個人感覺你這個通信協議有點問題,需要改進。原因如下:比如順序出現高、低、低電平時已經可以判斷為1了,第四個電平是沒有作用的。還有你這個協議由于數據1傳輸結尾時低電平,因此需要以高電平作為啟動信號,而大部分單片機都是以低電平為啟動信號的。上一篇信創云是什么意思
下一篇固態硬盤讀取不出來怎么辦