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

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

?? eeprom.c

?? dsp的C語言程序,各個模塊基本上齊全,很適合你的編程參考
?? C
字號:
#include	"register.h"
int	source[4]={0x2233,0x4455,0x4455,0x5566};
int	result[4];
int	n,control,control1;
//系統初始化子程序
void	sysinitial()
{
	asm(" setc INTM");//關閉總中斷
	asm(" clrc OVM");//累加器結果正常溢出
	asm(" clrc CNF");//B0被設置成數據空間
	SCSR1=0X81FE;//CLKIN=10M,CLKOUT=20M
	WDCR=0X0E8;//不使能看門狗
	IMR=0X00;//禁止所有中斷
	WSGR=0X0FFFF;//不使能所有的等待狀態
}
//I/O初始化子程序
void	ioinitial()
{
	MCRC=MCRC&0X8FFF;//定義IOPF4、IOPF5、IOPF6為通用I/O口
	PFDATDIR=PFDATDIR|0X3000;//IOPF5為輸出,IOPF4為輸出,且寫允許
		
}
//延時子程序 
 void delay(int x)
{	int count;

	for(count=0;count<x;count++)
		;
}
//啟動I2C總線子程序
void	I2CStart()
{
	PFDATDIR=PFDATDIR|0X0060;//SDA=SCL=1
	delay(72);//延時
	PFDATDIR=PFDATDIR&0x0FFBF;//SDA=0
	delay(72);//延時
	PFDATDIR=PFDATDIR&0x0FFDF;//SCL=0
	delay(24);//延時
}
//向I2C總線寫入數據子程序
void	I2CSendByte(unsigned int data)
{
	int flag,sz,k;
	PFDATDIR=PFDATDIR&0x0FFDF;//SCL=0
	delay(72);//延時
    PFDATDIR=PFDATDIR|0X4000;//定義IOPF6為輸出
	for(flag=0x0080;flag!=0X00;flag=flag>>1)
	{
	
		sz=data&flag;//保留相應位
		if(sz==0)PFDATDIR=PFDATDIR&0x0FFBF;//如果相應的位為0,則SDA=0;
		else PFDATDIR=PFDATDIR|0x0040;//如果相應的位為1,則SDA=1;
		delay(72);//延時
		PFDATDIR=PFDATDIR|0X0020;//SCL=1
		delay(72);//延時	                                       
		PFDATDIR=PFDATDIR&0x0FFDF;//SCL=0
		delay(24);//延時
	}
}
//檢查應答位子程序(24LC256的應答)
int	I2CRECACK()
{
	int k;
	PFDATDIR=PFDATDIR|0x0040;//SDA=1
	delay(24);//延時
	PFDATDIR=PFDATDIR&0x0BFFF;//SDA為輸入
	delay(24);//延時
	PFDATDIR=PFDATDIR|0X0020;//SCL=1
	delay(24);//延時
	if(PFDATDIR&0x0040)
		k=1;
		else k=0;
 	 PFDATDIR=(PFDATDIR|0X4000)&0XFF9F;/*SDA設為輸出,SDA=0,SCL=0*/
 	 delay(24);	//后來加的?。。。?    return(k);
}
//從I2C總線讀取數據子程序
int I2CRecByte()
{
	int k,flag,sz,kk=0x0000;
	PFDATDIR=PFDATDIR&0x0BFFF;//SDA為輸入
	PFDATDIR=PFDATDIR&0x0FFDF;//SCL=0 
	delay(72);
	for(flag=0x080;flag!=0;flag=flag>>1)
	{
		PFDATDIR=PFDATDIR|0X0020;//SCL=1
       	delay(72);//延時
	    sz=PFDATDIR&0X0040;//讀取SDA的值
	
		if(sz==0) kk=kk;//若SDA=0,在相應的
		else kk=kk|flag;//若SDA=1,在相應的數據位加數據位加0
		PFDATDIR=PFDATDIR&0x0FFDF;//SCL=0
		delay(72); //延時
	}   
	PFDATDIR=PFDATDIR|0X4000; //SDA為輸出
	delay(24); //延時
	return(kk);
}
//對I2C總線產生應答(LF2407)
void	I2CAck()
{
	
	PFDATDIR=PFDATDIR&0x0FFDF;//SCL=0
	PFDATDIR=PFDATDIR&0x0FFBF;//SDA=0
	PFDATDIR=PFDATDIR|0X0020;//SCL=1
	delay(24);//延時
	PFDATDIR=PFDATDIR&0x0FFDF;//SCL=0
//	delay(20);//延時
}
//不對I2C總線產生應答
void	I2CNoAck()
{
	PFDATDIR=PFDATDIR|0X0020;//SCL=1
	delay(24);//延時
	PFDATDIR=PFDATDIR&0x0FFDF;//SCL=0
	delay(24);//延時
}
//停止I2C總線
void	I2CStop()
{

	PFDATDIR=PFDATDIR&0x0FFBF;//SDA=0
	delay(24);//延時
	PFDATDIR=PFDATDIR|0X0020;//SCL=1
	delay(24);//延時
	PFDATDIR=PFDATDIR|0x0040;//SDA=1
	delay(24);//延時
}



	

//通用寫24LC256子程序,入口參數為輸入/輸出緩沖區首地址array,
//24LC256的塊內地址adress,控制字節control,需要讀寫的字節數n
int	EEPROM_WR(int adress,int *array,int control,int n)
{
	int	dat,k;
	
	PFDATDIR=PFDATDIR&0x0FFEF;//設置寫允許,WP=0
	I2CStart();//啟動I2C
	I2CSendByte(control);//送出寫控制字
	dat=I2CRECACK();//檢查應答位
/*	if(dat==0)I2CSendByte((page>>8)&0xff);//若應答正確,送頁數的高8位
	dat=I2CRECACK(); //檢查應答位
	if(dat==0)I2CSendByte(page&0xff);//若應答正確,送頁數的低8位
	dat=I2CRECACK();//檢查應答位 */
	if(dat==0)I2CSendByte((adress>>8)&0x00FF);//若應答正確,送地址的高8位
	dat=I2CRECACK();//檢查應答位
	if(dat==0)I2CSendByte(adress&0x00FF);//若應答正確,送地址的低8位
	dat=I2CRECACK();//檢查應答位
	if(dat==0)					//若應答正確,送數據
	{
		for(k=0;k<n;k++)
		{
			I2CSendByte((*array>>8)&0X00FF); //送數據的高8位
			dat=I2CRECACK();//檢查應答位
			if(dat==1)break;//應答不正確,中斷
			I2CSendByte(*array&0X00FF);//應答正確,送數據的低8位
			dat=I2CRECACK();//檢查應答位 
			if(dat==1)break;//應答不正確,中斷
		    array++;
		} 
	}
	I2CStop();//停止I2C總線 
	return(dat);	
}	
//通用讀24LC256子程序,入口參數為輸入/輸出緩沖區首地址array,
//24LC256的塊內地址adress,控制字節control,需要讀寫的字節數n
int	EEPROM_RD(int adress,int *array,int control,int control1,int n)
{
	int	dat,k;
	I2CStart();//啟動I2C
	I2CSendByte(control);//送出寫控制字
	dat=I2CRECACK();//檢查應答位
/*	if(dat==0)I2CSendByte((page>>8)&0xff);//若應答正確,送頁數的高8位	
	dat=I2CRECACK();//檢查應答位
	if(dat==0)I2CSendByte(page&0xff);//若應答正確,送頁數的低8位
	dat=I2CRECACK();//檢查應答位 */
	if(dat==0)I2CSendByte((adress>>8)&0x00FF);//若應答正確,送地址的高8位
	dat=I2CRECACK();//檢查應答位
	if(dat==0)I2CSendByte(adress&0x00FF);//若應答正確,送地址的低8位
	dat=I2CRECACK();//檢查應答位
	if(dat==0)
	{
		I2CStart();//應答正確,啟動I2C
		I2CSendByte(control1);//送讀控制字
	}
    dat=I2CRECACK();//檢查應答位
	if(dat==0)//應答正確,接收數據
	{
		for(k=0;k<(n-1);k++)
		{
			dat=I2CRecByte();//接收高8位數據
	  		*array=(dat<<8)&0xff00;//將接收到的8位數據保存為*array的高8位
	  	    I2CAck();//主機應答
	  	    dat=I2CRecByte(); //接收低8位數據
	  	    *array|=dat&0x00ff;//將接收到的8位數據保存為*array的低8位
	  		I2CAck();//主機應答
	  		array++;
	  		 
	  	}
	  	dat=I2CRecByte();//接收最后一個字的高8位數據 
	  	*array=(dat<<8)&0xff00;//將接收到的8位數據保存為*array的高8位
	  	I2CAck();//主機應答
	  	dat=I2CRecByte();//接收最后一個字的低8位數據
	  	 *array|=dat&0x00ff;//將接收到的8位數據保存為*array的低8位
	     I2CNoAck();//不產生應答信號
		I2CStop();//停止I2C
		dat=0x00; //dat值賦0,表示前面的操作成功
		} 
	return(dat);
}
		

//主程序
main()
{
	int	k;
	sysinitial();//系統初始化
	ioinitial();//IO初始化
	while(1)
	{
    	k=EEPROM_WR(0x01,source,0xA0,4);//寫EEPROM
    	if(k==0)//如果寫入成功,則進行讀操作,否則繼續寫操作
		{
			delay(5800);//延時
       		k=EEPROM_RD(0x01,result,0xA0,0xA1,4); //讀EEPROM
       		asm(" nop");
       	}
	}

}
//直接返回中斷服務子程序
void	interrupt nothing()
{
	return;
}





	


?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人黄色在线视频| 午夜精品久久久久久久久久 | 国产精品午夜久久| 欧美日韩一区三区| 在线观看av一区二区| 91视频观看视频| 波多野结衣中文一区| 成人毛片在线观看| proumb性欧美在线观看| 成人午夜av在线| 99精品欧美一区二区三区小说| 精品在线你懂的| 丝袜亚洲另类欧美综合| 七七婷婷婷婷精品国产| 久久99久久99| 国产aⅴ综合色| 91国产精品成人| 制服.丝袜.亚洲.中文.综合| 欧美一区二区三区的| 久久综合色一综合色88| 国产精品视频线看| 一区二区三区国产豹纹内裤在线 | 欧美在线免费观看视频| 欧美日韩精品三区| 7777女厕盗摄久久久| 久久久影视传媒| 综合色中文字幕| 视频一区二区三区入口| 国产制服丝袜一区| 97久久超碰国产精品电影| 色琪琪一区二区三区亚洲区| 欧美精品乱码久久久久久| 精品美女在线播放| 国产精品成人网| 亚洲成人av资源| 成人午夜在线视频| 555www色欧美视频| 国产精品国产三级国产普通话三级 | 国产91综合网| 欧美午夜不卡在线观看免费| 2014亚洲片线观看视频免费| 亚洲久本草在线中文字幕| 秋霞国产午夜精品免费视频| 国产大陆精品国产| 4438x亚洲最大成人网| 中文字幕精品综合| 日韩高清在线电影| av中文字幕在线不卡| 日韩精品一区二区三区在线播放| 国产精品动漫网站| 亚洲国产一区二区在线播放| 黄色日韩网站视频| 欧美性大战久久久久久久| 亚洲国产精品99久久久久久久久| 亚洲韩国一区二区三区| 99精品热视频| 久久久综合精品| 精品一区二区三区在线观看国产| 欧美性xxxxxx少妇| 1区2区3区国产精品| 国产一区二区三区久久久| 欧美色涩在线第一页| 有码一区二区三区| caoporn国产一区二区| 亚洲精品在线三区| 六月丁香婷婷久久| 欧美一区二区日韩| 婷婷国产在线综合| 欧美日韩视频第一区| 国产精品传媒入口麻豆| 风间由美一区二区av101| 久久久综合视频| 国产自产高清不卡| 精品国产一区a| 麻豆极品一区二区三区| 欧美成人精精品一区二区频| 日韩电影免费一区| 日韩一区二区三区在线视频| 性做久久久久久免费观看欧美| 色婷婷av一区二区三区软件| 成人欧美一区二区三区在线播放| 国产91富婆露脸刺激对白| 国产欧美一区视频| av在线播放成人| √…a在线天堂一区| 91欧美一区二区| 亚洲综合丁香婷婷六月香| 欧美优质美女网站| 日韩电影在线看| 亚洲精品在线三区| www.久久精品| 一区二区国产视频| 欧美一级欧美一级在线播放| 天堂va蜜桃一区二区三区| 欧美一区二区三区四区高清| 久久99国产精品久久99 | 成人视屏免费看| 综合激情成人伊人| 欧美在线一二三四区| 视频在线观看一区| 精品国产亚洲在线| 99riav一区二区三区| 五月婷婷激情综合| 久久夜色精品一区| 91一区一区三区| 日韩精品一二三区| 国产三级精品在线| 欧美日韩中文字幕一区二区| 久久97超碰国产精品超碰| 国产亚洲欧美色| 欧美综合天天夜夜久久| 久久成人久久爱| 日韩美女视频一区二区| 91麻豆精品国产91久久久更新时间| 久久福利视频一区二区| 专区另类欧美日韩| 精品国精品自拍自在线| 日本国产一区二区| 国产在线播精品第三| 亚洲综合色自拍一区| 精品裸体舞一区二区三区| 91丨porny丨首页| 狠狠色综合播放一区二区| 亚洲最色的网站| xf在线a精品一区二区视频网站| 91蜜桃免费观看视频| 麻豆精品精品国产自在97香蕉| 亚洲人成亚洲人成在线观看图片| 91精品国产一区二区| 色综合天天做天天爱| 国产一区二区免费看| 日韩二区三区在线观看| 亚洲美女电影在线| 中文字幕国产一区二区| 日韩免费电影网站| 欧美精品黑人性xxxx| 在线观看亚洲精品视频| 成人性生交大片免费看中文| 免费黄网站欧美| 日韩成人一区二区| 亚洲影视资源网| 亚洲欧美色图小说| 国产精品不卡在线| 久久精品综合网| 久久日韩精品一区二区五区| 3751色影院一区二区三区| 欧美影片第一页| 欧洲av一区二区嗯嗯嗯啊| 99re成人在线| 成人精品视频一区二区三区 | 亚洲成av人片在www色猫咪| 中文字幕中文字幕一区| 久久久久久一级片| 久久久久久一二三区| 久久久99精品久久| 久久精品夜色噜噜亚洲a∨| 欧美电影精品一区二区| 欧美一区二区成人| 日韩精品一区二区三区三区免费| 欧美日本高清视频在线观看| 色88888久久久久久影院按摩| 97久久人人超碰| 91国产福利在线| 欧美精品久久久久久久多人混战| 欧美色欧美亚洲另类二区| 777色狠狠一区二区三区| 日韩一区二区免费电影| 精品久久人人做人人爰| 久久久久久久av麻豆果冻| 久久久不卡网国产精品二区| 26uuu精品一区二区在线观看| 久久色在线视频| 国产精品久久久久影院色老大| 国产精品久久免费看| 亚洲人成在线观看一区二区| 亚洲午夜在线视频| 久久se精品一区二区| 国产白丝精品91爽爽久久| 波多野结衣中文一区| 欧美日韩一区二区电影| 日韩欧美一区电影| 国产精品欧美久久久久无广告 | 一区二区三区日韩| 日韩精品高清不卡| 成人一区二区三区中文字幕| 色国产精品一区在线观看| 91精品欧美久久久久久动漫| 久久久久久久久久久久久久久99| 国产精品久线观看视频| 午夜在线成人av| 国产一区二区剧情av在线| 色综合久久久久网| 日韩午夜精品电影| 中文字幕一区在线观看| 日韩成人dvd| av一区二区久久| 欧美一卡二卡三卡| 亚洲女人的天堂| 国产精品正在播放| 欧美电影一区二区|