X-Git-Url: http://git.rot13.org/?p=goodfet;a=blobdiff_plain;f=firmware%2Fapps%2Fspi%2Fspi.c;h=0a15799a084762d27780e34deb3779246672f0e6;hp=785c47600f73ee7f860ef3e88153e1952795010d;hb=4cf3fdb6a6d9a8844481d661e4d4c957c6a2ec87;hpb=e858c51543d928d837578d3e03dd5686e888220e diff --git a/firmware/apps/spi/spi.c b/firmware/apps/spi/spi.c index 785c476..0a15799 100644 --- a/firmware/apps/spi/spi.c +++ b/firmware/apps/spi/spi.c @@ -69,7 +69,10 @@ unsigned char spitrans8(unsigned char byte){ //! Enable SPI writing void spiflash_wrten(){ P5OUT&=~SS; //Drop !SS to begin transaction. - spitrans8(0x06);//Chip Erase + spitrans8(0x04);//Write Disable + P5OUT|=SS; //Raise !SS to end transaction. + P5OUT&=~SS; //Drop !SS to begin transaction. + spitrans8(0x06);//Write Enable P5OUT|=SS; //Raise !SS to end transaction. } @@ -110,7 +113,15 @@ void spihandle(unsigned char app, P5OUT|=SS; //Raise !SS to end transaction. break; case POKE://Poke up bytes from an SPI Flash ROM. + spiflash_wrten(); + P5OUT&=~SS; //Drop !SS to begin transaction. + spitrans8(0x02); //Poke command. + //First three bytes are address, then data. + for(i=0;i