最終更新日 平成26年5月15日
内蔵データフラッシュをArduinoのEEPROMライブラリのように使うサンプルです。
メモリを頻繁に書き換えてしまうので、データフラッシュの書き換え可能回数が減ってしまいますので、ご注意ください。
// RXduino sample programs. // (C)2012-2014 Copyright TokushuDenshiKairo Inc. #include <rxduino.h> #include <stdio.h> #include <stdlib.h> #include <eeprom.h> void setup() { pinMode(PIN_LED0, OUTPUT); pinMode(PIN_LED1, OUTPUT); pinMode(PIN_LED2, OUTPUT); pinMode(PIN_LED3, OUTPUT); pinMode(PIN_SW , INPUT); digitalWrite(PIN_LED1, 1); Serial.begin(38400,SCI_AUTO); Serial.setDefault(); setvbuf(stdout,NULL,_IONBF,0); digitalWrite(PIN_LED3, 1); Serial.print("Hello rxduino\n"); } void loop() { static int x = 0; static int y = 1; printf("\x1b[1;1H"); printf("%04x\n",x); EEPROM.write(x,x+y); EEPROM.write(1023-x,x+y); for(int i=0;i<1024;i++) { if((i & 31) == 0) printf("%04x ",i); printf("%02x ",EEPROM.read(i)); if((i & 31) == 31) printf("\n"); } x++; if(x >= 512) { x = 0; y++; } if(Serial.available()) { if(Serial.read() == 'x') { for(int i=0;i<1024;i++) { EEPROM.write(i,0xff); } } } delay(1); }
このプログラムを動作させるときには、TERATERMで送受信ともCR+LFにしてください。
(C)2012-2014 特殊電子回路株式会社 All Rights Reserved