0.png (53.06 KB, 下載次數(shù): 152)
天ノ憶 發(fā)表于 2022-1-5 17:51
發(fā)9條多嗎,你這程序不發(fā)幾十條算少的了
你理順一下程序邏輯,看看你按下去按鍵的時候if判斷走了多少次
lkc8210 發(fā)表于 2022-1-5 17:45
加個消抖延時就可以了
lkc8210 發(fā)表于 2022-1-5 17:45
加個消抖延時就可以了
稻草人008 發(fā)表于 2022-1-5 18:03
十分感謝,用你的程序好了。
IMG_20220106_142618.jpg (1.28 MB, 下載次數(shù): 131)
boboxuexi 發(fā)表于 2022-1-6 15:36
阻塞試延時是單片機程序設(shè)計最大的忌諱,
13205495918 發(fā)表于 2022-1-6 19:45
正點原子論壇有個按鍵掃描程序,里面有個 靜態(tài)變量的用法,你可以了解一下,有個對你有幫助。
lkc8210 發(fā)表于 2022-1-6 14:45
如果你現(xiàn)實用的是stc12c5410ad
要把定時器設(shè)為12分頻
void UartInit(void) //9600bps@22.1184MHz
稻草人008 發(fā)表于 2022-1-7 15:08
高手,你好,現(xiàn)在都調(diào)出來了,
但是我發(fā)的EF 09 73 00 01 02 96這字符在串口上讀出來的是ASCII正確,16 ...
lkc8210 發(fā)表于 2022-1-7 15:21
如果你要的是0xEF 0x09 0x73...就要轉(zhuǎn)碼
稻草人008 發(fā)表于 2022-1-7 18:35
我要的是16進(jìn)制下的EF 09 73 00 01 02 96
lkc8210 發(fā)表于 2022-1-7 18:40
就是45 46 20 30 39 20 37 33 20 30 30 20 30 32 20 30 31 20 39 36 20 0A 0D嗎?
那就不用轉(zhuǎn)
稻草人008 發(fā)表于 2022-1-7 19:02
是不是我發(fā)的被我指定為文本了,然后它在轉(zhuǎn)了一遍
lkc8210 發(fā)表于 2022-1-7 18:40
就是45 46 20 30 39 20 37 33 20 30 30 20 30 32 20 30 31 20 39 36 20 0A 0D嗎?
那就不用轉(zhuǎn)
suncat0504 發(fā)表于 2022-1-7 19:49
對于接收方,它不知道來的是什么數(shù)據(jù),是ASCII還是十六進(jìn)制數(shù)據(jù),它都統(tǒng)一按照16進(jìn)制收取。所以發(fā)送方即使 ...
lkc8210 發(fā)表于 2022-1-6 14:45
如果你現(xiàn)實用的是stc12c5410ad
要把定時器設(shè)為12分頻
void UartInit(void) //9600bps@22.1184MHz
稻草人008 發(fā)表于 2022-1-7 19:02
是不是我發(fā)的被我指定為文本了,然后它在轉(zhuǎn)了一遍
lkc8210 發(fā)表于 2022-1-8 09:15
對~
所以你要以16進(jìn)數(shù)組來發(fā)
char table_s1[] = {0xEF, 0x09, 0x73, 0x00, 0x02, 0x01, 0x96};
稻草人008 發(fā)表于 2022-1-7 20:03
但是我要的數(shù)據(jù)它在ASCII里傳送正常,在16進(jìn)制里就被編了一次,設(shè)備不認(rèn)
suncat0504 發(fā)表于 2022-1-8 11:09
樓主,我覺得你應(yīng)該抽點時間,看看串口通訊在芯片、線路上是怎么實現(xiàn)的。這個是基礎(chǔ),學(xué)明白了,如何解決 ...
lkc8210 發(fā)表于 2022-1-7 15:21
如果你要的是0xEF 0x09 0x73...就要轉(zhuǎn)碼
歡迎光臨 (http://www.torrancerestoration.com/bbs/) | Powered by Discuz! X3.1 |