數(shù)字溫度傳感器DS1621在Linux下的IIC接口驅(qū)動設(shè)計
4 驅(qū)動的加載以及測試
應(yīng)用程序?qū)?a class="contentlabel" href="http://m.butianyuan.cn/news/listbylabel/label/驅(qū)動">驅(qū)動從內(nèi)核空間獲得的數(shù)據(jù)保存下來,首先根據(jù)傳回的DONE比特位判斷溫度傳感器是否正在數(shù)據(jù)轉(zhuǎn)換的過程中,如果是,則拋棄該數(shù)據(jù),并打印數(shù)據(jù)不可用的信息;如果否,則接下來根據(jù)精度位判斷小數(shù)點后的數(shù)據(jù)值,并將結(jié)果打印出來。
最后將驅(qū)動程序編譯成模塊,可以動態(tài)地加載、卸載設(shè)備驅(qū)動,不用重新啟動系統(tǒng)就能查看驅(qū)動程序結(jié)果,方便了驅(qū)動的編寫與調(diào)試工作。
經(jīng)過動態(tài)編譯后,得到目標文件iic.o、1621.o以及應(yīng)用程序1621_iic_test,將文件下載到S3C2440中,通過#insmodiic.o、#insmod 1621.o加載模塊,#./1621_iic_test運行測試程序,如圖6所示。本文引用地址:http://m.butianyuan.cn/article/162269.htm
5 結(jié)論
本文以ARM920T內(nèi)核的S3C2440為MCU與數(shù)字溫度傳感器模塊DS1621搭建成多點數(shù)字測溫電路。MCU通過IIC總線與DS1621進行通信,通過編寫linux2.4版本下的IIC驅(qū)動程序,完成了S3C2440與帶有IIC接口的外圍芯片的通信,并實現(xiàn)了DS1621的配置和測溫工作,正常工作中DS1621的典型溫度轉(zhuǎn)化時間為1 s,數(shù)據(jù)精度為0.5℃,典型的工作電壓和電流值僅為3 V、10μA,具備較高的精度,且自身工作功耗小。通過增加DS1621的使用片數(shù),還可擴展為一個低電壓、低功耗的多點數(shù)字測溫系統(tǒng),可以廣泛地應(yīng)用在各種嵌入式系統(tǒng)中。驅(qū)動程序可使用于其他具有IlC接口的外圍芯片的工作,也可將驅(qū)動應(yīng)用于其他具有IIC接口的外圍設(shè)備通信。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)linux相關(guān)文章:linux教程
傳感器相關(guān)文章:傳感器工作原理
風速傳感器相關(guān)文章:風速傳感器原理 上拉電阻相關(guān)文章:上拉電阻原理 溫濕度控制器相關(guān)文章:溫濕度控制器原理
評論