課程大綱
【第一章】:物聯網簡介(什麼是物聯網)
【第二章】:物聯網十大應用場景
【第三章】:什麼是MCU?
【第四章】:MCU的應用範圍
【第五章】:我們要怎麼入門MCU開發?
【第六章】:如何使用STM32Cube MX進行STM32的快速開發
【第七章】:ESP8266+MQTT上阿里雲物聯網平臺實踐(附源碼)
STM32CubeMX AT指令實現MQTT協議並接入阿里雲IOT平臺 源碼解析
CSDN源代碼下載
Github源代碼下載
5. 我們要怎麼入門MCU開發?
5.1 學習興趣
俗話說的好,興趣是最好的老師。
5.2 電子電路基礎
數字電路
單片機屬於數字電路,其概念、術語、硬件結構和原理都源自數字電路,如果數字電路基礎紮實,對複雜的單片機硬件結構和原理就能容易理解,就能輕鬆地邁開學習的第一步,自信心也會樹立起來。相反,基礎不好,這個看不懂那個也弄不明白,越學問題越多,越學越沒有信心。如果你覺得單片機很難,那就應該先放下單片機教材,去重溫數字電路,搞清楚觸發器、寄存器、門電路、COMS電路、時序邏輯和時序圖、進制轉換等理論知識。理解了這些知識之後再去看看單片機的結構和原理,我想你會大徹大悟,信心倍增
模擬電路
模擬電路是電子技術最基礎的學科,她讓你知道什麼是電阻、電容、電感、二極管、三極管、場效應管、放大器等等以及它們的工作原理和在電路中的作用,這是學習電子技術必須掌握的基礎知識。一般是先學習模擬電路再去學習數字電路。紮實的模擬電路基礎不僅讓你容易看懂別人設計的電路,而且讓你的設計的電路更可靠,提高產品質量。
5.3 C語言基礎
C語言知識並不難,沒有任何編程基礎的人都可以學,在我看來,初中生、高中生、中專生、大學生都能學會。當然,數學基礎好、邏輯思維好的人學起來相對輕鬆一些。C語言需要掌握的知識就那麼3個條件判斷語句、3個循環語句、3個跳轉語句和1個開關語句。別小看這10個語句,用他們組合形成的邏輯要多複雜有多複雜。學習時要一條語句一條語句的學,學一條活用一條,全部學過用過這些關鍵語句後,相信你的C基礎建立了。
#include <stdio.h>
int main()
{
//變量
int i = 0;
int j = 1;
/* 順序結構 */
printf("Hello, World! \n");
printf("Hello, Everyone! %d\n",j);
/* 分支 */
if( 0==i )
{
printf("i等於0! \n");
}else
{
printf("i不等於0! \n");
}
switch(i){
case 0:
printf("i等於0! \n");
break;
case 1:
printf("i等於1! \n");
break;
default:
printf("都不是執行這個! \n");
break;
}
/* 循環 */
for( ; ; )
{
printf("該循環會永遠執行下去!\n");
}
while(condition)
{
statement(s);
}
do
{
statement(s);
}while( condition );
return 0;
}
/* 函數返回兩個數中較大的那個數 */
int max(int num1, int num2)
{
/* 局部變量聲明 */
int result;
if (num1 > num2)
result = num1;
else
result = num2;
return result;
}
5.4 學習路線
GPIO:就是學習單片機引腳的控制方法,將引腳配置輸入或者輸出,比如說:點亮發光二極管、控制蜂鳴器發聲、控制繼電器吸合、控制按鍵輸入、點亮數碼管等;
定時器:學習單片機的片上資源timer,學習如何配置timer,如何設置初值,比如說:發光二極管定時閃爍、數碼管顯示的數值定時自加等;
UART:學習單片機的UART功能,學習RS232通訊,比如說:單片機發送字符用串口調試助手在電腦上顯示;
IIC:學習IIC通訊,比如說用AT24Cxx系列實現數值的掉電保存功能;
AD採樣:學習模數轉換知識,比如說:調節滑動變阻器,改變所採集的電壓,實時顯示此時的電壓;
之後就可以開始學習SPI,USB, 液晶屏、點陣、外部中斷、D/A等外設。
5.5 推薦學習資源
開源電子網:http://www.openedv.com/
野火論壇:https://www.firebbs.cn/forum.php