========================================================
Arduino / Scratch for Arduino
考試題
1. ( )按鈕要接在A0~A5腳位。
2. ( )Arduino 的類比輸入腳位如未接上元件時,使用analogRead()指令取回的值,在Serial Monitor看到就是0。
3. ( )Arduino上所有的腳位都支援PWM脈衝寬度調變的功能
4. 如果LED腳位接反會發生什麼事?
5. ( )LED的正極是比較長的那隻腳
6. ( )Arduino Serial通訊的鮑率(baud rate)與Serial Monitor的鮑率無須相同。
7. 下列程式那邊錯了?
int led = 13; void loop() { |
8. ( )Serial.println()指令會自動換行。
9. ( )Serial Monitor只能顯示Serial.print()指令的結果,無法作為輸入之用。
10. ( )Serial Monitor需要連接Arduino板子才能開啟。
11. ( )Arduino可直接使用交流電源。
12. 請簡單說明歐姆定律,並計算電源電壓為10V,電流為100mA,則電阻應為多少歐姆?
13. 請說明數位感測器(例如超音波感測器)與類比感測器(例如光感測器)的不同之處。
14. 這行指令的功能?Serial.begin(9600);
15. digitalWrite()指令與analogWrite指令有何差別?
16. Arduino Mega 2560或是ATMega328,這個數字代表什麼意思?
17. 請列出任兩個有極性與無極性的電子元件
18. 請說明整數與浮點數的不同
19. 請寫出下列程式執行結果(本程式沒有錯誤)
int drive_gb = 100; long drive_mb; void setup() { Serial.begin(9600); Serial.print(“Your HD is “); drive_mb = drive_gb; drive_mb = drive_mb * 1024; Serial.print(“It can store “);
void loop() { } |
(參考http://learn.adafruit.com/all-about-leds)
操作題
1. 請移除Arduino驅動程式後安裝,並執行Blink範例程式成功
2. 請使用一個可變電阻控制兩個LED漸明漸暗,一個LED漸漸變亮時,另一個要漸漸變暗
3. 請在S4A環境中,接上三個LED燈,當可變電阻值大於200時量一顆燈,大於500時亮兩顆燈,大於800則全亮。反之小於200則全滅。
4. 使用按鈕,按一下LED亮起,再按一下則熄滅。
5. 使用按鈕,按三下之後讓原本熄滅的LED亮起。
試教題(如題目未指定腳位請任選即可)
1. 請帶領同學以Blink範例程式,串連三個LED並共同接地到同一個GND接點。
2. 請帶領同學安裝Scratch for Arduino環境,並順利讓S4A環境抓到Arduino板子。
3. 請以 NXShield 函式庫(http://www.openelectrons.com/index.php?module=pagemaster&PAGE_user_op=view_page&PAGE_id=7)來說明如何安裝Arduino外部的函式庫。(本題只需要於打開Arduino IDE時能看到 NXShield的範例即可,不需要執行。
Raspberry Pi
考試題
1. ( )Raspberry Pi 的主要程式語言?
2. ( )Linux作業系統中的最高權限使用者為root。
3. ( )一般權限的使用者即可直接安裝或移除軟體套件。
4. ( )目前可用於Raspberry Pi的作業系統只有Raspbian。
5. (簡答)請說明三個Raspberry Pi的優點
6. (簡答)請說明Raspberry Pi 與Arduino的不同之處
7. ( )在LXTerminal下要安裝Arduino的語法為 apt-get install arduino
8. (簡答)請說明如果要在Raspberry Pi上外接儲存裝置(例如外接3.5吋硬碟或光碟機)時應注意的事項。
9. ( )下列哪一個為進入Raspbian的設定畫面指令:
A. sudo raspi-config
B. raspi-config
C. sudo ipconfig
D. sudo ifconfig
10. ( )下列哪一個為查看Raspbian的網路IP位置指令:
A. sudo raspi-config
B. raspi-config
C. sudo ipconfig
D. sudo ifconfig
11. ( )初次把Raspberry Pi的作業系統安裝好,其作業系統的記憶體儲存容量是:
A. 為您所使用的SD記憶體容量
B. 只有約2G Bytes左右
C. 100G Bytes
D. Unknown Bytes
12. Raspberry Pi的IO預設Tx/RX腳位是給:
A. Serial Console用
B. 滑鼠用
C. UART用
D. SPI用
13. Raspberry Pi的網頁檔,通常是放在哪一個路徑下:
A. var/www
B. home/pi
C. etc
D. dev
14. 下列哪一項不是Raspberry Pi的IO腳之特徵:
A. 可做UART
B. 可做SPI
C. 可做I2C
D. 可做CAN Bus
15. 下列哪一個不是Raspberry 的文字編輯程式:
A. nano
B. vi
C. vim
D. vic
操作題
1. 請燒錄Raspbian作業系統到SD記憶卡中並開機,進入圖形化桌面
2. 請燒錄Raspbmc作業系統到SD記憶卡中並開機,並播放任何一部影片(需有聲音)
3. 請使用葉老師的投影片,安裝lightthd並從另外一台電腦連入Rpi的網頁(page37)
4. 請使用葉老師的投影片,安裝RPIO函式庫並控制GPIO pin11的LED亮暗(page60)
試教題
1. 請帶領同學,完成遠端登入Raspberry Pi(葉老師投影片page26)
2. 請帶領同學,使用api-get安裝任何一個軟體之後再移除。
3. 請帶領同學安裝Arduino IDE到Raspberry Pi上,並設定Board / Port。
4. 請用Raspbian為OS,Arduino IDE為發展軟體,連接Arduino ADK板或是Motuduino或任何與Arduino相容的控制板,執行一個Input範例(例如AnalogReadSerial或任選)。
5. 如上題,請執行一個Output範例(例如Blink或任選)
Processing
考試題
1. 在Processing程式中,如果要清除畫面,要使用下列哪一個函式
A. clear()
B. clean()
C. background()
D. reset()
2. Processing2目前可以穩定控制Arduino
3. 在一開始的設定中,ellipse()函式的參數為下列何種
A. ellipse(圓心x, 圓心y,x半徑,y半徑)
B. ellipse(圓心x, 圓心y,x直徑,y直徑)
C. ellipse(左上角x, 左上角y,x半徑,y半徑)
D. ellipse(左上角x, 左上角y,x直徑,y直徑)
4. 先有Processing才有Arduino
5. 請問Processing是以下列何種程式語言為基礎
A. C++
B. JAVA
C. Python
D. LabVIEW
E. NXT-G
6. Processing跟其他語言不一樣,程式永遠不會執行完
7. 請寫出用Processing控制Arduino的通訊方式
8. 在由RGB組成的顏色中,0代表最亮,(0,0,0)就是白色
9. 若要在Processing程式中匯入媒體檔案,請問應該將檔案置於何處
10. 請畫出以下程式的執行結果
void setup(){
size(300,300);
background(255);
}
void draw(){
rect(50,60,40,30);
ellipse(50,60,40,30);
}
11. 在Android Mode下指定好sdk路徑之後,只要電腦有手機driver,按下執行便可直接灌程式
12. 在Android Mode灌程式與AppInventor相同,皆不需要安裝到手機裡
13. 關於鍵盤的讀取中,“key” 的資料型態為
A. int
B. float
C. char
D. String
E. word
F. boolean
14. Processing的特色為
A. 語法簡單,適合各專業領域人士
B. GUI介面強大,種類豐富而多樣
C. 語言較接近底層,功能較強大
D. 視覺化輸出,比傳統文字介面吸引人
E. 有各種不同的Mode,用途多樣
F. 資料線設計,利於邏輯思考
15. 請問以下程式中A,B,C,D,E哪一行是正確的
void setup(){
size(600,600);
background(255,50);———-(A)
nostroke();————————(B)
fill(230,60,180);
}
void loop(){—————————(C)
for(int i = 1,i < 10,i++){———(D)
ellipse(i*60,300,50,100);
}
if(mousePressed=true){——-(E)
background(255,50,255,50);
}
}
操作題
1. 請寫出與附件有同樣效果的程式
2. 請實作透過Processing控制Arduino的程式
3. 請設計一個有藝術感的動態圖像
試教題
1. 請介紹如何使用滑鼠及鍵盤控制,並實作範例
2. 請實作透過Arduino控制Processing畫面的程式
3. 請實作安裝Android Mode,並在手機上執行Processing程式
EV3
選擇題
1. 要使你的程式有多工功能,應該拉出下列何項指令?
A. start B. Logic operations C. Display D. Round
2. 下列哪一個屬性是Sensor?
A. Motor Rotation B. Move Tank C. Large Motor D. Move Steering
3. Constant 常數指令更改名稱的方式,是點選右上角空白方框輸入?
4. Add Project跟Add experiment是點選同一個鍵。
5. EV3的顏色感測器主要分成哪兩種模式?
6. EV3的軟體有支援NXT
7. EV3斷線無法清理的時候要按Ctrl+B
8. EV3的馬力值範圍是-100~100
9. 之前的藍牙訊息傳遞block接收跟發送在EV3中都被合併在messaging裡
10. Display顯示圖片不可以選
A.Wired B.Computer Files C.Project Images D.LEGO Image Files
操作題
1. 做出一台單光感測器循跡車(提示switch)
2. 做出一台使用比例控制方法的單光感測器循跡車
3. 做出一台使用雙觸碰感測器(裝於機器人前端與尾端)的避障車
4. 做出一台使用一個超音波感測器的避障車
5. 使用EV3 顏色感測器做出一個紅綠燈(紅‡黃‡綠,間隔各一秒)
6. 使用陀螺儀做出一台指南車,原地旋轉直到對正某個角度之後停止。
試教題
1. 教大家如何使用EV3軟體中的文字編輯環境(content editor)
2. 教大家何謂多工(multi tasking)
3. 教tank move指令以及對機器人轉彎的影響。
4. 如何更新EV3韌體
5. 如何使用EV3軟體所提供的官方資源(例如指令不會要怎麼查?)。
LabVIEW
是非選擇題
1. ( )LabView跟Arduino或c++一樣只有程式編輯介面(是非)
2. ( )LabView跟Arduino或c++一樣是屬於文字式(是非)
3. ( )資料線盡量不要彎曲(是非)
4. ( )要呼叫出Front Panel及Block Diagram的指令是crtl + H
5. 題組(選擇)
i. ( )當程式裡面有損毀的雜線我該使用:
(A)crtl+T (B)crtl+B (C)crtl+Z(D)crtl+E
ii. ( )當成是寫錯想要回上一步驟:
(A)crtl+T (B)crtl+B (C)crtl+Z(D)crtl+E