Filter for 9250

Dependencies:   mbed

Fork of MPU9250 by Ilia Manenok

Committer:
farhanalam
Date:
Sun Jul 09 13:01:22 2017 +0000
Revision:
4:337af8bbd44e
Parent:
2:6b427a493d9b
MPU9250 read function created

Who changed what in which revision?

UserRevisionLine numberNew contents of line
farhanalam 2:6b427a493d9b 1 #ifndef FLASH_H
farhanalam 2:6b427a493d9b 2 #define FLASH_H
farhanalam 2:6b427a493d9b 3
farhanalam 2:6b427a493d9b 4 #include "mbed.h"
farhanalam 2:6b427a493d9b 5
farhanalam 2:6b427a493d9b 6
farhanalam 2:6b427a493d9b 7
farhanalam 2:6b427a493d9b 8 void write_EN_Flash(void);
farhanalam 2:6b427a493d9b 9 SPI SER_FLASH(PA_12,PB_4,PB_3);//MOSI,MISO,SCL
farhanalam 2:6b427a493d9b 10
farhanalam 2:6b427a493d9b 11 DigitalOut FLASH_CS(PA_4);// CS
farhanalam 2:6b427a493d9b 12
farhanalam 2:6b427a493d9b 13 // SPI commands for memory
farhanalam 2:6b427a493d9b 14
farhanalam 2:6b427a493d9b 15 #define read_ID 0x90
farhanalam 2:6b427a493d9b 16
farhanalam 2:6b427a493d9b 17
farhanalam 2:6b427a493d9b 18
farhanalam 2:6b427a493d9b 19 #define write_EN 0x06
farhanalam 2:6b427a493d9b 20 #define page_prog 0x02
farhanalam 2:6b427a493d9b 21 #define Read_Data 0x03
farhanalam 2:6b427a493d9b 22 #define Chip_Erase 0xC7
farhanalam 2:6b427a493d9b 23
farhanalam 4:337af8bbd44e 24
farhanalam 4:337af8bbd44e 25
farhanalam 2:6b427a493d9b 26 void write_EN_Flash()
farhanalam 2:6b427a493d9b 27 {
farhanalam 2:6b427a493d9b 28 FLASH_CS=0;
farhanalam 2:6b427a493d9b 29 SER_FLASH.write(write_EN);
farhanalam 2:6b427a493d9b 30 FLASH_CS=1;
farhanalam 2:6b427a493d9b 31 }
farhanalam 2:6b427a493d9b 32
farhanalam 2:6b427a493d9b 33 uint16_t read_flash_ID()
farhanalam 2:6b427a493d9b 34 {
farhanalam 2:6b427a493d9b 35 uint16_t ID;
farhanalam 2:6b427a493d9b 36 FLASH_CS=0;
farhanalam 2:6b427a493d9b 37 SER_FLASH.write(read_ID);
farhanalam 2:6b427a493d9b 38 SER_FLASH.write(0x00);
farhanalam 2:6b427a493d9b 39 SER_FLASH.write(0x00);
farhanalam 2:6b427a493d9b 40 SER_FLASH.write(0x00);
farhanalam 2:6b427a493d9b 41 uint8_t ID_h=SER_FLASH.write(0x00);
farhanalam 2:6b427a493d9b 42 uint8_t ID_l=SER_FLASH.write(0x00);
farhanalam 2:6b427a493d9b 43 FLASH_CS=1;
farhanalam 2:6b427a493d9b 44 ID = (ID_h<<8 | ID_l);
farhanalam 2:6b427a493d9b 45 return ID ;
farhanalam 2:6b427a493d9b 46 }
farhanalam 2:6b427a493d9b 47
farhanalam 2:6b427a493d9b 48 void SER_FLASH_ERASE()
farhanalam 2:6b427a493d9b 49 {
farhanalam 2:6b427a493d9b 50 write_EN_Flash();
farhanalam 2:6b427a493d9b 51 FLASH_CS=0;
farhanalam 2:6b427a493d9b 52 SER_FLASH.write(Chip_Erase);
farhanalam 2:6b427a493d9b 53 FLASH_CS=1;
farhanalam 2:6b427a493d9b 54 wait(1.5);
farhanalam 2:6b427a493d9b 55 }
farhanalam 2:6b427a493d9b 56
farhanalam 2:6b427a493d9b 57
farhanalam 2:6b427a493d9b 58 #endif