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

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

?? flash.c

?? CF8051F040開發板的 flash_download程序
?? C
字號:
/************************************************************************************
*  Copyright (c) 2004,西安銘朗電子科技有限責任公司
*            All rights reserved.
*
* 文件名稱: flash.C
* 文件標識: none
* 適用器件: w29c020
* 
* 摘 要: 本文件是字庫(GB2312)讀寫子程序;使用外部22.1184MHz晶振.
* 
* 當前版本:1.2
* 作 者:張寧強
* 完成日期:2006年1月10日
*
* 歷史版本:1.0 
* 原作者 : 李林利 盧陽
* 完成日期:2005年6月1日
*************************************************************************************/

/************************************************************************************/
// 引用外部頭文件

#include "c8051f040.h"
#include "flash.h"
#include "delay.h"

/************************************************************************************/

/************************************************************************************
* 函數名稱:flash_write_protect;
*
* 函數功能描述:Flash寫保護函數;1:打開保護進行讀寫,0:進入保護狀態模式;
*              
* 輸入參數:Flash寫保護開關;
*
* 返回數據:none;
*
* 注意:    none;
************************************************************************************/

void flash_write_protect(bool flag)
{	
	unsigned char xdata *ad;
	char data SFRPAGE_SAVE = SFRPAGE;    // Save Current SFR page   
    SFRPAGE = SFR_PAGE_F;    			// set SFR page F

	if(flag==0)
	{
		P4&=0xf5;
		P4|=0x05;
		ad=0xd555;
		*ad=0xaa;

		P4&=0xf2;
		P4|=0x02;
		ad=0xeaaa;
		*ad=0x55;

		P4&=0xf5;
		P4|=0x05;
		ad=0xd555;
		*ad=0x80;

		P4&=0xf5;
		P4|=0x05;
		ad=0xd555;
		*ad=0xaa;

		P4&=0xf2;
		P4|=0x02;
		ad=0xeaaa;
		*ad=0x55;

		P4&=0xf5;
		P4|=0x05;
		ad=0xd555;
		*ad=0x20;

		Delay_ms(10);
	}
	else
	{
		P4&=0xf5;
		P4|=0x05;
		ad=0xd555;
		*ad=0xaa;

		P4&=0xf2;
		P4|=0x02;
		ad=0xeaaa;
		*ad=0x55;

		P4&=0xf5;
		P4|=0x05;
		ad=0xd555;
		*ad=0xa0;
	}
	SFRPAGE = SFRPAGE_SAVE;          // Restore SFR page
}

/***********************************************************************************
* 函數名稱:flash_chip_erase;
*
* 函數功能描述:Flash芯片擦除程序;
*              
* 輸入參數:none;
*
* 返回數據:none;
*
* 注意:    none;
************************************************************************************/

void flash_chip_erase(void)
{
	unsigned char xdata *ad;
	char data SFRPAGE_SAVE = SFRPAGE;    // Save Current SFR page   
    SFRPAGE = SFR_PAGE_F;    			// set SFR page F

	P4&=0xf5;
	P4|=0x05;
	ad=0xd555;
	*ad=0xaa;

	P4&=0xf2;
	P4|=0x02;
	ad=0xeaaa;
	*ad=0x55;

	P4&=0xf5;
	P4|=0x05;
	ad=0xd555;
	*ad=0x80;

	P4&=0xf5;
	P4|=0x05;
	ad=0xd555;
	*ad=0xaa;

	P4&=0xf2;
	P4|=0x02;
	ad=0xeaaa;
	*ad=0x55;

	P4&=0xf5;
	P4|=0x05;
	ad=0xd555;
	*ad=0x10;

	Delay_ms(50);
	SFRPAGE = SFRPAGE_SAVE;          // Restore SFR page
}


/***********************************************************************************
* 函數名稱:flash_write_byte;
*
* 函數功能描述:Flash寫入字節函數程序;
*              
* 輸入參數:unsigned long類型地址,unsigned char類型數據;
*
* 返回數據:none;
*
* 注意:    none;
************************************************************************************/

void flash_write_byte(unsigned long address, unsigned char dat)
{
	unsigned char xdata *x;
	unsigned int temp;
	unsigned char sec;
	char data SFRPAGE_SAVE = SFRPAGE;    // Save Current SFR page   
    SFRPAGE = SFR_PAGE_F;    			// set SFR page F
	temp=address|0xc000;
	sec=address>>14;
	P4=sec;
	x=temp;
	*x=dat;
	SFRPAGE = SFRPAGE_SAVE;          // Restore SFR page
}

/***********************************************************************************
* 函數名稱:flash_write_byte_save;
*
* 函數功能描述:Flash寫入字節函數程序;
*              
* 輸入參數:unsigned long類型地址,unsigned char類型數據;
*
* 返回數據:none;
*
* 注意:    none;
************************************************************************************/

void flash_write_byte_save(unsigned long address, unsigned char dat)
{
	unsigned char xdata a[128];
	unsigned int temp;
	unsigned int t;
	unsigned char sec;
	char data SFRPAGE_SAVE = SFRPAGE;    // Save Current SFR page   
    SFRPAGE = SFR_PAGE_F;    			// set SFR page F
	temp=address|0xc000;
	sec=address>>14;

	if(sec>15)
		return ;
	P4=sec;
	t=(temp-0xc000)%128;
	temp=temp-t;

	flash_read_page(address,a);
	a[t]=dat;
	flash_write_page(address,a);
	SFRPAGE = SFRPAGE_SAVE;          // Restore SFR page
}

/***********************************************************************************
* 函數名稱:flash_write_string;
*
* 函數功能描述:Flash寫入字符串函數程序;
*              
* 輸入參數:unsigned long類型地址,unsigned char類型數據起始指針,unsigned char類型數據長度;
*
* 返回數據:none;
*
* 注意:    none;
************************************************************************************/

void flash_write_string(unsigned long address, unsigned char *dat_sta, unsigned char count)
{
	if(count>127)
		return;
	while(count--)
	{
		flash_write_byte(address++,*dat_sta++);
	}
}

/***********************************************************************************
* 函數名稱:flash_write_page;
*
* 函數功能描述:Flash按頁寫入函數;
*              
* 輸入參數:unsigned long類型地址,unsigned char類型數據起始指針;
*
* 返回數據:none;
*
* 注意:    none;
************************************************************************************/

void flash_write_page(unsigned long address, unsigned char *dat)
{
	unsigned char i;
	i=0;
	while(i<128)
	{
		flash_write_byte(address++,*dat++);
		i++;
	}
}

/***********************************************************************************
* 函數名稱:flash_write_block;
*
* 函數功能描述:Flash按塊寫入函數;
*              
* 輸入參數:unsigned long類型地址,unsigned char類型數據起始指針;
*
* 返回數據:none;
*
* 注意:    none;
************************************************************************************/

void flash_write_block(unsigned long address, unsigned char *dat)
{
	unsigned char count;
	unsigned int ct;
	count=128;
	ct=address%0x3fff;
	address=address-ct;
	while(count--)
	{
		flash_write_page(address, dat);
		Delay_ms(10);

		address+=128;
		dat+=128;
	}
}

/***********************************************************************************
* 函數名稱:flash_read_byte;
*
* 函數功能描述:Flash讀取字節函數程序;
*              
* 輸入參數:unsigned long類型地址;
*
* 返回數據:unsigned char;
*
* 注意:    none;
************************************************************************************/

unsigned char flash_read_byte(unsigned long address)
{
	unsigned char xdata *x;
	unsigned int temp;
	unsigned char sec;
	char data SFRPAGE_SAVE = SFRPAGE;    // Save Current SFR page   
    SFRPAGE = SFR_PAGE_F;    			// set SFR page F
	temp=address|0xc000;
	sec=address>>14;
	if(sec>15)
		return 0xff;
	P4=sec;
	x=temp;
	return *x;
	SFRPAGE = SFRPAGE_SAVE;          // Restore SFR page
}

/***********************************************************************************
* 函數名稱:flash_read_page;
*
* 函數功能描述:Flash讀取頁函數程序;
*              
* 輸入參數:unsigned long類型地址,unsigned char類型數據存儲起始地址指針;
*
* 返回數據:none;
*
* 注意:    none;
************************************************************************************/

void flash_read_page(unsigned long address, unsigned char *buf)
{
	unsigned char xdata *x;
	unsigned char count=128;
	unsigned int temp;
	unsigned int t;
	unsigned char sec;
	char data SFRPAGE_SAVE = SFRPAGE;    // Save Current SFR page   
    SFRPAGE = SFR_PAGE_F;    			// set SFR page F
	
	temp=address|0xc000;
	sec=address>>14;
	if(sec>15)
		return ;
	t=(temp-0xc000)%128;
	temp=temp-t;
	P4=sec;
	x=temp;
	while(count--)
	{
		*buf++=*x++;
	}
	SFRPAGE = SFRPAGE_SAVE;          // Restore SFR page
}

/***********************************************************************************/
// 文件結束
/***********************************************************************************/


?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色婷婷精品大在线视频| 美脚の诱脚舐め脚责91| 精品日产卡一卡二卡麻豆| 欧美在线影院一区二区| 色女孩综合影院| 91麻豆国产香蕉久久精品| 高清shemale亚洲人妖| 国产综合久久久久久鬼色 | 日本一区二区三区免费乱视频| 欧美亚洲日本一区| 高清国产一区二区| 91小宝寻花一区二区三区| 91丝袜国产在线播放| 91在线你懂得| 欧美午夜影院一区| 在线综合视频播放| 日韩女优毛片在线| 日本一区二区三区在线观看| 中文字幕亚洲一区二区av在线 | 日韩精品一区二区三区老鸭窝| 欧美一区二区精品| 久久蜜臀精品av| 国产精品免费久久| 亚洲一区视频在线| 日韩成人dvd| 国产精品 欧美精品| 91欧美激情一区二区三区成人| 色成人在线视频| 欧美一级日韩免费不卡| 久久精品人人做人人综合 | 欧美喷潮久久久xxxxx| 日韩欧美一级二级| 亚洲欧洲在线观看av| 亚洲成人自拍偷拍| 国产精品一区在线观看你懂的| 成人av在线播放网址| 91久久精品一区二区二区| 欧美视频一二三区| 欧美国产在线观看| 亚洲一区二区四区蜜桃| 国产综合色产在线精品| 欧美视频一区二区三区在线观看 | 成人黄色在线看| 欧美日韩一卡二卡三卡| 国产欧美精品在线观看| 婷婷久久综合九色综合伊人色| 国产精品1区2区| 7777精品伊人久久久大香线蕉超级流畅 | 91精品欧美福利在线观看| 国产欧美一区二区精品性色| 午夜av一区二区三区| 99re这里只有精品首页| 日韩一级免费观看| 国产精品剧情在线亚洲| 麻豆精品视频在线观看视频| 91福利资源站| 1024成人网| 国产毛片精品视频| 日韩精品一区二区在线观看| 国产精品国产自产拍高清av| 精品一区二区在线免费观看| 色88888久久久久久影院按摩 | 风间由美一区二区av101| 欧美精选在线播放| 亚洲综合一区二区三区| 粉嫩一区二区三区在线看| 欧美一区午夜视频在线观看| 亚洲一区二区综合| 成人网在线播放| 日韩一区二区在线观看视频播放| 亚洲精品欧美在线| 9i在线看片成人免费| 久久久亚洲精华液精华液精华液 | 在线不卡中文字幕播放| 一区二区视频在线看| 成人黄色免费短视频| 久久精品亚洲精品国产欧美 | 波多野结衣视频一区| 国产日韩欧美电影| 国产呦精品一区二区三区网站| 日韩亚洲欧美一区二区三区| 免费观看30秒视频久久| 日韩三级精品电影久久久 | 三级一区在线视频先锋| 欧美日韩一区 二区 三区 久久精品 | 国产一区二区三区久久悠悠色av| 精品美女一区二区| 国产精品亚洲视频| 中文字幕综合网| 成人妖精视频yjsp地址| 亚洲图片激情小说| 欧美色图一区二区三区| 亚洲五码中文字幕| 欧美一卡二卡三卡| 国产一区欧美日韩| 亚洲欧洲精品天堂一级| 欧美艳星brazzers| 青青国产91久久久久久| 久久蜜桃一区二区| 岛国一区二区三区| 1024亚洲合集| 欧美一区二区视频网站| 麻豆成人91精品二区三区| 久久免费偷拍视频| 91麻豆免费观看| 日产精品久久久久久久性色| 精品国产伦理网| 成人一级片在线观看| 亚洲图片欧美一区| 精品国产乱码久久久久久浪潮 | 国产91在线观看丝袜| 亚洲欧美另类小说视频| 欧美日韩一区精品| 九九视频精品免费| 亚洲视频一区二区在线| 欧美一卡二卡三卡| 顶级嫩模精品视频在线看| 亚洲国产中文字幕在线视频综合 | 精品视频在线免费观看| 免费观看在线综合| 综合婷婷亚洲小说| 日韩免费电影网站| 色婷婷综合久久久久中文| 韩国三级在线一区| 亚洲综合图片区| 国产亚洲一本大道中文在线| 欧洲一区在线观看| 国产乱码精品一区二区三 | 国产在线一区观看| 亚洲综合色丁香婷婷六月图片| 精品国精品国产| 欧美性极品少妇| 国产不卡一区视频| 美女视频一区二区| 亚洲国产日韩精品| 国产精品视频第一区| 欧美va亚洲va国产综合| 色妹子一区二区| 99精品久久只有精品| 国产成人亚洲综合a∨婷婷| 午夜电影网一区| 夜夜揉揉日日人人青青一国产精品| 2欧美一区二区三区在线观看视频| 欧美最猛黑人xxxxx猛交| 99久久99久久综合| 国产盗摄一区二区三区| 蜜臀91精品一区二区三区 | 欧美一卡2卡3卡4卡| 色综合久久综合网欧美综合网| 国产精选一区二区三区| 午夜av区久久| 男人的天堂亚洲一区| 日日夜夜精品视频免费| 一区二区在线免费| 夜夜嗨av一区二区三区网页| 综合分类小说区另类春色亚洲小说欧美| 欧美精彩视频一区二区三区| 久久婷婷国产综合精品青草| 日韩免费视频线观看| 日韩欧美一级在线播放| 欧美一区二区三级| 日韩一级完整毛片| 亚洲精品一区二区三区四区高清| 日韩色在线观看| 精品国产一区久久| 国产午夜精品福利| 中文字幕在线播放不卡一区| 亚洲欧美综合在线精品| 一区av在线播放| 日韩精品国产欧美| 紧缚奴在线一区二区三区| 激情图片小说一区| av午夜一区麻豆| 欧美性一级生活| 欧美mv日韩mv| 日本一区二区综合亚洲| 亚洲日本青草视频在线怡红院| 亚洲日本欧美天堂| 日韩国产高清在线| 国产综合色产在线精品| caoporn国产精品| 欧美在线一区二区| 精品国产91亚洲一区二区三区婷婷| 久久久午夜精品理论片中文字幕| 国产亚洲综合色| 一区二区三区视频在线看| 奇米一区二区三区av| 国产精品18久久久| 欧美影院一区二区三区| 欧美变态tickling挠脚心| 中文字幕不卡的av| 天堂一区二区在线| 国产激情精品久久久第一区二区| 93久久精品日日躁夜夜躁欧美| 欧美久久久久久久久久| 国产精品女同一区二区三区| 亚洲综合色成人| 国产在线播放一区二区三区| 欧美亚洲一区三区| 精品国产精品一区二区夜夜嗨 |