亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? jerry_isp.c

?? 自制的SyncMos的ISP下載源程序
?? C
字號:
/*--------------------------------------------------------
WenISP服務程序: Wenmain.c
版    本:V1.00
編譯工具:keil C51 7.20
所用 MCU:SyncMos's SM59264(PLCC)
作    者:文慶平
日    期:2005/02/24--->2005/03/30
版本來源:aclck100-->wenmain.c
---------------------------------------------------------*/
#pragma DEBUG CODE
#include <reg52.h>                
//#define V_T0 0xee00		 	//5ms  11.0592MHz 16位計數,mode1  
#define BUFSIZE 512
#define PAGESIZE 512
#define SIOTIMEOUT 65535	//123456 ge個循環
#define XBYTE ((unsigned char volatile code *) 0)

//以下為變量定義
sfr SCONF=0xbf;				//SM59264的寄存器	
sfr ISPFAH=0xf4;			//SM59264的寄存器	
sfr ISPFAL=0xf5;			//SM59264的寄存器	
sfr ISPFD=0xf6;				//SM59264的寄存器	
sfr ISPC=0xf7;				//SM59264的寄存器	
sfr P4=0xd8;				//SM59264的寄存器	?
sfr WDTKEY=0x97;			//SM59264的寄存器	
sfr WDTC=0x9f;				//SM59264的寄存器	
sfr	IICA=0xC1;

//sfr T2CON=0xc8;
sfr T2MOD=0xc9;
sfr DBANK=0x86;
sfr RCON=0x85;
sfr P1CON=0x9b;

union UnInt2Byte{
	unsigned int IntPart;
	unsigned char Byte[2];
};
bit BoolVerifyOk;
union UnInt2Byte data FrameLength;
union UnInt2Byte data AddrCount;

unsigned char data ReState,CheckSum,DriveID,ReData;
unsigned char xdata ReBuf[BUFSIZE+2];
unsigned int data FrameLengthCount;
unsigned int data SioTimeOut;

unsigned char code HeaderStr[]="<CST$>";
void serial(void);
void proisp(void);
void overwrite(void);
void SendBackByte(unsigned char);
void main(void) using 0
{	DriveID=0x0b;
	IICA=0x36;

   	SCONF=0x06;				//#0000 0110b;ISP enable of bit2     
	P1CON=0;
	TMOD=0x21;				//time0:mode1 時標 time1:mode2 baud
	SCON=0x50;	
	PCON=0x80;
	TH1=0xff;				//57600
	TR1=1;
	T2CON=0;
	T2MOD=0;
	TR0=0;
	TR2=0;
	RI=0;
	TI=0;

	EX0=0;
	ET0=0;
	EX1=0;
	ET1=0;
	ET2=0;
	ES=0;
	IE=0;
	EA=0;
	WDTKEY=0x1e;
	WDTKEY=0xe1;
	WDTC=0x20;
	WDTKEY=0xe1;
	WDTKEY=0x1e;


	P1=0xff;				//on sio_txd_en
	P3=0xff;
	P4=0x0f;
	SioTimeOut=0;
	ReState=0;

	ISPFD=0x55;
	ISPFD=0xaa;
	ISPFD=0x55;
	if(IICA!=0x36)
		DriveID=0x0a;
	for(;;)
    	{
	   
		if(RI)
			serial();
						//--------------超時錯檢查
		if(SioTimeOut)
			{
			SioTimeOut--;
			if(SioTimeOut==0)
				ReState=0;
			}
		}
}
/*************************************************/		
void serial(void) //--------------接收數據
{   

	RI=0;
    ReData=SBUF;	
	SioTimeOut=SIOTIMEOUT;
	switch(ReState)
		{
		case 0:				//"<CST$>"
		case 1:	
		case 2:	
		case 3:	
		case 4:	
		case 5:
				if(ReData==HeaderStr[ReState])
					ReState++;
				else
					 ReState=0;
	 		   	break;
		case 6:			// ID
				ReState++;
			    	break;
		case 7:
				FrameLength.Byte[0]=ReData;
				ReState++;
	    		break;
		case 8:	
				FrameLength.Byte[1]=ReData;
				ReState++;
				CheckSum=0;
				FrameLengthCount=0;
 		    	break;
		case 9:
				ReBuf[FrameLengthCount]=ReData;
				FrameLengthCount++;
				CheckSum=CheckSum+ReData;
				if(FrameLengthCount==FrameLength.IntPart)
					ReState++;
				break;
		case 10:ReState=0;
				if(ReData==CheckSum)
					proisp();
				else
				 	SendBackByte('E');
				break;
			}
}
void readid(void)
{		SendBackByte('Y');
		SendBackByte('<');
		SendBackByte('C');
		SendBackByte('S');
		SendBackByte('T');
		SendBackByte('$');
		SendBackByte('>');
		SendBackByte(DriveID);
}
void chip_erase(void)
{		ISPC=0x83; 			// fau0=1; ispf1 f0=11;
//		WaitForEnd();
		overwrite();
		SendBackByte('Y');
}
void chip_protect(void)
{	ISPC=0x81; 			// fau0=1; ispf1 f0=01;
//	WaitForEnd();
	SendBackByte('Y');
}
void chip_reset(void)
{		SendBackByte('Y');
		WDTKEY=0x1e;
		WDTKEY=0xe1;
		WDTC=0xa0;
		WDTKEY=0xe1;
		WDTKEY=0x1e;
		while(1);
}
void page_erase(void)
{		ISPFAH=ReBuf[1];	
		ISPFAL=ReBuf[2];
		ISPC=0x82;			// code flash fau0=0; ispf1 f0=10;
//		WaitForEnd();
		SendBackByte('Y');
}
void page_program(void)
{unsigned int i,addr;			
		AddrCount.IntPart=ReBuf[1]*PAGESIZE;
		ISPFAH=AddrCount.Byte[0];	
		ISPFAL=AddrCount.Byte[1];
		ISPC=0x82;					// code flash fau0=0; ispf1 f0=10;
	//	WaitForEnd();
		for(i=0;i<PAGESIZE;i++)					//頁編程
			{
			ISPFAH=AddrCount.Byte[0];	
			ISPFAL=AddrCount.Byte[1];	
			ISPFD=ReBuf[i+2];
			AddrCount.IntPart++;
			ISPC=0x80;				// code flash fau0=0; ispf1 f0=00;
	//		WaitForEnd();		
			}
				//頁校對
		BoolVerifyOk=1;
		AddrCount.IntPart=ReBuf[1]*PAGESIZE;
		for(i=0;i<PAGESIZE;i++)
			{
			addr=AddrCount.IntPart+i;
			if(ReBuf[i+2]!=XBYTE[addr])
				{
				BoolVerifyOk=0;
				overwrite();
				SendBackByte('V');		//校驗錯
				break;
				}
			}
		if(BoolVerifyOk)
			SendBackByte('Y');		//校驗對
}
/*******************************************/
void proisp(void)
{	switch(ReBuf[0])
		{
		case 1:	readid();		//讀芯片ID
				break;
		case 2:	chip_erase();	//芯片擦除	
				break;
		case 3:				//保護功能
				chip_protect();
				break;
		case 4:				//ISP mode --> User mode CPU復位 利用看門狗復位
				chip_reset();
				break;
		case 5:			//頁擦除
				page_erase();
				break;
		case 6:			//頁編程(頁擦除,頁編程,頁校對)
				page_program();
				break;
		default: break;
		}	
}

void SendBackByte(unsigned char feedbyte)
{
	TI=0;
	SBUF=feedbyte;
	while(TI==0);
	TI=0;
}
/*void WaitForEnd()
{
	do{	}while(ISPC>0x7f);
		
}*/
void overwrite(void)
{	ISPFAH=0;
	ISPFAL=0;
	ISPFD=0x02;
	ISPC=0x80;			
//	WaitForEnd();
	ISPFAL=1;
	ISPFD=0xfc;
	ISPC=0x80;			
//	WaitForEnd();
	ISPFAL=2;
	ISPFD=0x00;
	ISPC=0x80;			
//	WaitForEnd();
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲欧美另类在线| 美国十次了思思久久精品导航| 欧美日韩视频一区二区| 99精品久久久久久| 北岛玲一区二区三区四区| 成人av网站在线观看免费| k8久久久一区二区三区| 欧美一区二区三区在线观看| 日韩女优电影在线观看| 精品国产91亚洲一区二区三区婷婷 | 亚洲欧美日韩国产综合在线| 天天操天天色综合| 免费高清成人在线| 国产尤物一区二区| www.成人网.com| 久久久久久久久久久久久女国产乱 | 国产精品久久久久天堂| 亚洲天堂精品视频| 五月天欧美精品| 99re8在线精品视频免费播放| 久久久亚洲午夜电影| 日韩国产在线一| 亚洲黄色录像片| 麻豆精品在线观看| 3d成人动漫网站| 国产视频视频一区| 亚洲尤物在线视频观看| 精品一区二区免费视频| 99久久伊人精品| 337p日本欧洲亚洲大胆精品| 亚洲男同1069视频| 91视频.com| 日韩精品中文字幕一区二区三区 | 波多野结衣欧美| 国产日韩欧美一区二区三区综合 | 精品国精品国产尤物美女| 日日夜夜精品免费视频| 欧美片网站yy| 国产精品久久久一区麻豆最新章节| 韩国成人福利片在线播放| 色婷婷综合久久久中文字幕| 精品久久一二三区| 婷婷综合另类小说色区| 91精品国产综合久久久久久久久久| 午夜视频一区在线观看| 欧美一级在线免费| 久久精品国产999大香线蕉| 欧美专区日韩专区| 国产精品传媒视频| 一本到一区二区三区| 性久久久久久久久| 91黄色免费看| 国产精品久久久久久亚洲毛片| 不卡av免费在线观看| 亚洲一区二三区| 777xxx欧美| 国产乱国产乱300精品| 日韩视频在线你懂得| 亚洲一二三四在线观看| 欧美一区二区三区在线看| 国产精品99久久久久久似苏梦涵| 中文字幕一区二区三区乱码在线| 国内精品伊人久久久久影院对白| 国产欧美日韩三区| 一本大道久久a久久综合| 日韩精品视频网| 国产日韩欧美麻豆| 在线免费观看日韩欧美| 国内外成人在线| 亚洲综合色自拍一区| 精品国产百合女同互慰| 在线精品亚洲一区二区不卡| 国内精品伊人久久久久影院对白| 一区二区视频免费在线观看| 91网站最新地址| 久久不见久久见免费视频7| 亚洲三级视频在线观看| 日韩一级免费观看| 午夜精品一区二区三区三上悠亚| 色综合一区二区| 欧美日韩一区二区三区四区五区 | 欧美一区二区三区成人| 中文字幕一区二区三区四区| 不卡电影一区二区三区| 久久嫩草精品久久久久| 蜜桃视频在线观看一区| 91精品国产欧美一区二区| 毛片av中文字幕一区二区| 久久久噜噜噜久噜久久综合| 国产精品综合一区二区| 日韩欧美国产一区二区在线播放| 久久精品国产网站| 亚洲午夜电影网| 成人精品电影在线观看| 日本成人在线一区| 亚洲一区二区成人在线观看| 国产精品美女久久久久av爽李琼| 成人精品国产福利| 国产在线播放一区三区四| 婷婷中文字幕一区三区| 亚洲蜜臀av乱码久久精品蜜桃| 26uuu亚洲综合色欧美| 91精品国产福利| 欧美少妇bbb| 久久精品国产一区二区三| 亚洲成年人网站在线观看| 亚洲欧美日韩国产成人精品影院 | 欧美激情一区在线观看| 91在线免费播放| 豆国产96在线|亚洲| 午夜影院久久久| 亚洲一区二区三区视频在线播放| 亚洲欧洲精品一区二区三区| 国产精品美女视频| 国产精品亲子乱子伦xxxx裸| 国产精品污污网站在线观看| 国产色爱av资源综合区| 国产欧美日韩卡一| 中文字幕精品一区| 国产精品视频一二三区| 国产精品成人一区二区三区夜夜夜 | 免费一级片91| 久久国产生活片100| 伦理电影国产精品| 国产一区欧美二区| 国产精选一区二区三区| 成人黄色软件下载| 一本色道久久综合亚洲aⅴ蜜桃| 91国偷自产一区二区使用方法| 在线国产亚洲欧美| 777奇米四色成人影色区| 欧美va在线播放| 欧美韩国日本不卡| 亚洲欧美一区二区三区国产精品| 一区二区三区不卡在线观看 | av成人老司机| 欧美日韩一本到| 欧美xxx久久| 国产精品乱人伦一区二区| 一区二区三区加勒比av| 日韩二区三区在线观看| 国产精品一区二区x88av| a级精品国产片在线观看| 欧美日免费三级在线| 欧美成人猛片aaaaaaa| 中国av一区二区三区| 亚洲一卡二卡三卡四卡五卡| 看片网站欧美日韩| 成人三级伦理片| 国产成人一级电影| 国产精品一卡二卡在线观看| 99国产精品一区| 日韩女优av电影在线观看| 亚洲欧美日韩在线播放| 美日韩黄色大片| 99久久免费精品| 日韩三区在线观看| 亚洲人成网站精品片在线观看| 日本不卡在线视频| 国产999精品久久久久久绿帽| 欧美日韩精品免费观看视频| 国产亚洲女人久久久久毛片| 亚洲va欧美va天堂v国产综合| 韩国在线一区二区| 在线免费观看日本一区| 久久精品亚洲一区二区三区浴池| 亚洲午夜电影网| 99这里只有久久精品视频| 欧美大胆一级视频| 亚洲在线一区二区三区| 国产99久久久国产精品潘金| 制服丝袜激情欧洲亚洲| 中文字幕在线不卡一区| 国产一区二区在线影院| 欧美日韩在线播放三区四区| 国产精品欧美久久久久无广告| 免费成人在线播放| 欧美日韩免费一区二区三区视频| 国产精品午夜在线| 国产一区二区福利视频| 91精品国产综合久久久久久 | 久久影院电视剧免费观看| 亚洲精品久久嫩草网站秘色| 国产成人精品免费看| 精品国产免费人成电影在线观看四季| 亚洲第一狼人社区| 色综合久久中文综合久久97| 国产精品免费久久| 国产福利一区二区三区在线视频| 精品少妇一区二区三区日产乱码| 日韩二区三区四区| 91精品一区二区三区在线观看| 亚洲va欧美va人人爽| 欧美日韩专区在线| 亚洲第一激情av| 欧美日韩国产高清一区| 图片区小说区区亚洲影院| 欧美午夜寂寞影院| 亚洲综合激情另类小说区| 欧美午夜电影网|