欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標(biāo)題: 單片機(jī)無線遙控波形圖解碼求助 [打印本頁]

作者: weispan    時間: 2024-1-29 14:19
標(biāo)題: 單片機(jī)無線遙控波形圖解碼求助


請教各位大神,這是一個接收機(jī)收到無線遙控器其中一個按鍵后的從DATA口的輸出波形圖,我想用STM32單片機(jī)的一個IO腳來接收并解碼這個信號,低電平表示0碼,高電平表示1碼,存儲到一組數(shù)據(jù)中,我參考了stm32紅外接收解碼的教程,但是NEC的0碼1碼的位寬是不相同的,而這個是0碼1碼位寬都相同,現(xiàn)在陷入困境中,望各位大師幫小弟看看有什么方法可以寫出解碼,謝謝!

作者: lkc8210    時間: 2024-1-29 14:46
如果第一個位元一定是0
那就設(shè)置一個420us中斷
連續(xù)掃到高電平就代表收到頭幀
然后就可以讀40個電平

作者: 單片機(jī)研究協(xié)會    時間: 2024-1-29 16:38
把邏輯分析儀測到的波形數(shù)據(jù)保存一下,然后上傳,這樣別人才方便看到更多細(xì)節(jié),你這個圖片一放大就看不清了。
作者: 單片機(jī)研究協(xié)會    時間: 2024-1-29 16:39
把每個按鍵的數(shù)據(jù)都用邏輯分析儀測一下,然后對比,找出共同點(diǎn)和不同點(diǎn),然后才好寫解碼程序
作者: boboxuexi    時間: 2024-1-29 17:10
先找到頭,再記錄分別記錄每個高低電平寬度,再統(tǒng)計高低電平個數(shù)。
作者: weispan    時間: 2024-1-29 21:40
這個是波形數(shù)據(jù)

Session 102.rar

2.13 KB, 下載次數(shù): 7


作者: lyonkon    時間: 2024-1-30 00:30
依次是0x7F,0X52,0XD1,0XF3,0X84,0XB5一共6個字節(jié)。我根據(jù)第一幅圖猜的
作者: 單片機(jī)研究協(xié)會    時間: 2024-1-30 12:35
lyonkon 發(fā)表于 2024-1-30 00:30
依次是0x7F,0X52,0XD1,0XF3,0X84,0XB5一共6個字節(jié)。我根據(jù)第一幅圖猜的

明顯是錯的,不要在這誤導(dǎo)人
作者: 單片機(jī)研究協(xié)會    時間: 2024-1-30 12:37
我看了你發(fā)的波形,大概知道怎么解了,如果愿意%,我可以提供程序和思路
作者: lyonkon    時間: 2024-1-30 15:47
單片機(jī)研究協(xié)會 發(fā)表于 2024-1-30 12:35
明顯是錯的,不要在這誤導(dǎo)人

逆向工程,允許猜測,允許測試錯誤。我按照上圖直觀的猜測,按高低脈沖平均時間,作為1bit時間。圖上顯示是47位。我按照最高位補(bǔ)0或者最低位補(bǔ)0進(jìn)行分析。如果錯了,你可以指明。
作者: 單片機(jī)研究協(xié)會    時間: 2024-1-30 18:15
lyonkon 發(fā)表于 2024-1-30 15:47
逆向工程,允許猜測,允許測試錯誤。我按照上圖直觀的猜測,按高低脈沖平均時間,作為1bit時間。圖上顯示 ...

你猜錯了,不是你想的那樣
作者: lyonkon    時間: 2024-1-30 20:51
單片機(jī)研究協(xié)會 發(fā)表于 2024-1-30 18:15
你猜錯了,不是你想的那樣

或許我猜錯了,但是可以用。用單片機(jī)以我說的值,模擬這段波形時序,發(fā)送或者接受。就可以不需要知道具體的值。如果這個值能用 你說是錯的嗎。
我也可以隨便說,某某錯了 如何如何。但是,我說某人哪里錯了的時候,我必須拿出依據(jù)。
作者: 單片機(jī)研究協(xié)會    時間: 2024-1-31 02:06
lyonkon 發(fā)表于 2024-1-30 20:51
或許我猜錯了,但是可以用。用單片機(jī)以我說的值,模擬這段波形時序,發(fā)送或者接受。就可以不需要知道具體 ...

也許你以前做過類似的解碼,不過這個跟你之前做過的不一樣。
因為我知道正確答案,所以可以確定你猜錯了。
作者: lyonkon    時間: 2024-1-31 13:00
單片機(jī)研究協(xié)會 發(fā)表于 2024-1-31 02:06
也許你以前做過類似的解碼,不過這個跟你之前做過的不一樣。
因為我知道正確答案,所以可以確定你猜錯了 ...

正確的值,也要符合時序。相同的時序,可以用不同的系統(tǒng)和編碼來實現(xiàn)。上圖時序可以按自己的方式,或者符合自己單片機(jī)的方式進(jìn)行編碼。保持發(fā)送和接收時序正確。
至于你說的什么正確的值,我絲毫不會介意。因為優(yōu)化系統(tǒng)和時序的時候,用到你說的那個值的幾率不高。
你硬要說別人的值或者方案是錯的。那你繼續(xù)

作者: weispan    時間: 2024-1-31 13:45
Session 11.zip (7.18 KB, 下載次數(shù): 7)
我把一共9個按鍵的波形都放上來,麻煩各位老師幫我指點(diǎn)一下
作者: weispan    時間: 2024-2-21 00:54

各位老師,我用這個代碼勉強(qiáng)能顯示出來,請問該怎樣寫函數(shù)把這些數(shù)據(jù)保存到一個數(shù)組里?
作者: lyonkon    時間: 2024-2-21 19:41
weispan 發(fā)表于 2024-2-21 00:54
各位老師,我用這個代碼勉強(qiáng)能顯示出來,請問該怎樣寫函數(shù)把這些數(shù)據(jù)保存到一個數(shù)組里?

可以用stm32 usart 假設(shè)一個波特率然后嘗試接受遙控器數(shù)據(jù)。接受到的數(shù)據(jù)用dma存入片內(nèi)sram 。然后在線調(diào)試,可以在內(nèi)存里查看接受到的值,然后微調(diào)波特率直到滿意為止。
作者: 單片機(jī)研究協(xié)會    時間: 2024-2-22 09:05
這個波形其實很簡單的,你們都想復(fù)雜了,如果頂帖到100樓,我就公布解碼方法和解碼出的正確數(shù)據(jù)
作者: weispan    時間: 2024-2-23 02:00

各位老師,我改成 usart接收 只有把波特率改到4800,一直按住遙控的一個按鍵才能收到這些碼,其它波特率都顯示都是兩個重復(fù)數(shù)字,我看到這些碼有相同的,但通過計算器轉(zhuǎn)換發(fā)現(xiàn)和這個按鍵的邏輯分析儀捕捉的數(shù)據(jù)又不一樣,不知如何是好?
作者: lyonkon    時間: 2024-2-23 17:26
weispan 發(fā)表于 2024-2-23 02:00
各位老師,我改成 usart接收 只有把波特率改到4800,一直按住遙控的一個按鍵才能收到這些碼,其它波特率 ...

比如每按下左鍵,STM32usrat總是接收到  0x70 82 33 66 55.然后將這一組數(shù)據(jù)寫入程序。
usart每收到一組數(shù)據(jù),與你設(shè)定的數(shù)據(jù)對比。如果相同燈亮。如果不同,進(jìn)行下一組數(shù)據(jù)對比。
作者: 單片機(jī)研究協(xié)會    時間: 2024-2-23 17:34
lyonkon 發(fā)表于 2024-2-23 17:26
比如每按下左鍵,STM32usrat總是接收到  0x70 82 33 66 55.然后將這一組數(shù)據(jù)寫入程序。
usart每收到一組 ...

這是錯誤的數(shù)據(jù)
作者: lyonkon    時間: 2024-2-23 19:07
單片機(jī)研究協(xié)會 發(fā)表于 2024-2-23 17:34
這是錯誤的數(shù)據(jù)

我不愿意再為這個方案去爭,我只是說出來我的方法。樓主愿意用哪種方案去逆向,是樓主自己決定。
但是我不認(rèn)為,我的方案不行。
作者: 單片機(jī)研究協(xié)會    時間: 2024-2-26 09:55
lyonkon 發(fā)表于 2024-2-23 19:07
我不愿意再為這個方案去爭,我只是說出來我的方法。樓主愿意用哪種方案去逆向,是樓主自己決定。
但是我 ...

不愿意爭就不要再回復(fù)了
作者: lyonkon    時間: 2024-2-26 21:22
單片機(jī)研究協(xié)會 發(fā)表于 2024-2-26 09:55
不愿意爭就不要再回復(fù)了

是說以我的這個方案不和你爭。但人家愿意問,我就愿意回答。有原理說原理,有依據(jù)說依據(jù)。科學(xué)是大家的,螳臂擋車是徒勞且無效的。
作者: 單片機(jī)研究協(xié)會    時間: 2024-2-27 10:01
昨天看了一個短視頻讓我深有感觸《我不幫你誰幫你》,回想自己剛?cè)腴T的時候也是遇到了很多困難,也得到過很多熱心前輩的幫助。這里我就公布正確答案,這個波形是UART,是大多數(shù)入門單片機(jī)所學(xué)的第一個通訊接口,這個UART的波特率是2400。


從上面這個圖片可以看出最小的頻率是2425,由此可以看出波特率是2400。


這樣設(shè)置解碼,就可以用UART,2400波特率解碼這個協(xié)。


這樣就得到了解碼后的數(shù)據(jù),
一共4個字節(jié),0xA5,0xF1,0x0E,0x5A
很明顯0xA5和0x5A是反碼,0xF1和0x0E是反碼,就是由這點(diǎn)我可以確定我這個方法解碼出的數(shù)據(jù)就是正確的數(shù)據(jù)。



另一個波形圖解碼出的數(shù)據(jù),
1、0xA5,0x8A,0x75,0x5A
2、0xA5,0xB5,0x4A,0x5A
由此可以看出第1個數(shù)據(jù)是搖控器的地址,第2個數(shù)據(jù)是搖控器的鍵碼,第3個數(shù)據(jù)是搖控器鍵碼的反碼,第4個數(shù)據(jù)是搖控器地址的反碼。


作者: weispan    時間: 2024-2-28 00:05

感謝各位老師在百忙中抽空來熱情指導(dǎo),分析研究指正幫助小弟,真的很感激不盡!另外,
特別感謝單片機(jī)研究協(xié)會老師的分享!令小弟茅塞頓開 ,謝謝老師!但是小弟有個地方不是很理解,如圖中老師所說第二個數(shù)據(jù)這里是0XB5,可是通過計算器轉(zhuǎn)換和圖中邏輯分析儀的顯示的波形不是很相同,請問是什么導(dǎo)致的?
作者: 單片機(jī)研究協(xié)會    時間: 2024-2-28 15:09
你只需要計算打點(diǎn)的位置,UART的數(shù)據(jù)包含起始信號(固定為0),8位數(shù)據(jù),停止信號(固定為1),UART一個字節(jié)有10位數(shù)據(jù)
作者: weispan    時間: 2024-2-28 15:24

單片機(jī)研究協(xié)會老師你好,按你的指導(dǎo)把UART設(shè)置成2400 按這個波形對應(yīng)的按鍵,但收到的和邏輯分析的數(shù)據(jù)不一樣,請問是會是什么原因?qū)е碌模?script type="text/javascript" reload="1"> aimgcount[1193118] = ['325274']; attachimggroup(1193118); attachimgshow(1193118);
作者: weispan    時間: 2024-2-28 16:11

老師你好,我這兩個地方是不是還需要設(shè)置才能正確顯示嗎?
作者: 單片機(jī)研究協(xié)會    時間: 2024-2-28 22:12
你先試一下能不能用2400的波特率發(fā)數(shù)據(jù),如果不能用2400波特率發(fā)數(shù)據(jù),也就不能用2400波特率接收數(shù)據(jù),有可能是波特率太低了,UART所在的APB時鐘太高了,降低UART所在的APB時鐘試一下。
作者: weispan    時間: 2024-2-29 14:34

老師你好,按照你的提示,在USART1這里由48改成8后能正確顯示出來了,太感謝!
作者: 單片機(jī)研究協(xié)會    時間: 2024-2-29 18:03
很少見到無線搖控器用UART發(fā)數(shù)據(jù)的,這樣收發(fā)的程序都比較簡單了




歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1