Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

LPC1343¶ÁдSPI FLASH at25f1024

×Ô¼ºÐ´µÄ³ÌÐò,Ï£Íû¶Ô´ó¼ÒÓаïÖú,ÆäʵÕâÆ¬flashÊ®·ÖµÄ±¯¾ç,Ö»ÓÐ4¸öblock,1MBµÄ¿Õ¼ä,³¤ÆÚ·Å¿ÉÖ´ÐдúÂëÓõÄ,¶ÌÆÚ·ÅÊý¾Ý,Ê®·ÖµÄ²»ºÏÊÊ...
void DelayTime( void )
{
u8 i ;
for( i = 0 ; i < 10 ; i++ ) ;
}
void atWriteCmd( u8 cmd )
{
SSPSend( &cmd , 1) ;
}
void atWriteData(u8 * buf , u32 nBytes )
{
if( nBytes == 0 )
return ;
SSPSend( buf , nBytes );
}
void atReadData( u8 *buf , u32 nBytes )
{
if( nBytes == 0 )
return ;
SSPReceive( buf , nBytes ) ;
}
void atSendWREN()
{
atEnable();
atWriteCmd( CMDWREN ) ;
atDisable();
DelayTime();
}
u8 atReadRDSR( )
{
u8 stu ;
atEnable();
atWriteCmd(CMDRDSR);
atReadData( &stu , 1);
atDisable();
return stu ;
}
void atFlashInit( void )
{
LPC_IOCON->PIO1_10 &= ~0x07; /* SSP SSEL is a GPIO pin */
GPIOSetDir( PORT1, 10, 1 );
GPIOSetValue( PORT1, 10, 1 );
LPC_IOCON->PIO1_11 &= ~0x07; /* SSP SSEL is a GPIO pin */
GPIOSetDir( PORT1, 11, 1 );
GPIOSetValue( PORT1, 11, 1 );
SSPInit();
}
void atReadID( u8 * buf)
{
atEnable();
atWriteCmd(CMDRDID);
atReadData( buf , 2 ) ; // 0x1f
atDisable();
}
void atReadFlash(u32 addr , u8 * buf , u32 nBytes )
{
u8 cmd[4] ;
if( nBytes == 0 )
return ;
cmd[0] = CMDREAD ;
cmd[1] = addr>>16 ;
cmd[2] = addr>>8 ;
cmd[3] = addr ;
while( (atReadRDSR()&0x01 ) != 0x00 );
atEnable();
atWriteCmd( cmd[0] );
atWriteCmd( cmd[1] );
atWriteCmd( cmd[2] );
atWriteCmd( cmd[3] );
atReadData( buf , nBytes );
atDisable();
}
void atWriteFlash( u32 addr, u8 * buf , u32 nBytes )
{
u8 cmd[4];
if( nBytes == 0 )
return ;
if( nBytes < 256 )
{// if big than 256 , error Occur
atSendWREN();
while( (atReadRDSR()&0x02 ) != 0x02 ); // write enable
cmd[0] = CMDPROGRAM ;
cmd[1] = addr>>16 ;
cmd[2] = addr>>8 ;
cmd[3] = addr ;

atEnable();
atWriteCmd( cmd[0] );
atWriteCmd( cmd[1] );
atWriteCmd( cmd[2]


Ïà¹ØÎĵµ£º

FlashʹÓ÷þÎñÆ÷ʱ¼ä

ÔÚ×öFlashÓ¦ÓÃʱ£¬ÓÐʱ¿ÉÄÜ»áÓöµ½ÐèҪʹÓ÷þÎñÆ÷ʱ¼äµÄÇé¿ö£¬ÀýÈçÓ¦ÓóÌÐòÖÐÏÔʾµ±Ç°ÏµÍ³Ê±¼ä¡¢¶¨Ê±ÌáÐѵȹ¦ÄÜ¡£Ê¹ÓÃnew Date()´´½¨µÄÊǿͻ§¶ËµÄʱ¼ä£¬Õâ²¢²»ÊÇÎÒÃÇÐèÒªµÄ£¬¿Í»§¶Ëʱ¼äºÜÈÝÒ×±»Óû§¸ü¸Ä£¬ÎÒÃÇÐèҪͳһµÄ·þÎñÆ÷ʱ¼ä¡£
ʹÓÃFlashÓëºǫ́ͨÐÅ£¬ÎÒÏëÄúÓ¦¸ÃÒѾ­Ó¦Óõ½ÄúµÄÏîÄ¿ÖУ¬²»¹ÜʹÓÃÄÄÖÖ·½Ê½£¬¶¼¿ÉÒÔ°Ñ·þÎñ ......

¡¾·ÖÎö¡¿STM32´ÓFlashÖÐÔËÐгÌÐòµÄʱÐò·ÖÎö

´ó¼Ò¶¼ÖªµÀSTM32µÄCPUʱÖÓÆµÂÊ¿ÉÒÔ´ïµ½72MHz£¬ÒÔºó»¹»á¸ü¿ì£¬µ«ÊÇÓÉÓÚ°ëµ¼ÌåÖÆÔ칤ÒÕµÄÏÞÖÆ£¬´æ·Å³ÌÐòµÄFlash´æ´¢Æ÷²»¿ÉÄÜ´ïµ½Õâô¸ßµÄ¹¤×÷ƵÂÊ£¬ÕâÑùµ±CPUÖ±½Ó·ÃÎÊFlash´æ´¢Æ÷ʱ±ØÐë²åÈëµÈ´ýÖÜÆÚÒԵõ½ÕýÈ·µÄ½á¹û¡£
ÎÊÌâÊÇÔÚFlashµÄËٶȱÈCPUÂýµÄÇé¿öÏ£¬ÊDz»ÊÇ¿ÉÒÔ¼òµ¥µØËµSTM32ÔÚÖ´ÐÐFlashÖеijÌÐòʱÿÌõÖ¸Áî¶¼ÐèÒª²åÈë ......

CFI£¨Common Flash Interface£©Ïê½â

¡¾Ê²Ã´ÊÇCFI¡¿
CFI£¨Common Flash Interface£©£¬ÊÇJEDEC£¨Joint Electron Device Engineering Council£¬µç×ÓÆ÷¼þ¹¤³ÌÁªºÏίԱ»á£©Öƶ¨µÄÒ»¸ö½Ó¿Ú£¬
ÓÃÀ´°ïÖú³ÌÐò¶ÁÈ¡FlashµÄÖÆÔìÉÌIDºÍÉ豸ID£¬È·¶¨FlashµÄ´óС£¬»ñµÃflashµÄ¸÷¸öÎïÀíÌØÐÔ£¬±ÈÈçblock¿éµÄ²Á³ýʱ¼äµÈµÈ¡£
¡¾ÎªÊ²Ã´ÐèÒªÕâ¸öCFI¡¿
ÔÚÓ¦ÓÃCFI֮ǰ£¬FlashÆ÷¼þµ ......

NAND FLASHѧϰ(Ò») nand flash²Ù×÷¸ÅÊö

ÓÉÓÚNAND FLASH²Á³ýʱ£¬Ö»Äܰ´°´¿é²Á³ý£¬Òò´ËÔÚдÉÈÇøÊ±£¬
Ê×ÏÈÒª²Á³ýÒ»¸ö¿é¡£ÔÚ²Á³ý¿éǰ£¬±ØÐ뽫¿éÄÚÆäËûÊý¾Ý¸´ÖƳöÀ´£¬
ÓÉÓÚÒ»¸ö¿é±È½Ï´ó£¨128KB£©£¬ÎÞ·¨ÔÚMCUÄÚ¿ª±ÙÈç´Ë´óµÄ»º³åÇø¡£
Ö»ºÃ½èÖú¸ÃNAND FLASHÄÚµÄÒ³¸´ÖÆÃüÁ½«Ô­À´µÄ¿éÔÝʱ¸´ÖƵ½
Ò»¸ö½»»»ÓõĽ»»»¿éÖС£µ«ÊÇÈç¹û½öÓÃÒ»¸ö¿é×÷Ϊ½»»»µÄ»°£¬Ëü
¾Í»á±»Æµ ......

ubuntu flashÂÒÂëµÄ½â¾ö·½°¸


¸Õ²Å·ÃÎÊÒ»¸ö²©ÓѵÄÒ³Ãæ£¬ÔÚÏÂÃæÓÐÒ»ÐÐÏÔʾµÄÈ«ÊÇС·½¿é£¬ÕâÊÇÔõô»ØÊ£¬ÓÃÊó±êµãÒ»µã·¢ÏÖÔ­À´ÊÇflash£¬ÎÒµÄflash²å¼þÒѾ­×°ÁËѽ£¬Ôõô
»¹³öÏÖÕâÖÖÇé¿ö¡£
ÉÏÍøÒ»²é£¬Ô­À´ÊÇflashÂÒÂ룬½â¾ö·½·¨£º
linux@linux-desktop:~$ cd /etc/fonts/conf.d/
  ££½øÈëÅäÖÃÎļþĿ¼
linux@linux-desktop:/etc/fonts/conf.d$ l ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ