單片機的防火防盜系統,每個感測器(溫度,煙霧等)是分別寫好各自的代碼,再用main.c調用整合它們嗎?
不是,
新手一般一個void main{}包打天下,
初級main{}加子程序,
中級main.c加中斷等各種.c。
數字感測器很容易,初級就能處理,儘可能用開關式感測器。
模擬感測器需要做AD,最簡單的也要做數據轉換,高級的還要曲線擬合、平均濾波,高負載下AD又要考慮非同步採樣、硬體觸發、中斷、多通道調度,不好做
所幸現在有ARM,有STM32 ,有庫,
聽我一言,用stmcube(好像是這個東西),STM32庫,你的病,有救了!
代碼不對,寫在一個裡面就夠了。
煙霧就是ADC ,用stm32自帶的就夠了。
溫度感測器,加個系統滴答定時器就夠了。
是的,本質上來說,複雜的系統是分了很多小步,加入了更多的安全和穩定性上的功能,但這些考慮往往都是值得的。先從簡單開始,寫好感測器的.h和.c文件,然後在main()中進行初始化和無限執行,然後慢慢的加入中斷函數、回調函數,加入看門狗等等,將系統做穩定做安全。
是的。
寫個tempsensor.h,tempsensor.c的文件,然後實現感測器的所有功能。
在主程序裏include,只要一開始的時候temp_sensor_init()一下,然後就可以快樂地temp_sensor_read()了。
煙霧感測器也是一樣的。
代碼量不大。寫在一個文件裏就行
論文能幫一下嘛?
盡量把溫度 與煙霧分開文件。把不同的檢測模塊的相同功能,抽象成一套函數代碼復用。
推薦閱讀: