![]() |
cxxx180 發表于 2024-6-24 09:47 你說的這個怕是一樣的結果,雖然是不需要增量信號解碼,但是一樣要芯片對開關變化進行快速響應并且送給CPU,但是實際上就是這個芯片對開關的讀取太慢了,擰的稍微快一點,就反應不過來了。而且還有一個問題,就是編碼器如果停止在兩路都斷開的位置還好,如果有一路接通,那么其他的按鍵都不能正確反應了。 |
xiaobendan001 發表于 2024-6-22 19:37 你需要的是脈沖開關例如 SRBM1L0800 |
非常遺憾,需要很慢的擰動才能有正確的解碼,沒辦法了。 此貼終結! |
哎,百度上搜到的1650的資料只能看第一頁,但是上面明顯表示是支持組合鍵的。 |
使用手上的AIP650EO研究了一下,發現一個問題,不知道TM1650是不是也這樣。 就是資料里面的NOKEY的鍵值返回0X2E只出現在上電后的狀態。當某個按鍵按下,例如0X74,再抬起時,讀到的鍵值是0X34,而并不是0X2E。測試了四個按鍵,抬起后的值都不一樣,都是高四位變化,低四位不變。這是啥情況。在它的資料里面沒有提及這個問題。 |
xiaobendan001 發表于 2024-6-17 07:35 對的,EC11要有時序的,沒有時序是不會被正確解碼的~~~ |
zhuls 發表于 2024-6-16 13:47 我覺得應該是使用四個狀態,你這只用了兩個,好像不太對。我的板子快到了,但是編碼器沒找到,本來我在10多年前有用過EC16的,可惜翻了半天,沒找到。打算下次讓他們順便帶一個回來。不知道什么時候能拿到 |
本帖最后由 zhuls 于 2024-6-16 16:24 編輯 很遺憾地告訴樓主和12#,試驗失敗了!根本沒法用!
究其原因是1650的按鍵檢測速度跟不上EC11的脈沖變化。 所以,死心吧! ![]() 不要浪費時間,不要再償試了~~ |
xiaobendan001 發表于 2024-6-15 12:34 沙發的貼圖你沒看明白么? 想法是好的,現實是殘酷的,撇開如何判斷我們不說,你要能保證 EC11的電平變化大于 40ms 才有可能正確識別,按照 高高,高低,低低,低高,這個變化為一個周期,你需要 160ms 以上完成旋轉一格,且不說,1秒最多勻速轉6格的難度大不大,使用起來是不是會覺得非常的不舒服。你就算動作超慢,2秒轉一格,你如何保證 1格的4個變化,比如 從高高=〉 高低=〉低低 每次的變化,都能被正確的捕捉到? |
coody_sz 發表于 2024-6-15 11:20 有測試過嘛?我現在就是想不明白怎樣利用讀到的鍵值進行操作得到想要的結果。 |
不可以,編碼器有相位、速度要求 |
因采樣速度太慢,不可以接編碼器 |
感覺不行或者沒啥價值,這樣的組合特別浪費CPU資源,輪詢模式,而且效果不一定好! |
hi等你 發表于 2024-6-14 16:11 我準備打樣個小板子測試一下,多多交流哦! |
完全可以的,我正準備寫1650的編碼器代碼,速度方面不用擔心,1650遠比手速快,挺實用的 四個線就能解決電源和顯示和旋轉編碼器通吃。想想都心動不已 |
hhdsdy 發表于 2024-6-14 11:53 這樣可以嗎?感謝感謝 |
2K電阻是為了防止短路的,可以移到按鍵右邊,這樣用量會多一點,一個按鍵一個。 |
zhuls 發表于 2024-6-13 20:26 1定位1脈沖是啥意思?我看某一個寶賣的好像也沒有啥標注啊。這種編碼器,不就是提供一路增量信號嗎?用CPU的io直接使用是可以的,用1650,四個狀態不太好弄,看表格,接到KI1,KI2和DIG1之間,是2E,44,4C,7C,這四個狀態,這得好好研究研究怎么搞。然后還有其他幾個輕觸開關。 |
zhuls 發表于 2024-6-13 20:28 面板上只有一個1650,加編碼器要另外加線,要是1650好使,就不用加線了。看起來是不怎會好使,速度可能也跟不上 |
xiaobendan001 發表于 2024-6-13 18:47 但是你為什么要這么做呢?反應速度不夠啊!直接用EC11解碼它不香嗎? |
xiaobendan001 發表于 2024-6-13 18:47 或許可以的,你試試! A/B相接不同的SEG線,C接COM線 然后不停地讀鍵值。為0就是沒轉動,正轉一個值,反轉一個值。 可能EC11要選用1定位一脈沖的才行,2定位一脈沖的會丟碼。 為什么說可以呢?因為我有試過用1定位一脈沖的代碼,不裝上EC11,而是2個按鍵,發現居然也能讀出方向和鍵值。但裝上2定位一脈沖的EC11后,能識別方向,卻總是少一個鍵值,即轉2格才出一個鍵值。。 |
他是有一個組合按鍵的狀態的,但是并不是兩個IO產生的AB相信號,這個要怎樣操作才能行? |
![]() |