#include "piccolo_all.h"
#include "spi.h"
Makródefiníciók | |
#define | BLKSIZE 64 |
#define | CMD_WRSR 0x01 |
#define | CMD_WRITE 0x02 |
#define | CMD_READ 0x03 |
#define | CMD_WRDI 0x04 |
#define | CMD_RDSR 0x05 |
#define | CMD_WREN 0x06 |
#define | SLAVE_ENABLE() mLED_4 = 0 |
#define | SLAVE_DISABLE() mLED_4 = 1 |
Függvények | |
void | waitFor25LC256 (void) |
void | memWrite25LC256 (union16 MemAddr, uint8 *pbuf) |
void | memRead25LC256 (union16 MemAddr, uint8 *pbuf) |
void | out2hex (unsigned char t) |
void | main (void) |
Hardver követelmények: a kísérleti áramkört egy 25LC256 SPI EEPROM-mal kell kiegészíteni, az összekötést az alábbi táblázat szerint alakítsuk ki:
PIC18 25LC256 =========================================== SDI <--------------------- SO (2) SDO ---------------------> SI (5) SCK ---------------------> SCK (6) LED4 -- Slave Select -----> CS (1) VDD ---------------------- VCC (8), WP(3), HOLD(7) GND ---------------------- GND (4)
Definíció a(z) 25lc256_spi.c fájlban.
void memRead25LC256 | ( | union16 | MemAddr, | |
uint8 * | pbuf | |||
) |
Egy memórialap (64 bájt) olvasása az EEPROM egy megadott címétől kezdődően, és eltárolása az adatbufferbe.
u16_MemAddr | a beolvasni kívánt memórialap kezdőcíme | |
*pu8_buf | mutató az adatbuffer kezdetéhez |
Definíció a(z) 25lc256_spi.c fájl 83. sorában.
void memWrite25LC256 | ( | union16 | MemAddr, | |
uint8 * | pbuf | |||
) |
Egy memórialap (64 bájt) írása a bemenő adatbufferből, az EEPROM egy megadott címétől kezdődően.
MemAddr | a memórialap kezdőcíme, ahová írunk | |
buf | mutató az adatbuffer kezdetéhez |
Definíció a(z) 25lc256_spi.c fájl 61. sorában.
void out2hex | ( | unsigned char | t | ) |
Egy előjel nélküli bájtot kétjegyű hexadecimális formában kiír a kimeneti bufferbe. Ez a függvény meghívja a blokkoló típusú _user_putc() függvényt!
Definíció a(z) 25lc256_spi.c fájl 100. sorában.
void waitFor25LC256 | ( | void | ) |
Várakozás arra, hogy az EEPROM befejezze az írást. Amíg az írás tart, addig az EEPROM STATUS regiszterének legalsó bitje (WIP) '1'-ben áll. A függvény blokkoló típusú, addig nem tér vissza, amíg az EEPROM foglalt.
Definíció a(z) 25lc256_spi.c fájl 46. sorában.