⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bootromfwr.bak

📁 msc1201 编程3
💻 BAK
字号:
// Texas Instruments
// Name:	BootRomFWR.c
// Revision: 	1.0
// Description: Write/ErasePage Flash Data/Program using BootRom Routine
// 				Using MSC1210-DAQEVM 
#include <REG1210.H>
#include <stdio.h>
#define FDM				1			// Flash Data Memory
#define FPM				0			// Flash Program Memory
extern char page_erase (int faddr, char fdata, char fdm);
extern char write_flash_chk (int faddr, char fdata, char fdm);
void main(void)
{  
	xdata char xchar _at_ 0x0400; 
	code  char cchar _at_ 0x1000;
	char error=0;
	CKCON &= 0xf8; 	// 0 MOVX cycle stretch
	PDCON &= 0xfd;		// turn on sys timer	
	USEC = 2-1;			// Flash Related Timer Setup
	MSEC = 1843-1;  
   RCAP2  = 65535;  // UART0 setup: 57600 Baud @ 1.8432MHz
   T2CON  = 0x34;   // 		T2 as baudrate generator 
   SCON   = 0x52;   // 		Async mode 1, 8-bit UART, enable rcvr, TI=1, RI=0
	printf("\x1b[46;37m\x1b[25C\x1b[2J");
	printf("MSC1210 VonNeumann SRAM Routines for Flash Data/Program Memory Write/Erase\n");
	//init_VonNeumann();
	if (!write_flash_chk(&xchar,0x55,FDM) && xchar==0x55 ) 		
		printf("Pass: Write Xdata 0x0400 with 0x55\n"); 	else error=1;
	if (!page_erase(&xchar, 0xff, FDM) && xchar== 0xff)
	   printf("Pass: Erase Xdata 0x400~0x47F\n"); 			else error=1;
	if (!write_flash_chk(&cchar,0xAA,FPM) && cchar==0xAA )
		printf("Pass: Write Code 0x1000 with 0xAA\n"); 		else error=1;
	if (!page_erase(&cchar, 0xff, FPM) && cchar== 0xff)
	   printf("Pass: Erase Code 0x1000~0x107F\n"); 			else error=1;	   
	if (error==1) printf("Error found. Testing fail.\n");

	while(1){;}
}

⌨️ 快捷键说明

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