這段時間調了一下nrf52840驅動gt5663電容觸控晶元的程式(真的無語,手冊講的含含糊糊,最後去linux核心裡面把程式摳出來用的)。
有幾個小坑記錄一下。
0x814e第7位為1的時候,就要讀取觸控資料,之後向0x814e寫入0(必須寫,而且寫之前必須讀觸控資料)。
0x814e第3-0位表示按下按鍵數量,利用這裡判斷是否真正按下。
配置資訊校驗和演算法很奇怪,我是直接使用linux核心裡面的程式(手冊沒講)。
不過奇怪的是,每次我寫入暫存器之然後重新整理之後,暫存器的值就會復原???原因未知。uint16_t checksum = 0;
for (uint8_t i = 0; i < 239 - 3; i += 2)
checksum = 0 - checksum;
data[239 - 3] = (checksum >> 8) & 0xff;
data[239 - 2] = checksum & 0xff;
IntelliJ IDEA 除錯小記
一 intellij idea 除錯沒有f6 eclipse除錯有f6,意為下一步,遞增f8。可intellij idea 除錯沒有這個。二 step over f8 下一步 相當於eclipse的f6 step into f7 跳進 相當於eclipse的f5 跳進子方法。force step i...
IntelliJ IDEA 除錯小記
一 intellij idea 除錯沒有f6 eclipse除錯有f6,意為下一步,遞增f8。可intellij idea 除錯沒有這個。二 step over f8 下一步 相當於eclipse的f6 step into f7 跳進 相當於eclipse的f5 跳進子方法。force step i...
gdb除錯學習小記
由於最近搞了一發sublime text的使用,然後發現這東西只能當編譯器,不能用來除錯 於是便去學了一發gdb的除錯方法。然後發現報錯了?仔細一看,原來是pascal的gdb把c 的gdb覆蓋掉了233 怎麼那麼相似呢 機房渣渣win7 32bit mingw file 檔名 開始除錯這個檔案 r...