|
zhangxl 發表于 2022-7-17 17:20 ,一起努力 |
zhangxl 發表于 2022-7-17 11:44 沒事,這本來就是交流,取長補短 |
| 這代碼似乎不大對,main()中沒有大循環,卻在鍵掃中加入while(1)。看成不明白。 |
wei1130 發表于 2022-7-17 20:22 不! While(1)是無條件循環。沒有退出的條件,如果代碼中沒有相應的處理,很容易死在里邊的。 |
| 這么多while(1),你確定代碼不會陷死在里邊,出不來嗎? |
lkc8210 發表于 2022-7-17 17:39 但是規范寫法就這樣 |
|
zhangxl 發表于 2022-7-17 17:20 這個可能不太對,你可已在調用Service_int()之前加上sec=9999; |
|
本帖最后由 zhangxl 于 2022-7-17 17:25 編輯 viod servic_init(void) { sec=9999; while(1) { 取數 } } 應該這樣吧,中斷時時的在減sec值。我今天遇到了相同的情況。 ![]() |
|
初始化時TR1=0,SEC=9999;按鍵后才TR1=1;就可以了 |
|
我是新手,別的沒看明白,沒看到樓主對sec賦值,不知道是不是賦值的問題?另外 LEDBuf[0]=sec/1000 LEDBuf[1]=sec%1000/100 LEDBuf[2]=sec%100/10 LEDBuf[3]=sec%100 這樣取數會不會更好一點兒 新手有說錯不要見怪 |
| 隨機數倒計時 |
現在從9998或是9997開始計時.![]() |
是9998開始的,這是什么毛病.![]() |