|
|
經(jīng)過一段時間的學(xué)習(xí),我已經(jīng)對一些外圍設(shè)備的操作基本了解了,于是就開始進(jìn)行電子時鐘的制作。
當(dāng)然這次制作還是參照了鴻哥的程序,主要是我不會操作時鐘芯片,而且鴻哥再他的程序中還介紹了關(guān)于電平切換的知識。因此整個程序不過是鴻哥程序的復(fù)制吧了,頂多我加深了一點理解罷了。
在這個程序中我對傳感器的理解又加深了,同時我還知道了如何操作傳感器,以后不管遇到什么樣的傳感器我都能操作了。操作傳感器其實就只要會對他進(jìn)行數(shù)據(jù)的讀與寫,至于它的感知原理,知道更好,不知道也沒事,根本不影響操作。既然要對傳感器進(jìn)行讀寫數(shù)據(jù),那就必然要熟悉一些常用的通信協(xié)議了,比如I2C通信協(xié)議,SPI通信協(xié)議,串口通信協(xié)議等,在ds18b20中還用到了單總線通信協(xié)議。所以對傳感器的應(yīng)用需要對各種通信協(xié)議能熟練運(yùn)用,而且還要對傳感器中存儲數(shù)據(jù)的地址要了解(這個需要查閱數(shù)據(jù)手冊了)。
既然現(xiàn)在已經(jīng)對傳感器的應(yīng)用的大體流程了解了,那就一步一步的來弄明白吧。首先它的通信協(xié)議使用的是SPI通信協(xié)議,這個協(xié)議我不懂,所以我就幾乎照抄了鴻哥的程序,這個以后要弄明白才行啊。還有就是對芯片中存儲數(shù)據(jù)的地址要知道,這個我通過查閱資料和參考鴻哥的程序基本知道了。其實這個地址是不用記得的,到時查資料就行了。在ds1302中芯片的讀寫地址是不同的,而且可以分別讀取年月日,小時,分鐘,秒,而且你只要設(shè)定好了這些參數(shù),芯片就會自動按照準(zhǔn)確的時間運(yùn)行,到時再讀取里面的數(shù)據(jù)就行了,這就是這個芯片的操作了。
傳感器采集到的數(shù)據(jù)要傳給單片機(jī),單片機(jī)會對其進(jìn)行各種處理,在時鐘芯片中,我們只會把數(shù)據(jù)顯示出來,也就是僅進(jìn)行數(shù)據(jù)顯示,而沒有其他的處理,在溫控中,我們還會對數(shù)據(jù)有報警處理,這些數(shù)據(jù)處理都跟傳感器無關(guān)了。換言之,傳感器只是傳送給單片機(jī)一個數(shù)據(jù),其他的事就是單片機(jī)的事情了,跟傳感器無關(guān)了。
顯示采用的是數(shù)碼管,當(dāng)然程序中還有時間的修改。這也是很重要的,這要求會如何把數(shù)據(jù)寫入時鐘芯片中。
|
|