Hephaestus 發表于 2022-6-2 22:07
如果沒有仿真器,那么用串口把(gds1302_time[1]/16*10+gds1302_time[1]%16-5)和(offpower)兩個值打印出來看 ...
啤酒瓶子老大 發表于 2022-6-2 22:24
如果只是5分鐘后關閉什么東西,不用1302也行。直接用定時器計時簡單一點。
Hephaestus 發表于 2022-6-2 22:07
如果沒有仿真器,那么用串口把(gds1302_time[1]/16*10+gds1302_time[1]%16-5)和(offpower)兩個值打印出來看 ...
Hephaestus 發表于 2022-6-2 22:07
如果沒有仿真器,那么用串口把(gds1302_time[1]/16*10+gds1302_time[1]%16-5)和(offpower)兩個值打印出來看 ...


tongguan123 發表于 2022-6-2 22:45
首先說明一下,我也是一名初學者啊。
你所說的通過串口把這兩個值打印出來,是不是在編程序時候, ...

wolfinn 發表于 2022-6-2 21:57
想了一下,初值取模有點問題如果是定時10分鐘,應當是offpower>49時,offpwoer應當是offpwoer+10-60。 ...
lkc8210 發表于 2022-6-2 23:07
要不改成這樣試試
wolfinn 發表于 2022-6-2 23:09
條件滿足時在進入里面的語句加才有效,要不循環內我的時間值在不斷的讀不斷的變。
tongguan123 發表于 2022-6-2 23:17
所以你那個取模應該是沒問題的。
tongguan123 發表于 2022-6-2 23:13
作為一名菜鳥,只能這樣分析了,看圖說話!
wolfinn 發表于 2022-6-2 23:22
程序里沒有寫-60,當然這里不是討論這個模的問題,最多是在變模處會有1~10分鐘的不規則定時。
tongguan123 發表于 2022-6-2 23:31
因為你設置的時間剛好是五分鐘就要執行關閉WIFI電源,所以按照你那個if里面取模公式,必須要等于==offpowe ...
tongguan123 發表于 2022-6-2 23:39
所以這條語句應該不會執行吧? if (offpower>49) offpower=0; //將與下面的量比定時最大十分鐘
tongguan123 發表于 2022-6-2 23:39
所以這條語句應該不會執行吧? if (offpower>49) offpower=0; //將與下面的量比定時最大十分鐘
tongguan123 發表于 2022-6-2 22:45
本帖最后由 tongguan123 于 2022-6-2 23:14 編輯
首先說明一下,我也是一名初學者啊。
wolfinn 發表于 2022-6-2 23:50
時間分鐘是59,但是1302讀出的是0x59,而不是值是59,值是5*16+9=89
tongguan123 發表于 2022-6-2 23:39
所以這條語句應該不會執行吧? if (offpower>49) offpower=0; //將與下面的量比定時最大十分鐘
wolfinn 發表于 2022-6-3 00:05
你別跟我糾結模的問題啦,在40以下不跟模運算有關的用 >都出現點問題,模我改了以后沒問題的了。還有你對 ...
wolfinn 發表于 2022-6-3 00:28
再說一個,比如我們要LED十六進制顯示出一個數,我們知道它的值是0x6B(107十進制),先原樣字符0x,再經 ...
188610329 發表于 2022-6-3 00:34
我不知道為什么你要用這么復雜的算法……
不知道乘除法非常費資源的么? 而且跨60的時候,還要策略去補償 ...
wolfinn 發表于 2022-6-3 00:50
多謝指導,你的才真的高。學習。
總會有問題的,你怎不查下為什么我會出這種小問題?是數據左右不同?
...
188610329 發表于 2022-6-3 13:12
查問題, 是需要標本的……, 樓上好多層都讓你回傳數據,你覺得沒有意義。那么很多東西是沒有辦法分析的 ...
wolfinn 發表于 2022-6-3 20:26
唉,轉模處不討論,這東西經過我進行轉模處理后是沒有問題的了。我是想讓高手你以你的經驗看看條件中同樣 ...
188610329 發表于 2022-6-3 23:28
所以,我就是問, 按我上面寫的加一個判斷, 大于是不是可以了? 這個也很難回答么?
wolfinn 發表于 2022-6-4 11:30
我歷來都是說不觸發模的情況下20多分鐘也不行,所以你說的有關加個檢查模的那條命令這沒有必要試。另外我 ...
188610329 發表于 2022-6-4 12:26
行吧,如無意外,最后一次對此問題展開討論。
在所有的判定當中, == 是最為嚴格的, 當測試 == 能正常 ...
zhxiufan 發表于 2022-6-4 14:38
關鍵的問題是當,分值大于49時,被賦予了值為0,當然就會出問題了。所以要分別處理大于49和小于49的情況。
名字不是重點 發表于 2022-6-4 16:13
其實一開始就是邏輯的問題:
1、開機讀取1302的分鐘值,存為變量比如“”
2、過一段時間(這個時間影響定 ...
wolfinn 發表于 2022-6-4 13:29
好吧,謝謝你,左邊是一個現算值,右邊一個算好的變量值,數據亂入?不想吵了,謝謝你,浪費了你的時間。
名字不是重點 發表于 2022-6-4 16:13
其實一開始就是邏輯的問題:
1、開機讀取1302的分鐘值,存為變量比如“”
2、過一段時間(這個時間影響定 ...
lkc8210 發表于 2022-6-5 00:56
如你所說左邊是現算值,右邊是算好的變量值
if(A>B)要成立必定是A的值大于B
既然B是固定值
lkc8210 發表于 2022-6-5 00:56
如你所說左邊是現算值,右邊是算好的變量值
if(A>B)要成立必定是A的值大于B
既然B是固定值
wolfinn 發表于 2022-6-5 06:34
分析得有道理,別的代碼沒必要放出來。
我誤解了,仔細看你所的加條語句是解決亂入問題的。
你說的我的 ...
wolfinn 發表于 2022-6-4 13:29
好吧,謝謝你,左邊是一個現算值,右邊一個算好的變量值,數據亂入?不想吵了,謝謝你,浪費了你的時間。
188610329 發表于 2022-6-5 14:37
本不打算再回復此帖,正好路過,也不打算再幫你分析了,就給你指條路,
DS1302 時常讀出 0xff ...
188610329 發表于 2022-6-5 14:37
本不打算再回復此帖,正好路過,也不打算再幫你分析了,就給你指條路,
DS1302 時常讀出 0xff ...
lkc8210 發表于 2022-6-5 11:18
對不起~誤會了你
想不到管X員還會刪代碼
ephzq 發表于 2022-6-5 22:30
WIFI中有個叫看門狗的設置,你需要在程序中,時常去喂狗,就不會出現你說的情況了
Hephaestus 發表于 2022-6-4 23:16
傳說中三個臭皮匠賽過諸葛亮,但是這個帖子告訴我們一個臭皮匠能氣死三個諸葛亮。



wolfinn 發表于 2022-6-5 15:38
照這么說,最高明的那倆朋友的方法也不可靠了,不同就加1,也會定時不準。
188610329 發表于 2022-6-9 18:21
給你那個 判斷方法,從來沒說可以解決你的問題, 只是告訴你,你根本不用計算就能判斷是不是過了5分鐘, ...
1.64 MB, 下載次數: 5
C語言教程
| 歡迎光臨 (http://m.raoushi.com/bbs/) | Powered by Discuz! X3.1 |