![]() |
發(fā)布時間: 2024-4-28 10:25
正文摘要:我寫的是一個路燈的工作時間,分別有開啟時間,結(jié)束時間,和節(jié)能模式開啟時間(有小時和分鐘),根據(jù)工作在不同的時間段,路燈有不同的亮度,但是在寫判斷的時候,已經(jīng)寫懵了,有沒有好的判斷方法,或者有沒有辦法將小 ... |
188610329 發(fā)表于 2024-4-29 12:27 好的,感謝感謝 |
wufa1986 發(fā)表于 2024-4-29 11:56 好的,感謝感謝 |
先說關(guān)鍵點:多條件并列判斷時,要用 && 比如: if((Time[2] >12) && (Time[2]<24)) 然后,順帶說一下,邏輯上來講,DS1302的話, 24 小時制 是 0~23 所以,只要 >12 必定是 <24, 同樣 只要<12 也必然是 >=0 的,所以,此處根本就不需要并列判斷。 最后再提一下,DS1302 用的是BCD計時,正常得到的是 BCD碼,所以通常判斷時 應(yīng)該是 >0x12 而不是 >12 |
重寫吧,你這種判斷時間和分鐘分開的方法,稍不留神就會出錯,讀出時間后統(tǒng)一轉(zhuǎn)換為分鐘,再寫邏輯判斷 |
Powered by 單片機教程網(wǎng)