35章:Arduino(アルドゥイーノ)演習(EEPROM/eeprom_Write編)

    作成2015.08.30

  1. Arduino(アルドゥイーノ)演習参照アドレス
     Arduino(アルドゥイーノ)演習は下記のアドレスを参照します。
    https://www.arduino.cc/en/Tutorial/HomePage


  2. EEPROM/eeprom_Writeの回路図
     パソコンとのUSB接続のみとなります。


  3. EEPROM/eeprom_Writeのスケッチ
    (1)メニューの「ファイル」_「スケッチの例」_「EEPROM」_「eeprom_Write」 で以下のスケッチが設定されます。
    /*
     * EEPROM Write
     * Stores values read from analog input 0 into the EEPROM.
     * These values will stay in the EEPROM when the board is
     * turned off and may be retrieved later by another sketch.
     */
    
    #include 
    
    /** the current address in the EEPROM (i.e. which byte we're going to write to next) **/
    int addr = 0; 
    
    void setup(){ /** Empty setup. **/}
    
    void loop()
    {
      /***
        Need to divide by 4 because analog inputs range from
        0 to 1023 and each byte of the EEPROM can only hold a
        value from 0 to 255.
      ***/
      int val = analogRead(0) / 4;
      /***
        Write the value to the appropriate byte of the EEPROM.
        these values will remain there when the board is
        turned off.
      ***/
      
      EEPROM.write(addr, val);
      /***
        Advance to the next address, when at the end restart at the beginning.    
        
        Larger AVR processors have larger EEPROM sizes, E.g:
        - Arduno Duemilanove: 512b EEPROM storage.
        - Arduino Uno:        1kb EEPROM storage.
        - Arduino Mega:       4kb EEPROM storage.
        
        Rather than hard-coding the length, you should use the pre-provided length function.
        This will make your code portable to all AVR processors.    
      ***/
      addr = addr + 1;
      if(addr == EEPROM.length())
        addr = 0;
      /***
        As the EEPROM sizes are powers of two, wrapping (preventing overflow) of an 
        EEPROM address is also doable by a bitwise and of the length - 1.
        ++addr &= EEPROM.length() - 1;
      ***/
      delay(100);
    }
    


  4. EEPROM/eeprom_Writeの実行
    (1)メニューの「スケッチ」_「マイコンボードに書き込む」で書込みされ、実行されます。
    (2)書込み可能なEEPROM 領域にアナログピンA0の1/4の値を書込みます。


  5. EEPROM/eeprom_Writeまとめ
    (1)書込み可能なEEPROM 領域にアナログピンA0の1/4の値を書込む演習です。




36章:Arduino(アルドゥイーノ)演習(EEPROM/eeprom_put編)に行く。

トップページに戻る。