標題: 素人學習Aduino編程的簡單辦法 [打印本頁]
作者: eagler8 時間: 2019-5-6 17:46
標題: 素人學習Aduino編程的簡單辦法
本帖最后由 eagler8 于 2019-5-7 13:37 編輯
在開源硬件領域,偶只是素人一枚,完全的新手。為促進自己學習Arduino技術,一個笨辦法就是記錄各項實驗的情況。這當中肯定會有許多不懂的地方或是自以為是,還請各位老師多多賜教為盼。
學習Arduino有不同的方法,使用擴展板相對會比較簡便一些。利用我手頭的一塊“Aduino UNO 9in1 擴展板(Eagler8)”(見上圖),它上面集成了九種不同的開源模塊和五個擴展的外接端口,發現挺便利的就能進行18種的Arduino示例實驗。
000.jpg (69.48 KB, 下載次數: 67)
下載附件
2019-5-6 17:45 上傳
作者: eagler8 時間: 2019-5-6 19:30
Arduino官網Arduino1.8.9中文版下載頁面 https://www.arduino.cc/en/Main/Software
02.jpg (81.76 KB, 下載次數: 74)
下載附件
2019-5-6 19:29 上傳
作者: eagler8 時間: 2019-5-6 19:32
實驗硬件準備
1、SG90 9G舵機一只,兼容紅外遙控器一只
06.jpg (49.04 KB, 下載次數: 69)
下載附件
2019-5-6 19:32 上傳
08.jpg (45.16 KB, 下載次數: 77)
下載附件
2019-5-6 19:32 上傳
作者: eagler8 時間: 2019-5-6 19:35
2、Aduino UNO 9in1 實驗擴展板(Eagler8)一塊
3D圖.jpg (225.09 KB, 下載次數: 82)
下載附件
2019-5-6 19:35 上傳
作者: eagler8 時間: 2019-5-6 19:36
3、Arduino UNO原裝板及UNO R3黃金板(國產兼容板)各一塊
為了實驗各種不同情況
10.jpg (94.78 KB, 下載次數: 75)
下載附件
2019-5-6 19:36 上傳
12.jpg (80.17 KB, 下載次數: 76)
下載附件
2019-5-6 19:36 上傳
作者: eagler8 時間: 2019-5-6 21:32
實驗硬件都齊了
09.jpg (89.89 KB, 下載次數: 75)
下載附件
2019-5-6 21:32 上傳
作者: eagler8 時間: 2019-5-6 21:34
電原理圖
線路圖.jpg (157.9 KB, 下載次數: 67)
下載附件
2019-5-6 21:34 上傳
作者: eagler8 時間: 2019-5-6 21:35
Eagler8模塊與板載端口:復位按鍵(REST)
10K旋轉電位器模塊(A0)
2路SW按鍵模塊(D2、D3)
Light亮度傳感器模塊(A1)
LM35D溫度傳感器模塊(A2)
Buzzer無源蜂鳴器模塊(D5)
DHT11溫濕度傳感器模塊(D4)
ER Receiver紅外接收模塊(D6)
1路Analog Port模擬量端口(A3)
RGB全彩LED模塊(D9、D10、D11)
2路Digital Port數字量端口(D7、D8)
1個TTL串口(可接入藍牙或WIFI模塊等)
2路3mm LED模塊(紅色D12、藍色D13)
1個雙向同步串行總線I2C接口(A4 SDA及A5 SCL,可接顯示屏等)
3D圖.jpg (225.09 KB, 下載次數: 82)
下載附件
2019-5-6 21:35 上傳
作者: eagler8 時間: 2019-5-7 13:38
有了這塊超棒的9in1擴展板,為了提高學習Arduino的效率,今天開始嘗試Arduino 1.8.9與Mind+ V1.53相結合的方式,就是把原來的代碼編程(會讓新人害怕的東西)和直觀的圖形編程,二者配合起來學習及做實驗,都不偏頗。
00.jpg (8.55 KB, 下載次數: 74)
下載附件
2019-5-7 13:38 上傳
作者: eagler8 時間: 2019-5-7 13:39
在網上搜索了各種圖形編程軟件,比如Ardublock、S4A、Mixly米思齊、樂幻WeMake、小喵KittenBlock和慧編程mBlock5等,經過簡單比較,最后還是選擇了DF創客社區的Mind+,主要是與Arduino UNO兼容的比較好,可以自動生成代碼,最新版本是V1.5.3。
04.jpg (133.34 KB, 下載次數: 66)
下載附件
2019-5-7 13:39 上傳
作者: eagler8 時間: 2019-5-7 13:40
Mind+ 程序下載地址:
Mind V1.53.png (57.53 KB, 下載次數: 69)
下載附件
2019-5-7 13:40 上傳
作者: eagler8 時間: 2019-5-7 13:41
開始實驗之前,先下載擴展板配套的示例程序,將解壓縮的 Eagler8 文件夾拷貝到 Arduino IED 安裝目錄下的 libraries 文件夾內。啟動 Arduino IDE,打開文件‐-示例‐-Eagler8,即可調用18個示例實驗程序。Eagler8擴展板示例18種編程程序下載地址:
Eagler8.png (55 KB, 下載次數: 58)
下載附件
2019-5-7 13:41 上傳
作者: eagler8 時間: 2019-5-7 13:42
02.jpg (71.04 KB, 下載次數: 71)
下載附件
2019-5-7 13:41 上傳
作者: eagler8 時間: 2019-5-7 13:42
LED 的實驗有四項
01 Blink:D13藍色 LED 閃爍 ,載入示例程序
03.jpg (23.6 KB, 下載次數: 64)
下載附件
2019-5-7 13:42 上傳
作者: eagler8 時間: 2019-5-7 13:43
代碼
/*
Eagler8實驗程序列表
01 Blink:D13藍色 LED 閃爍
*/
int led = 13;
void setup() {
pinMode(led, OUTPUT);
}
void loop() {
digitalWrite(led, HIGH);
delay(1000);
digitalWrite(led, LOW);
delay(1000);
}
作者: eagler8 時間: 2019-5-7 13:44
Mind+ 圖形編程如下
05.jpg (15.11 KB, 下載次數: 67)
下載附件
2019-5-7 13:44 上傳
作者: eagler8 時間: 2019-5-7 13:45
分別上傳,都通過了,見視頻
http://player.youku.com/player.php/sid/XNDE3MDQwMTA5Ng==/v.swf
作者: eagler8 時間: 2019-5-7 18:01
聽了臺灣佑來老師的視頻課,才明白要點亮一只LED燈,對于學習Arduino編程,邁出這一步真的挺不容易。和用普通電子電路開關燈不同,開源硬件需要解決軟件、硬件和驅動等不少問題,才能用程序點亮LED。實驗的第二個程序,是控制二只LED燈交替閃爍,D12端口接紅色LED,D13端口接到藍色LED,間隔延時1000毫秒(1秒)。
啟動 Arduino IDE,打開文件‐-示例‐-Eagler8,即可調用18個示例實驗程序中的第2個---Blink2。
01.jpg (34.09 KB, 下載次數: 75)
下載附件
2019-5-7 18:01 上傳
作者: eagler8 時間: 2019-5-7 18:01
點工具,選擇主板和端口后,上傳成功見下圖
02.jpg (44.15 KB, 下載次數: 61)
下載附件
2019-5-7 18:01 上傳
作者: eagler8 時間: 2019-5-7 18:02
代碼如下:
/*
Eagler8實驗程序列表
02 Blink2:D12、D13紅藍色 LED 交替閃爍
*/
int led1 = 12;
int led2 = 13;
void setup() {
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
}
void loop() {
digitalWrite(led1, HIGH);
delay(1000);
digitalWrite(led1, LOW);
digitalWrite(led2, HIGH);
delay(1000);
digitalWrite(led2, LOW);
}
作者: eagler8 時間: 2019-5-7 18:03
打開圖形編程Mind+,先連接設備,我這里是COM3(可在電腦設備端口中查詢)。
03.jpg (12.67 KB, 下載次數: 78)
下載附件
2019-5-7 18:02 上傳
作者: eagler8 時間: 2019-5-7 18:03
而后在擴展模塊中,打開主控板項,選擇Arduino UNO。
04.jpg (70.15 KB, 下載次數: 67)
下載附件
2019-5-7 18:03 上傳
作者: eagler8 時間: 2019-5-7 18:04
使用Arduino UNO的初始頁面是這樣的(選擇了上傳模式)。
05.jpg (103.66 KB, 下載次數: 85)
下載附件
2019-5-7 18:04 上傳
作者: eagler8 時間: 2019-5-7 18:05
第一步,設置D12腳輸出高電平,D13腳輸出低電平,意思是紅燈(12)亮,藍燈(13)滅;
06.jpg (22.43 KB, 下載次數: 78)
下載附件
2019-5-7 18:04 上傳
作者: eagler8 時間: 2019-5-7 18:05
第二步,延時1秒;
第三步,反過來設置D12腳輸出低電平,D13腳輸出高電平;
第四步,再延時1秒,并循環執行,實現紅藍燈間隔1秒交替閃爍。圖形編程的右邊是自動生成的代碼。
07.jpg (36.3 KB, 下載次數: 62)
下載附件
2019-5-7 18:05 上傳
作者: eagler8 時間: 2019-5-7 18:06
點右上方上傳按鈕,上傳成功。
08.jpg (35.73 KB, 下載次數: 77)
下載附件
2019-5-7 18:06 上傳
09.jpg (71.53 KB, 下載次數: 66)
下載附件
2019-5-7 18:06 上傳
作者: eagler8 時間: 2019-5-7 18:07
本實驗02 Blink2:
D12、D13紅藍色 LED 交替閃爍的效果視頻
作者: eagler8 時間: 2019-5-9 14:47
第三個LED 實驗是模擬爆閃警燈,啟動 Arduino IDE,打開文件‐-示例‐-Eagler8,調用18個示例實驗程序中的第3項---Blink3,源程序如下:/*
Eagler8實驗程序列表
03 Blink3:模擬爆閃警燈
*/
int led1 = 12;
int led2 = 13;
int i,j;
void setup() {
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
}
void loop() {
for(i=0;i<10;i++){
digitalWrite(led1, HIGH);
delay(30);
digitalWrite(led1, LOW);
delay(40);
}
for(i=0;i<10;i++){
digitalWrite(led2, HIGH);
delay(30);
digitalWrite(led2, LOW);
delay(40);
}
}
作者: eagler8 時間: 2019-5-9 14:49
有如上的示例程序,上傳成功就看到了二個LED分別爆閃
01.jpg (43.27 KB, 下載次數: 70)
下載附件
2019-5-9 14:48 上傳
難在理解這程序,走了一點小彎路,就是一下子搞不懂“for”的結構控制,查了一下《Arduino-語法手冊》
1.jpg (28.78 KB, 下載次數: 75)
下載附件
2019-6-21 14:18 上傳
只是懂了大致意思.....
作者: eagler8 時間: 2019-5-9 14:50
借助自動生成功能,最終還是在Mind+上通過了,見下圖
02.jpg (31.34 KB, 下載次數: 68)
下載附件
2019-5-9 14:50 上傳
02-.jpg (18.92 KB, 下載次數: 60)
下載附件
2019-5-9 14:50 上傳
03.jpg (144.73 KB, 下載次數: 71)
下載附件
2019-5-9 14:50 上傳
作者: laoguang 時間: 2019-5-9 16:16
淘寶上沒找到
作者: eagler8 時間: 2019-5-9 18:21
第三個LED 實驗是模擬爆閃警燈,啟動 Arduino IDE,打開文件‐-示例‐-Eagler8,調用18個示例實驗程序中的第3項---Blink3,源程序如下:
/*
Eagler8實驗程序列表
03 Blink3:模擬爆閃警燈
*/
int led1 = 12;
int led2 = 13;
int i,j;
void setup() {
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
}
void loop() {
for(i=0;i<10;i++){
digitalWrite(led1, HIGH);
delay(30);
digitalWrite(led1, LOW);
delay(40);
}
for(i=0;i<10;i++){
digitalWrite(led2, HIGH);
delay(30);
digitalWrite(led2, LOW);
delay(40);
}
}
作者: eagler8 時間: 2019-5-9 21:51
搜9合一多功能擴展板就行
作者: eagler8 時間: 2019-5-9 21:55
04 Breath_LED:
D9 全彩 LED 模擬紅色呼吸燈源程序:
/*
Eagler8實驗程序列表
04 Breath_LED:D9 全彩 LED 模擬紅色呼吸燈
*/
#define LED 9
int i = 0;
void setup()
{
pinMode(LED,OUTPUT);
}
void loop()
{
for(i=0;i<255;i++)
{
analogWrite(LED,i);
delay(15);
}
for(i=255;i>0;i--)
{
analogWrite(LED,i);
delay(15);
}
analogWrite(LED,0);
delay(1000);
}
01.jpg (47.33 KB, 下載次數: 81)
下載附件
2019-5-9 21:55 上傳
作者: eagler8 時間: 2019-5-9 21:56
在手冊上查到 analogWrite( )
02.jpg (61.18 KB, 下載次數: 71)
下載附件
2019-5-9 21:56 上傳
作者: eagler8 時間: 2019-5-9 21:57
使用 for 循環使LED 產生漸亮漸滅的效果,i++和i--大概是遞增與遞減的意思,先用隨機數來試試......
03.jpg (14.83 KB, 下載次數: 66)
下載附件
2019-5-9 21:57 上傳
04.jpg (12.46 KB, 下載次數: 80)
下載附件
2019-5-9 21:57 上傳
作者: eagler8 時間: 2019-5-9 21:58
找到了變量的模塊,第一步,實現了遞增逐漸亮......
05.jpg (15.85 KB, 下載次數: 77)
下載附件
2019-5-9 21:58 上傳
06.jpg (14.86 KB, 下載次數: 63)
下載附件
2019-5-9 21:58 上傳
作者: eagler8 時間: 2019-5-9 21:58
最后實驗效果基本一致,只是生成的代碼有點不一樣
07.jpg (35.34 KB, 下載次數: 72)
下載附件
2019-5-9 21:58 上傳
08.jpg (24.39 KB, 下載次數: 82)
下載附件
2019-5-9 21:58 上傳
|
作者: eagler8 時間: 2019-5-9 21:59
為了實驗效果,做了些小改動
09.jpg (32.35 KB, 下載次數: 32)
下載附件
2019-5-9 21:59 上傳
10.jpg (21.78 KB, 下載次數: 31)
下載附件
2019-5-9 21:59 上傳
歡迎光臨 (http://www.zg4o1577.cn/bbs/) |
Powered by Discuz! X3.1 |
主站蜘蛛池模板:
亚洲美女网站
|
久久精品国产一区二区电影
|
不卡在线一区
|
九九免费视频
|
在线欧美a
|
亚洲欧美视频一区
|
成人欧美一区二区
|
日本精品国产
|
欧美日韩在线综合
|
免费久久网
|
一区二区三区国产
|
福利视频一区二区
|
成人欧美一区二区三区在线观看
|
91av精品|
国产一区精品
|
久久草在线视频
|
av网站观看
|
一区二区三区高清不卡
|
日本色高清
|
欧美性生交大片免费
|
色综合99
|
国产精品久久久乱弄
|
亚洲第一成人影院
|
亚洲电影成人
|
色资源在线
|
一区二区三区在线免费观看视频
|
国产情品
|
免费三级网站
|
亚洲精品免费在线观看
|
国内精品在线视频
|
一区二区免费视频
|
九色在线
|
亚洲欧美精品久久
|
亚洲精品免费观看
|
国产色黄
|
亚洲有码转帖
|
国产精品一区二区久久
|
五月婷婷在线播放
|
国产高清在线精品一区二区三区
|
久久久精品一区二区三区
|
久久精品二区
|