![](/media/cache/group/default_image.jpg.50x50_q85.jpg)
Some test with Nucleo and SPI EEPROM.
Dependencies: mbed
main.cpp@1:c667d1f8e407, 2015-01-19 (annotated)
- Committer:
- kaliczp
- Date:
- Mon Jan 19 23:17:04 2015 +0000
- Revision:
- 1:c667d1f8e407
- Parent:
- 0:a063a7db08f8
- Child:
- 2:1ad4d6a0ebfe
Check and set write enable finaly write byte 0 with 1.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
kaliczp | 0:a063a7db08f8 | 1 | #include "mbed.h" |
kaliczp | 0:a063a7db08f8 | 2 | |
kaliczp | 0:a063a7db08f8 | 3 | DigitalIn mybutton(USER_BUTTON); // Activate button |
kaliczp | 0:a063a7db08f8 | 4 | DigitalOut chipselect(D10); // ChipSelect (CS) pin |
kaliczp | 0:a063a7db08f8 | 5 | SPI eeprom(SPI_MOSI, SPI_MISO, SPI_SCK); // Activate SPI to ST eeprom |
kaliczp | 0:a063a7db08f8 | 6 | |
kaliczp | 0:a063a7db08f8 | 7 | #define WREN 0x06 |
kaliczp | 0:a063a7db08f8 | 8 | #define RDSR 0x05 |
kaliczp | 0:a063a7db08f8 | 9 | #define READ_LOW 0x03 |
kaliczp | 1:c667d1f8e407 | 10 | #define WRITE_LOW 0x02 |
kaliczp | 0:a063a7db08f8 | 11 | |
kaliczp | 0:a063a7db08f8 | 12 | int main() { |
kaliczp | 0:a063a7db08f8 | 13 | chipselect =1; |
kaliczp | 0:a063a7db08f8 | 14 | eeprom.frequency(1000000); // set 1 MHz clock rate |
kaliczp | 0:a063a7db08f8 | 15 | int i = 0; |
kaliczp | 0:a063a7db08f8 | 16 | while(1) { |
kaliczp | 0:a063a7db08f8 | 17 | if (mybutton == 0) { // Button is pressed |
kaliczp | 0:a063a7db08f8 | 18 | chipselect = 0; |
kaliczp | 0:a063a7db08f8 | 19 | eeprom.write(RDSR); |
kaliczp | 0:a063a7db08f8 | 20 | eeprom.write(0x00); |
kaliczp | 0:a063a7db08f8 | 21 | chipselect = 1; |
kaliczp | 0:a063a7db08f8 | 22 | chipselect = 0; |
kaliczp | 0:a063a7db08f8 | 23 | eeprom.write(WREN); |
kaliczp | 0:a063a7db08f8 | 24 | chipselect = 1; |
kaliczp | 0:a063a7db08f8 | 25 | wait_us(1); |
kaliczp | 0:a063a7db08f8 | 26 | chipselect = 0; |
kaliczp | 0:a063a7db08f8 | 27 | eeprom.write(RDSR); |
kaliczp | 0:a063a7db08f8 | 28 | eeprom.write(0x00); |
kaliczp | 0:a063a7db08f8 | 29 | chipselect = 1; |
kaliczp | 0:a063a7db08f8 | 30 | chipselect = 0; |
kaliczp | 1:c667d1f8e407 | 31 | eeprom.write(WRITE_LOW); |
kaliczp | 0:a063a7db08f8 | 32 | eeprom.write(0x00); |
kaliczp | 1:c667d1f8e407 | 33 | eeprom.write(0x01); |
kaliczp | 0:a063a7db08f8 | 34 | chipselect = 1; |
kaliczp | 0:a063a7db08f8 | 35 | wait(2); |
kaliczp | 0:a063a7db08f8 | 36 | } |
kaliczp | 0:a063a7db08f8 | 37 | } |
kaliczp | 0:a063a7db08f8 | 38 | } |
kaliczp | 0:a063a7db08f8 | 39 |