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

? 歡迎來(lái)到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? nflash32._c

?? USB通信程序開發(fā)(附源碼 精品)包括詳細(xì)論文說(shuō)明
?? _C
字號(hào):
/*++

Module Name:

         NFlash32.c

Abstract:

         Header file related to D12 module

Environment:

        ICCAVR 6.29

Revision History:

        04/23/2004      chenchil   created

--*/
/******************************************************************/
#include "io8515v.h"
#include "d12head.h"
#include "scsi.h"

unsigned int WriteResidueVal = 0;
unsigned char Flash_Write_Sec = 0x00;
unsigned char Flash_Write_Col = 0x00;
unsigned char Flash_Write_addl = 0x00;
unsigned char Flash_Write_addh = 0x00;
unsigned long ReadResidueVal = 0;
unsigned char Flash_Read_Sec = 0x00;
unsigned char Flash_Read_Col = 0x00;
unsigned char Flash_Read_addl = 0x00;
unsigned char Flash_Read_addh = 0x00;

void flashErase(unsigned char addh,unsigned char addl)
{
	char i=0;
	fWPs;//打開寫保護(hù)
	fCOMMAND = 0x60;
	fADD = addl;
	fADD = addh;
	fCOMMAND = 0xd0;
	asm("nop \n nop");
	while(!fRB);
	fCOMMAND = 0x70;
	i = fDATA;
	csram;
	fWPc;//寫保護(hù)
}

void flashWritecmd(void)
{
	unsigned char Erase_addh,Erase_addl;
	unsigned char Sour_addh,Sour_addl,Dest_addh,Dest_addl;
	unsigned char Sour_two_addh,Sour_two_addl,Dest_two_addh,Dest_two_addl;
	unsigned int Erase_Count = 0,i = 0;
	unsigned int CopyBack_Count = 0;
	unsigned int CopyBack_two_count = 0;
	unsigned int WritePageNum = 0;
	union{
		unsigned char c[2];
		unsigned int add;
	}Start_add;
	union{
		unsigned char c[2];
		unsigned int add;
	}End_add;
	flashErase(0xfa, 0x00);
	Sour_addh = XmtBuff.b[19];
	Sour_addl = (XmtBuff.b[20]/0x20) * 0x20;
	Dest_addh = 0xfa;
	Dest_addl = (XmtBuff.b[20]/0x20) * 0x20;
	CopyBack_Count = XmtBuff.b[20]%0x20;
	for(i=0;i<CopyBack_Count;i++){
		flashCopyBLack(Sour_addh,Sour_addl,Dest_addh,Dest_addl);
		Sour_addl ++;
		Dest_addl ++;
	}
	Erase_addl = (XmtBuff.b[20]/0x20) * 0x20;
	Erase_addh = XmtBuff.b[19];
	WritePageNum = (XmtBuff.b[22]<<8)+XmtBuff.b[23];
	Erase_Count = WritePageNum / 0x20;
	if(WritePageNum % 0x20){
		Erase_Count ++;
		if((WritePageNum % 0x20) > (0x20 - (XmtBuff.b[20] % 0x20)))
			Erase_Count ++;
	}else if(XmtBuff.b[20] % 0x20){
		Erase_Count ++;
	}
	Start_add.add = (XmtBuff.b[19]<<8)+XmtBuff.b[20];
	End_add.add = Start_add.add + WritePageNum;
	flashErase(0xfb, 0x00);
	Sour_two_addh = End_add.c[1];
	Sour_two_addl = End_add.c[0];
	Dest_two_addh = 0xfb;
	Dest_two_addl = End_add.c[0];
	CopyBack_two_count = (Erase_Count * 0x20) - CopyBack_Count -WritePageNum;
	for(i=0;i<CopyBack_two_count;i++){
		flashCopyBLack(Sour_two_addh,Sour_two_addl,Dest_two_addh,Dest_two_addl);
		Sour_two_addl ++;
		Dest_two_addl ++;
	}
	for(i=0;i<Erase_Count;i++){
		flashErase(Erase_addh, Erase_addl);
		if(Erase_addl == 224){
			Erase_addl = 0x00;
			Erase_addh ++;
		}else
			Erase_addl += 0x20;
	}
	for(i=0;i<CopyBack_Count;i++){
		Sour_addl --;
		Dest_addl --;
		flashCopyBLack(Dest_addh,Dest_addl,Sour_addh,Sour_addl);
	}
	for(i=0;i<CopyBack_two_count;i++){
		Sour_two_addl --;
		Dest_two_addl --;
		flashCopyBLack(Dest_two_addh,Dest_two_addl,Sour_two_addh,Sour_two_addl);
	}
	Flash_Write_Sec= 0x00;
	Flash_Write_Col= 0x00;
	Flash_Write_addl= XmtBuff.b[20];
	Flash_Write_addh= XmtBuff.b[19];
  	WriteResidueVal=(XmtBuff.b[22]<<8)+XmtBuff.b[23];
}

void flashWrite(unsigned char * PageBuff)
{
	unsigned int i;
	if(WriteResidueVal > 0)
	{
		fWPs;//打開寫保護(hù)
		fCOMMAND = Flash_Write_Sec;
		fCOMMAND = 0x80;
		fADD = 0x00;
		fADD = Flash_Write_addl;
		fADD = Flash_Write_addh;
		
		for(i=0;i<256;i++)
		{
			fDATA = PageBuff[i];
		}
		
		fCOMMAND = 0x10;
		asm("nop \n nop");
		while(!fRB);
		fCOMMAND = 0x70;
		i = fDATA;
		D12_COMMAND = 0xf2;// 清 OUT 緩沖區(qū)
		csram;
		fWPc;//寫保護(hù)
		
		if(Flash_Write_Sec== 0x01){
			WriteResidueVal = WriteResidueVal - 1;
			if(Flash_Write_addl== 255){
				Flash_Write_addl= 0x00;
				Flash_Write_addh++;
			}else
				Flash_Write_addl++;
		}
	}
}

void flashCopyBLack(unsigned char Source_addh,unsigned char Source_addl,unsigned char Destination_addh,unsigned char Destination_addl)
{
	unsigned char i;
	fWPs;//打開寫保護(hù)
	fCOMMAND = 0x00;
	fADD = 0x00;
	fADD = Source_addl;
	fADD = Source_addh;
	asm("nop \n nop");
	while(!fRB);
	
	fCOMMAND = 0x8a;
	fADD = 0x00;
	fADD = Destination_addl;
	fADD = Destination_addh;
	asm("nop \n nop");
	while(!fRB);
	fCOMMAND = 0x70;
	i = fDATA;
	csram;
	fWPc;//寫保護(hù)
}

void flashReadcmd(void)
{
	Flash_Read_Sec = 0x00;
	Flash_Read_Col = 0x00;
	Flash_Read_addl = XmtBuff.b[20];
	Flash_Read_addh = XmtBuff.b[19];
  	ReadResidueVal = (XmtBuff.b[22]<<8) + XmtBuff.b[23];
      	ReadResidueVal = 512 * ReadResidueVal;
	fCOMMAND = 0xff;
	asm("nop \n nop");
	while(!fRB);
}

void flashRead(void)
{
	unsigned char i;
	unsigned char  temp;
	if(ReadResidueVal > 0){
		ReadResidueVal -= 64;
		temp = (unsigned char)(Flash_Read_Col + 64);
		fCOMMAND = Flash_Read_Sec;
		fADD = Flash_Read_Col;
		fADD = Flash_Read_addl;
		fADD = Flash_Read_addh;
		asm("nop \n nop");
		while(!fRB);
		switch (Flash_Read_Sec)
		{
			case 0x00:
				if(temp == 0)
				{
					Flash_Read_Sec = 0x01;
					Flash_Read_Col = 0x00;
				}else
				{
					Flash_Read_Col += 64;
				}
				break;
			case 0x01:
				if(temp == 0)
				{
					if(Flash_Read_addl == 255){
						Flash_Read_addl = 0x00;
						Flash_Read_addh ++;
					}else
						Flash_Read_addl ++;
					Flash_Read_Sec = 0x00;
					Flash_Read_Col = 0x00;
				}else
				{
					Flash_Read_Col += 64;
				}
				break;
		}
		
		D12_COMMAND = 0x05;// 選擇 IN 端點(diǎn)(指針指向0位置)
		cwait;
		D12_COMMAND = 0xf0;// 寫緩沖區(qū)
		cwait;
		D12_DATA = 0x00;
		cwait;
		D12_DATA = 64;
		csram;
		for(i=0;i<64;i++)
		{
			D12_DATA = fDATA;
			cwait;
		}
		D12_COMMAND = 0xfa;// 設(shè)置 IN 緩沖區(qū)有效(滿標(biāo)志)
		csram;
	}
}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品你懂的在线欣赏| 久久久精品免费免费| 久久精品国产999大香线蕉| 久久日韩粉嫩一区二区三区| 99久久免费国产| 视频一区二区不卡| 国产无人区一区二区三区| 欧洲精品中文字幕| 激情五月激情综合网| 一区二区三区高清| 欧美精品一区二| 91久久线看在观草草青青| 一区二区三区四区国产精品| 欧美日韩黄视频| 婷婷开心激情综合| 国产精品美日韩| 欧美一区二区啪啪| 91啦中文在线观看| a美女胸又www黄视频久久| 亚洲福利视频三区| 中文字幕一区视频| 337p日本欧洲亚洲大胆色噜噜| 91麻豆国产福利在线观看| 美女视频一区二区| 亚洲制服欧美中文字幕中文字幕| 精品国产乱码久久久久久浪潮| 色一情一乱一乱一91av| 国产一区二区三区日韩| 亚洲大型综合色站| 国产午夜精品久久| 精品久久久久久亚洲综合网| 欧美日韩视频在线一区二区| 97se亚洲国产综合自在线不卡| 蜜桃视频在线观看一区| 亚洲高清久久久| 日韩毛片一二三区| 亚洲国产精品传媒在线观看| 欧美电影免费提供在线观看| 91麻豆精品国产91久久久久久久久| 99精品视频一区| 国产二区国产一区在线观看| 亚洲国产视频一区二区| 亚洲欧美经典视频| 亚洲欧洲韩国日本视频| 日本一区二区三区高清不卡 | 色综合视频在线观看| 国产精品一色哟哟哟| 亚洲影院久久精品| 国产精品久久久久久久久免费丝袜 | 久久久久久免费毛片精品| 91精品国产麻豆| 欧美疯狂性受xxxxx喷水图片| 欧美亚洲自拍偷拍| 在线日韩一区二区| 日本大香伊一区二区三区| 日本韩国精品在线| 成人激情综合网站| 国产91色综合久久免费分享| 国产精品亚洲专一区二区三区| 久久精品国产亚洲高清剧情介绍 | 麻豆精品国产传媒mv男同| 免费成人在线播放| 韩国视频一区二区| 国产成人精品1024| 99久久免费精品高清特色大片| 色综合天天在线| 欧美久久一区二区| 日韩欧美中文字幕制服| 精品人在线二区三区| 精品美女一区二区三区| 国产日韩影视精品| 一区二区三区四区不卡在线 | 亚洲精品菠萝久久久久久久| 亚洲精品水蜜桃| 一区二区中文字幕在线| 一区二区三区中文字幕电影| 亚洲视频一二三| 久久精品国内一区二区三区| 激情深爱一区二区| 成人黄色av网站在线| 色欲综合视频天天天| 欧美久久一二三四区| 精品国产91乱码一区二区三区 | 亚洲国产精品嫩草影院| 日本不卡视频在线观看| 精品一区二区三区久久| 国产精品资源在线观看| 91丝袜美女网| 欧美裸体一区二区三区| 91精品国产乱| 国产精品人人做人人爽人人添| 亚洲黄色录像片| 日韩av中文字幕一区二区| 国产一区二区成人久久免费影院| 国产mv日韩mv欧美| 欧美性受xxxx| 久久在线观看免费| 亚洲人成精品久久久久久| 日本视频免费一区| 成人网页在线观看| 91久久奴性调教| 日韩欧美一二三四区| 精品国产免费人成在线观看| 亚洲欧美视频在线观看| 美女精品自拍一二三四| 成人免费av资源| 欧美一级日韩不卡播放免费| 中文字幕在线一区| 免费成人av在线播放| 99国产精品99久久久久久| 欧美一级日韩免费不卡| 亚洲丝袜美腿综合| 蜜桃久久久久久| 91丨九色丨黑人外教| xnxx国产精品| 洋洋av久久久久久久一区| 国产自产2019最新不卡| 97久久精品人人爽人人爽蜜臀 | 欧美mv和日韩mv国产网站| 亚洲欧美日韩国产中文在线| 国产乱子轮精品视频| 欧美日韩五月天| 中文字幕亚洲精品在线观看| 久久av中文字幕片| 欧美丝袜丝交足nylons| 国产精品三级电影| 久久99热狠狠色一区二区| 欧美亚洲综合久久| 精品国产凹凸成av人网站| 狠狠狠色丁香婷婷综合激情| 色婷婷综合在线| 国产精品色眯眯| 国产精品一卡二| 日韩欧美中文字幕公布| 午夜免费久久看| 欧美最猛黑人xxxxx猛交| 精品久久久久av影院| 亚洲一区二区偷拍精品| 一本大道久久a久久综合| 国产精品精品国产色婷婷| 国产精品一线二线三线精华| 精品国产伦一区二区三区观看方式| 亚洲成人免费视| 色哟哟国产精品免费观看| 中文字幕一区二区三区乱码在线| 国产一区二区中文字幕| 欧美mv日韩mv国产网站| 久久99精品久久久久久国产越南| 91精品一区二区三区在线观看| 日本不卡一二三| 日韩免费看的电影| 久久精品国产一区二区| 国产女主播视频一区二区| 成人深夜福利app| 欧美激情中文字幕一区二区| 成人app网站| 国产精品国产三级国产a| 91麻豆视频网站| 亚洲综合一区二区精品导航| 91精品福利视频| 日韩在线播放一区二区| 日韩一区二区在线看片| 国产精品羞羞答答xxdd | 亚洲精品国产无套在线观| 欧美日韩一区二区三区不卡| 亚洲午夜久久久久久久久电影网| 成人h精品动漫一区二区三区| 亚洲精品大片www| 欧美日韩一二区| 韩国欧美一区二区| 中文字幕一区二区三区不卡| 国产精品亚洲专一区二区三区 | 亚洲欧美日韩电影| 色婷婷国产精品综合在线观看| 亚洲成人午夜影院| 精品日韩欧美在线| 91成人在线免费观看| 五月婷婷激情综合| 国产成人自拍网| 欧美一区二区精品在线| 国产精品一区在线观看乱码| 亚洲欧美激情在线| 精品成a人在线观看| 色偷偷成人一区二区三区91| 日本色综合中文字幕| 欧美激情综合在线| 欧美一级片在线| 91精品福利视频| 国产成人超碰人人澡人人澡| 亚洲成人自拍偷拍| 中文字幕精品三区| 日韩一区二区精品在线观看| 91在线免费看| 精东粉嫩av免费一区二区三区| 一区二区在线观看av| 国产色爱av资源综合区| 8x8x8国产精品| 91国产视频在线观看| 粉嫩13p一区二区三区| 奇米精品一区二区三区在线观看一|