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

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

?? iap.c

?? smart2300平臺全部驅動例程 LPC2378所有中間件
?? C
字號:

#include "IAP.h"

/*定義CCLK值大小,單位為KHz*/
#define		IAP_FCCLK	48000

#define 	IAP_ENTER_ADR   0x7FFFFFF1              // IAP入口地址定義

uint32	paramin[8];		                            //IAP入口參數緩沖區
uint32	paramout[8];	                            //IAP出口參數緩沖區

/*********************************************************************************************************
**函數名稱:SelSector
**函數功能:IAP操作緩沖區選擇,代碼為50
**入口參數:sec1	起始扇區
**			sec2	終止扇區
**出口參數:IAP 操作狀態碼
**			IAP返回值(paramout緩沖區)
********************************************************************************************************/
uint32	SelSector(uint8	sec1, uint8	sec2)
{
	paramin[0] = IAP_SELECTOR;	                    //設置命令字
	paramin[1] = sec1;			                    //設置參數
	paramin[2] = sec2;
	(*(void(*)())IAP_ENTER_ADR)(paramin,paramout);	//調用IAP服務程序
	return(paramout[0]);	                        //返回狀態碼
}
/*********************************************************************************************************
**函數名稱:RamToFlash
**函數功能:復制RAM的數據到FLASH,命令代碼51
**入口參數:dst		目標地址,即FLASH起始地址,以256字節為分界
**			src		源地址,即RAM地址,地址必須字對其
**			no		復制字節個數,為256/512/1024/4096
**出口參數:IAP 操作狀態碼
**			IAP返回值(paramout緩沖區)
********************************************************************************************************/
uint32	RamToFlash(uint32 dst, uint32 src, uint32 no)
{
	paramin[0] = IAP_RAMTOFLASH;	                //設置命令字
	paramin[1] = dst;				                //設置參數
	paramin[2] = src;
	paramin[3] = no;
	paramin[4] = IAP_FCCLK;
	(*(void(*)())IAP_ENTER_ADR)(paramin,paramout);	//調用IAP服務程序
	return(paramout[0]);			                //返回狀態碼
}
/*********************************************************************************************************
**函數名稱:EraseSector
**函數功能:擦除扇區,命令代碼52
**入口參數:sec1	起始扇區
**			sec2	終止扇區
**出口參數:IAP 操作狀態碼
**			IAP返回值(paramout緩沖區)
********************************************************************************************************/
uint32	EraseSector(uint32 sec1, uint32 sec2)
{
	paramin[0] = IAP_ERASESECTOR;	                //設置命令字
	paramin[1] = sec1;				                //設置參數
	paramin[2] = sec2;
	paramin[3] = IAP_FCCLK;
	(*(void(*)())IAP_ENTER_ADR)(paramin,paramout);	//調用IAP服務程序
	return(paramout[0]);			                //返回狀態碼
}
/*********************************************************************************************************
**函數名稱:BlankCHK
**函數功能:查空扇區,命令代碼53
**入口參數:sec1	起始扇區
**			sec2	終止扇區
**出口參數:IAP 操作狀態碼
**			IAP返回值(paramout緩沖區)
********************************************************************************************************/
uint32	BlankCHK(uint32	sec1, uint32 sec2)
{
	paramin[0] = IAP_BLANKCHK;	//設置命令字
	paramin[1] = sec1;				                //設置參數
	paramin[2] = sec2;
	paramin[3] = IAP_FCCLK;
	(*(void(*)())IAP_ENTER_ADR)(paramin,paramout);	//調用IAP服務程序
	return(paramout[0]);			                //返回狀態碼
}
/*********************************************************************************************************
**函數名稱:ReadParID
**函數功能:讀器件ID,命令代碼54
**入口參數:器件ID地址指針
**出口參數:IAP 操作狀態碼
**			IAP返回值(paramout緩沖區)
********************************************************************************************************/
uint32	ReadParID(uint32 *Device_ID)
{
	paramin[0] = IAP_READPARTID;	                //設置命令字
	(*(void(*)())IAP_ENTER_ADR)(paramin,paramout);	//調用IAP服務程序
	*Device_ID = paramout[1];
	return(paramout[0]);			                //返回狀態碼
}
/*********************************************************************************************************
**函數名稱:BootCodeID
**函數功能:讀boot代碼ID,命令代碼55
**入口參數:boot代碼ID地址指針
**出口參數:IAP 操作狀態碼
**			IAP返回值(paramout緩沖區)
********************************************************************************************************/
uint32	BootCodeID(uint32 *Boot_ID)	
{
	paramin[0] = IAP_BOOTCODEID;	                //設置命令字
	(*(void(*)())IAP_ENTER_ADR)(paramin,paramout);	//調用IAP服務程序
	*Boot_ID = paramout[1];
	
	return(paramout[0]);			                //返回狀態碼
}
/*********************************************************************************************************
**函數名稱:Compare
**函數功能:校驗數據,命令代碼56
**入口參數:dst		目標地址,即RAM/FLASH起始地址,地址必須字對齊
**			src		源地址,即RAM/RAM地址,地址必須字對齊
**			no		比較字節個數,必須能被4整除
**出口參數:IAP 操作狀態碼
**			IAP返回值(paramout緩沖區)
********************************************************************************************************/
uint32	Compare(uint32	dst,uint32	src,uint32	no)
{
	paramin[0] = IAP_COMPARE;	                        //設置命令字
	paramin[1] = dst;				                    //設置參數
	paramin[2] = src;
	paramin[3] = no;
	(*(void(*)())IAP_ENTER_ADR)(paramin,paramout);	    //調用IAP服務程序
	return(paramout[0]);			                    //返回狀態碼
}
/*********************************************************************************************************
**函數名稱:Reinvoke_ISP
**函數功能:重新調用ISP,命令代碼57。
**入口參數:無
**出口參數:無
********************************************************************************************************/
void  Reinvoke_ISP(void)
{
	paramin[0] = IAP_REINVOKE_ISP;					    // 設置命令字
	(*(void(*)())IAP_ENTER_ADR)(paramin,paramout);	    // 重新調用ISP
} 
/*********************************************************************************************************
**函數名稱:WriteFlash
**函數功能:向FLASH中寫入數據
**入口參數:dst		目標地址,即FLASH起始地址,地址必須以256字節對齊,即地址的低8位必須為0
**			src		源地址,即RAM地址,地址必須字對齊,即地址的低兩位必須為0
**			no		寫入字節數,必須為256/512/1024/4096
**出口參數:Compare的返回值,操作成功正確返回0
********************************************************************************************************/
uint8	WriteFlash(uint32 dst, uint32 src, uint32 no)
{
	SelSector((dst/0x1000),(dst+no)/0x1000);	        //選擇扇區
	EraseSector((dst/0x1000),(dst+no)/0x1000);	        //擦除扇區
	BlankCHK((dst/0x1000),(dst+no)/0x1000);		        //查空扇區
	
	SelSector((dst/0x1000),(dst+no)/0x1000);	        //選擇扇區
	
	RamToFlash(dst,src,no);			                    //寫數據到FLASH
	return(Compare(dst,src,no));	                    //比較數據
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一区二区三区高清在线| 成av人片一区二区| 亚洲蜜臀av乱码久久精品蜜桃| 久久综合资源网| 日韩精品一区在线| 91精品国产一区二区三区| 91视视频在线观看入口直接观看www | 日韩午夜激情av| 欧美大胆人体bbbb| 亚洲欧美日韩国产成人精品影院| 美国精品在线观看| 国产精品亚洲一区二区三区在线| 国产成人综合在线| 99久久综合99久久综合网站| 色偷偷久久一区二区三区| 欧美色大人视频| 欧美精品乱码久久久久久| 日韩视频免费观看高清完整版 | 99久久综合国产精品| 精品嫩草影院久久| 中文字幕在线观看一区| 亚洲激情男女视频| 免费精品视频在线| 国产传媒欧美日韩成人| 日韩免费电影网站| 美女脱光内衣内裤视频久久影院| 欧美日韩第一区日日骚| 欧美成人aa大片| 日韩成人一级片| 成人国产电影网| 国产精品视频九色porn| 日韩中文字幕区一区有砖一区| 日韩1区2区3区| 欧美精品v国产精品v日韩精品 | 免费人成在线不卡| 日韩欧美在线综合网| 五月激情丁香一区二区三区| 狠狠色狠狠色综合系列| 91色九色蝌蚪| 一区二区三区四区在线| 色偷偷成人一区二区三区91| 一区二区三区日韩在线观看| 色综合久久久久久久| 一区二区三区高清不卡| 欧美日韩精品一区二区| 日本欧美肥老太交大片| 久久伊人蜜桃av一区二区| 国产成人av资源| 最新中文字幕一区二区三区| 99精品在线观看视频| www久久久久| 国产夫妻精品视频| 日韩理论片网站| 成人一区二区三区视频| 日韩三级精品电影久久久| 精品一区二区三区蜜桃| 色久综合一二码| 国产日产欧美精品一区二区三区| 日本大胆欧美人术艺术动态| 26uuu亚洲综合色欧美| 国产精品羞羞答答xxdd| 亚洲免费av网站| 欧美大尺度电影在线| 不卡区在线中文字幕| 天堂成人免费av电影一区| 欧美大片日本大片免费观看| 波多野结衣欧美| 免费在线看一区| 国产精品久久久久9999吃药| 国产精品亚洲一区二区三区妖精| 亚洲另类在线制服丝袜| 欧美一区二区三区在线观看| 成人永久aaa| 蜜桃在线一区二区三区| 成人欧美一区二区三区白人| 91精品国产综合久久久蜜臀图片| 亚洲二区在线观看| 欧美无乱码久久久免费午夜一区 | 精品久久久久久久久久久院品网| 国产成人av福利| 日韩一卡二卡三卡四卡| 成人小视频免费在线观看| 午夜天堂影视香蕉久久| 国产精品―色哟哟| 日韩精品一区二区三区四区视频 | 国产激情一区二区三区| 午夜精品久久久久久| 国产欧美日韩久久| 制服丝袜一区二区三区| 91色.com| 成人一区二区三区视频| 狠狠色丁香久久婷婷综合丁香| 亚洲午夜免费视频| 中文字幕欧美区| 91小视频在线| 国产成人精品免费在线| 奇米亚洲午夜久久精品| 亚洲综合在线五月| 最新欧美精品一区二区三区| 久久婷婷一区二区三区| 91精品在线免费观看| 欧美亚洲一区三区| 一本色道久久加勒比精品| 成人国产视频在线观看| 国产老肥熟一区二区三区| 免费欧美在线视频| 日韩二区三区四区| 天堂一区二区在线| 亚洲1区2区3区视频| 国产日产精品一区| 久久久久久久久久久久久夜| 色狠狠色噜噜噜综合网| 91色porny蝌蚪| 91麻豆视频网站| 99久久久精品免费观看国产蜜| 成人av午夜电影| av午夜一区麻豆| 色久综合一二码| 欧美午夜影院一区| 欧美日韩1区2区| 91精品国产综合久久久蜜臀图片| 91精品国产91久久久久久一区二区 | 椎名由奈av一区二区三区| 国产精品丝袜黑色高跟| 国产精品入口麻豆九色| 欧美国产乱子伦 | 欧美日韩精品高清| 在线欧美日韩精品| 粉嫩绯色av一区二区在线观看| 国产在线精品免费| 亚洲五码中文字幕| 视频一区中文字幕国产| 日韩制服丝袜av| 精品午夜久久福利影院| 国产一区二区三区综合| 成人av影视在线观看| 色婷婷综合五月| 日韩网站在线看片你懂的| 国产亚洲欧美日韩在线一区| 欧美女孩性生活视频| 日韩欧美久久一区| 国产亚洲成年网址在线观看| 综合激情成人伊人| 亚洲一区二区不卡免费| 亚洲欧美视频在线观看视频| 亚洲一区成人在线| 国产在线观看一区二区| av电影在线观看一区| 在线视频综合导航| 精品sm在线观看| 欧美成人免费网站| 国产精品天干天干在线综合| 亚洲国产成人porn| 国产成人免费网站| 在线播放中文一区| 国产三级一区二区| 日韩专区一卡二卡| 成人黄色片在线观看| 欧美日本一区二区| 国产精品萝li| 免费高清在线一区| 99久久久久免费精品国产| 欧美一区二区三区精品| 欧美极品aⅴ影院| 免费不卡在线观看| 91浏览器打开| 久久久久久久久久电影| 亚洲国产日韩综合久久精品| 国产精品18久久久久久久网站| 欧美三电影在线| 国产精品人妖ts系列视频| 日本中文一区二区三区| 99国产精品久| 国产欧美日本一区二区三区| 日韩国产高清在线| 色菇凉天天综合网| 国产欧美综合在线| 激情深爱一区二区| 欧美一区二区三区四区高清| 亚洲另类在线一区| 99综合影院在线| 中文子幕无线码一区tr| 精品一区二区三区免费观看| 欧美午夜免费电影| 亚洲人快播电影网| 成人免费观看av| 欧美国产亚洲另类动漫| 国内一区二区视频| 日韩欧美专区在线| 蜜臀久久久久久久| 欧美日韩高清一区二区三区| 亚洲国产美国国产综合一区二区| 99re视频精品| 成人免费在线视频观看| 波多野结衣亚洲| 成人免费在线观看入口| 91丨九色丨国产丨porny| 国产精品久久毛片av大全日韩| 国产精品原创巨作av| 欧美精品一区二区三区一线天视频 |