Try   HackMD

控制板與程式設計入門

1. 關於Arduino Uno控制板

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

2. Arduino 程式基礎

2-1 setup和loop函式

Arduino程式都是由setup和loop所組成,而這兩者正式名稱為函式(funtion)(函式就是一段程式碼的集合。)以下是最基本的Arduino程式:

void setup(){ //函式名稱前面void代表沒有傳回值 函式名稱後面跟者小括號 } //函式監會空一行 void loop(){ //大括號必須成雙成對,"{"開始。"}"結束。 }

控制板每次重啟會執行一次setup()大括號中的程式,然後再執行loop()內的程式。

  • setup()作用為設定程式參數,且setup()只會被執行一次
  • loop()裡的程式敘述將被不停重複執行,直到電源關閉為止。

Arduino 程式可由五個部分組成 :

  1. 匯入函式庫與定義 (可有可無)
    #include <SoftEasyTranfer.h>
    #define LEDPIN 13;
  2. 宣告常數與全域變數 (可有可無)
    const float PI=3.14159;
    int r;
  3. 設定函式 (必要)
    void setup() {}
  4. 無限迴圈 (必要)
    void loop() {}
  5. 自訂函式 (可有可無)
    float area(float r) {
    float a=PIrr;
    return a;
    }

資源

http://yhhuang1966.blogspot.com/2015/09/arduino_14.html

課本練習P.094

程式碼

/*step 1 宣告常數與變數ˋ*/ //設定可變電阻針腳編號 const int sensorPin =0; //設定led針腳編號 const int ledPin = 9; /*step 2 設定led為輸出模式*/ void setup() { // put your setup code here, to run once: pinMode(ledPin,OUTPUT); } /*無限迴圈*/ void loop() { // put your main code here, to run repeatedly: //讀取可變電阻針腳的值 int value = analogRead(sensorPin); //根據可變電阻值計算led亮度 //將0~1023輸入轉為0~255 int intensity = map(value,0,1023,0,255); //設定連接led的針腳 analogWrite(ledPin,intensity); }

接線:
https://wokwi.com/projects/374057790772794369