main.c

来自「TI的DSP C6711上的FLASH的擦除代码」· C语言 代码 · 共 44 行

C
44
字号
/* Example Code for Flash Erase (One Sector) */

#define		TIMEOUT		0x1000000

unsigned short	*Flash555 ; 
unsigned short	*Flash2AA ;

void main( void )
{
	int 			i,page,*tmp;
	unsigned short	*FlashBase;

	Flash555 = ( unsigned short * )( 0x90000aaa ) ;
	Flash2AA = ( unsigned short * )( 0x90000554 ) ;

	tmp = (int *) 0x1800004;
	*tmp = 0xFFFFFF13 ; 						/* CE1: 16bit Space */
	
	/* Select Flash Sector(page) */
	page = 5 ; 									/* 0 <= page <= 14 */
	FlashBase = (unsigned short *) (0x90000000 | (page<<16));

	/* Flash Sector(page) Erase Sequence */
	*Flash555 = 0x0F0;
	*Flash555 = 0x0AA;
	*Flash2AA = 0x055;
	*Flash555 = 0x080;
	*Flash555 = 0x0AA;
	*Flash2AA = 0x055;
	*FlashBase = 0x30;
	for (i=0;i<TIMEOUT;i++) if ( *FlashBase & 0x080 ) break;
	if (i<TIMEOUT) 
		while(1);								/* Erase Complete */
	else
		while(1);								/* Erase Error */
}







⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?