mirror of
				https://github.com/esp8266/Arduino.git
				synced 2025-10-30 04:26:50 +03:00 
			
		
		
		
	
		
			
				
	
	
		
			41 lines
		
	
	
		
			952 B
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			41 lines
		
	
	
		
			952 B
		
	
	
	
		
			C++
		
	
	
	
	
	
| /*
 | |
|    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 <EEPROM.h>
 | |
| 
 | |
| // the current address in the EEPROM (i.e. which byte
 | |
| // we're going to write to next)
 | |
| int addr = 0;
 | |
| 
 | |
| void setup() {
 | |
|   EEPROM.begin(512);
 | |
| }
 | |
| 
 | |
| 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(A0) / 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.  there are 512 bytes in
 | |
|   // the EEPROM, so go back to 0 when we hit 512.
 | |
|   // save all changes to the flash.
 | |
|   addr = addr + 1;
 | |
|   if (addr == 512) {
 | |
|     addr = 0;
 | |
|     EEPROM.commit();
 | |
|   }
 | |
| 
 | |
|   delay(100);
 | |
| }
 |