前言:我們確立了題目的功能后,就可以開始元器件的選型,元器件的選型關乎到我們后面代碼編寫的一個難易。
一、主控的選擇
主控的選擇很大程度上決定我們后續使用的代碼編譯器,比如ESP32使用的是VScode,或者Arduino,然后STM32用的是STM32CubeMX和Keil,51單片機使用的Keil。我們第一選擇肯定是以方便快捷開發為主,那這篇主要是以新手為主,所以我們直接推薦STM32,其次是ESP32與Arduino,最后51。STM32中我們一般選主流的STM32F103C8T6,這款單片機在網上的資料會比較多,后面對于一些疑問解答會方便很多,其次這款單片機使用的也是最多的。為什么不推薦51呢,因為51單片機的性能不夠強大(這里的意思是對于新手來說),老手熟悉的話可以隨便搞。然后像一些老師很喜歡的STC89C51,他是沒有ADC和足夠的定時器通道的。
總結,能選STM32F103C8T6就不要選其他的。本教程也是基于這款單片機展開。
二、顯示器的選擇
這里我們盡量也是選擇大眾化的,主流的有LCD1602,0.96OLED等,那其實這些屏幕的話,只要你有驅動的庫你都是選擇使用的,這里我選擇使用0.96OLED,因為這個屏幕的像素足夠我們顯示大部分內容。為啥不選LCD1602,因為他只能顯示兩行X16個字符的區域,同時他還需要16個針腳局限性還是比較大的。
三、傳感器的選擇
1.這里我們主要是面對新手為主,所以這里推薦的是使用模塊化,所有的傳感器都用模塊,節省畫板與接線的時間。
這里舉個栗子,你要檢測溫濕度,那你直接可以去TB,PDD去搜一下溫濕度模塊,這里就會出現很多模塊,這個時候我們就再把顯示出來的各個型號放到B站或者CSDN搜一下,看一下資料多不多。或者我們點進商品詳情頁里面看看他有沒有STM32的代碼資料,或者找客服問一下有沒有STM32的代碼。其他的傳感器都是類似的辦法。
2.然后我們還需要關注的一個點就是他的數據讀取方式,一般來說我們會選擇ADC輸出的模塊,就是你可以看到模塊上會有一個“AO”的標識,再選IIC的,單總線,串口的。像RS485和CAN的話這些協議盡量不要碰。
3.其次我們還要關注一下他的驅動電源是否符合我們整個系統的供電,如果是5V,那我們可以直接用,如果是3.3V或者更高的電壓,我們在接線的時候就要考慮升壓與降壓了。最好就是選擇3.3-5V的。