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

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

?? rp89com3.c

?? 51單片機(jī)的源程序集
?? C
字號:
/*P89CXX編程器控制CPU接收和控制程序*/
#include <reg52.h>
#include <intrins.h>

unsigned char time,b_break,b_break_3;
//35.555ms
void int_t0(void) interrupt 1 {
	TH0=0;
	if ((++b_break_3)>2) b_break=1;
	time++;
}

void wait20us(void) {
	TL0=180;TH0=0xff;
	time=0;
	while (!time) {}
}
void wait500ms(void) {
	time=0;
	while (time<15) {}
}


unsigned char rec(void) {
	TH0=0;b_break_3=0;b_break=0;
	while (RI==0) {
		if (b_break) return(1);
	}
	RI=0;
	SBUF=SBUF;
	return(SBUF);
}

/*返回1表示失敗*/
bit sen(unsigned char d) {
	SBUF=d;
	TH0=0;b_break_3=0;b_break=0;
	while (RI==0) {
		if (b_break) return(1);
	}
	RI=0;
	if (SBUF!=d) return(1);
	return(0);
}




#define b_init 0

#define b_erase 1
#define b_erase_block 2				//P89C51RC+、P89C51RD+特有
#define b_erase_sbyte_bvec 3		//P89C51RC+、P89C51RD+特有

#define b_read 4

#define b_program_byte 5
#define b_program_sbyte 6			//P89C51RC+、P89C51RD+特有
#define b_program_boot_vector 7		//P89C51RC+、P89C51RD+特有

#define b_lock1 8
#define b_lock12 9
#define b_lock123 10

#define b_cpu 12					//定義需要編程的cpu類型,0:P89C51 1:P89C52 2:P89C54 3:P89C58 4:P89C51RC+ 5:P89C51RD+

sbit p_oe=P3^2;
sbit p_we=P3^3;

//輸入控制模式
void mode(unsigned char m) {
	P3=(m<<4)|0xf;
}
//輸出地址
void out_adds(unsigned int adds) {
	P0=adds;
	P2=adds/256;
}
//讀入地址
unsigned char in_data(void) {
	P1=0xff;
	p_oe=0;
	return(P1);
	p_oe=1;
}
//判別cpu類型
unsigned char code un_cpu[]={0xf4,0xff,0xfb,0xf9,0x89,0x80};
unsigned int code un_adds_max[]={4096,8192,16384,32768,32768,0};
unsigned char read_id(void){
	unsigned char d;
	mode(0xf);
	//讀Mft ID
	out_adds(0);d=in_data();
	if (d!=0x15) return(0);
	//讀Mft ID1
	out_adds(1);d=in_data();
	if (d!=0xc2) return(0);
	//讀Mft ID2
	out_adds(2);d=in_data();
	return(d);		//返回Mft ID2
}

//初始化芯片,等效于擦除芯片、擦除加密位等等
bit init(unsigned char cpu) {
	unsigned char i,b_error=0;
	unsigned int adds,adds_max=un_adds_max[cpu];
	//寫入所有字節(jié)全零3次,不校驗(yàn)
	mode(3);		
	P1=0;
	adds=0;
	do {
		out_adds(adds);
		for (i=0;i<3;i++) {
			p_we=0;
			wait20us();
			p_we=1;
		}
		adds++;
	} while (adds!=adds_max);
	//初始化,校驗(yàn),3次機(jī)會
	for (i=0;i<3;i++) {
		//初始化
		mode(0xe);
		p_we=0;
		time=0;
		while (time<15) {}
		p_we=1;
		//擦除校驗(yàn)
		mode(4);
		adds=0;
		do {
			out_adds(adds);
			if (in_data()!=0xff) break;
			adds++;
		} while (adds!=adds_max);
		if (adds==adds_max) break;
	}
	if (i==3) b_error=1;//擦除錯誤
	else {
		mode(9);
		out_adds(0);
		if (in_data()&0x3) b_error=1;
		//P89C51RX專用
		if (cpu>3) {
			out_adds(1);
			if (in_data()) b_error=1;
			out_adds(2);
			if (in_data()) b_error=1;
		}
	}
	sen(b_error);
	return(b_error);
}
//讀入
bit read(unsigned char cpu) {
	unsigned int adds,adds_max=un_adds_max[cpu];
	adds=0;
	mode(0);
	wait20us();
	do {
		out_adds(adds);
		if (sen(in_data())) return(1);	//通信出錯
		adds++;
	} while (adds!=adds_max);
	return(1);	//超出地址范圍,錯誤
}
//編程
bit program_byte(unsigned char cpu) {
	unsigned char d,n;
	unsigned int adds=0,adds_max=un_adds_max[cpu];
	do {
		d=rec();
		if (!b_break) {
			out_adds(adds);
			P1=d;
			n=0;
			while (1) {
				mode(0x3);
				p_we=0;
				wait20us();
				p_we=1;
				mode(0x5);
				if (in_data()!=d) n++; else break;
				if (n>2) return(1);				//編程校驗(yàn)3次失敗
			}
			adds++;
		} else return(0);					//pc通信超時或編程完成。在此不會區(qū)分,但無所謂
	} while (adds!=adds_max);
	return(1);								//地址超出范圍
}

bit lock123(void) {
	unsigned char i,b_error=0;
	unsigned int adds;
	unsigned char code lock_bit[]={2,6,14};
	wait20us();
	for (i=0;i<3;i++) { 
		mode(0x6);
		out_adds(i);
		p_we=0;
		wait20us();
		p_we=1;
		mode(0xb);
		out_adds(0);
		if (in_data()!=lock_bit[i]) {b_error=1;break;}
	}
	if (!b_error) {
		//常規(guī)讀檢查前4kb是否加密成功(為了節(jié)省時間,只檢查前4kb)
		mode(0);
		for (adds=0;adds<4096;adds++) {
			out_adds(adds);
			if (in_data()!=0xff) {b_error=1;break;}
		}
	}
	sen(b_error);
	return(b_error);							
}


void main(void) {
	unsigned char cpu;
	unsigned char i,start;
	EA=1;
	SCON=0xd8;PCON=0x80;
	TMOD=0x21;
	TL1=TH1=0xff;TR1=1;
	TH0=0;ET0=TR0=1;
	while (1) {
		REN=1;
		start=rec();
		if ((!b_break)&&(start==0x0)) {
			i=rec();
			if (!b_break) {
				switch (i) {
				case b_cpu:
					i=rec();
					if (!b_break) cpu=i;
					wait20us();			//防止電腦處理不過來
					if (un_cpu[i]!=read_id()) sen(1); else sen(0);
					break;
				case b_init:
					if (init(cpu)) wait500ms();			//初始化錯誤或通信錯誤等待1秒,讓pc程序超時并報(bào)告錯誤
					break;
				case b_read:
					if (read(cpu)) wait500ms();
					break;
				case b_program_byte:
					if (program_byte(cpu)) wait500ms();	//編程錯誤或通信錯誤等待1秒,讓pc程序超時并報(bào)告錯誤
					break;
				case b_lock123:
					if (lock123()) wait500ms();		//加密錯誤或通信錯誤等待1秒,讓pc程序超時并報(bào)告錯誤
					break;
				}
			}
		}
	}
}

	

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品综合久久| 欧美丝袜自拍制服另类| 三级精品在线观看| 一区二区三区精品在线| 首页国产丝袜综合| 中文字幕一区在线| 久久综合九色综合97婷婷 | 日韩成人免费看| 一区二区三区日韩在线观看| 国产精品女主播av| 国产精品欧美久久久久无广告 | 天堂一区二区在线免费观看| 综合久久久久久| 综合久久久久久| 中文字幕一区二区三区蜜月| 国产精品人成在线观看免费| 国产欧美日韩综合| 日本一区二区三级电影在线观看| 欧美精品日日鲁夜夜添| 一本一本久久a久久精品综合麻豆| 成人一区在线观看| 成人在线综合网站| av日韩在线网站| 91在线观看下载| 一本大道久久a久久综合婷婷| 色天使色偷偷av一区二区| 不卡一二三区首页| 色88888久久久久久影院野外| 日本道在线观看一区二区| 一本大道久久a久久精二百| 在线观看国产一区二区| 欧美久久免费观看| 欧美一二三区在线观看| 欧美xxx久久| 国产欧美日韩麻豆91| 精品国产乱子伦一区| 欧美电视剧免费全集观看| 精品国产乱码久久久久久夜甘婷婷 | 婷婷一区二区三区| 日韩av一区二区三区四区| 精品一区二区三区香蕉蜜桃| 国产福利一区在线观看| 91麻豆123| 在线不卡欧美精品一区二区三区| 欧美一区二区在线播放| 国产午夜精品一区二区三区视频 | 国产欧美久久久精品影院| 中文字幕制服丝袜成人av| 亚洲精品视频在线| 亚洲一区电影777| 久久精品国产77777蜜臀| 国产精品1区2区3区在线观看| 99麻豆久久久国产精品免费| 欧美日韩亚洲综合一区| 精品国产乱码久久久久久牛牛 | 久久久九九九九| 亚洲人成伊人成综合网小说| 香蕉久久一区二区不卡无毒影院 | a美女胸又www黄视频久久| 在线视频一区二区三区| 精品蜜桃在线看| 亚洲欧美电影一区二区| 日韩和欧美的一区| 国产精品一区二区三区四区| 成人avav在线| 日韩欧美亚洲另类制服综合在线| 国产精品久久久久久久岛一牛影视 | 91在线你懂得| 日韩一级视频免费观看在线| 国产精品久久午夜夜伦鲁鲁| 日韩成人一区二区三区在线观看| 岛国av在线一区| 欧美巨大另类极品videosbest | 日韩午夜激情电影| 国产精品污污网站在线观看| 亚洲一区二区三区国产| 九色|91porny| 91成人看片片| 国产三级三级三级精品8ⅰ区| 亚洲一区影音先锋| 粉嫩av一区二区三区| 欧美亚洲国产怡红院影院| 欧美激情一区二区三区在线| 日日夜夜精品免费视频| 波多野结衣中文一区| 欧美tk—视频vk| 一区二区三区丝袜| 国产成人免费高清| 日韩一级片在线观看| 国产精品久久久久久亚洲毛片 | 狠狠色丁香久久婷婷综| 欧美在线免费视屏| 国产精品蜜臀在线观看| 国产在线精品视频| 欧美一区二区三区四区视频| 亚洲欧美日韩久久| 成人高清视频在线| 亚洲精品一区二区三区在线观看| 亚洲国产精品久久久久秋霞影院| 99久久精品免费看| 国产欧美综合在线| 国产一二精品视频| 精品日韩一区二区三区| 亚洲影院理伦片| 91丨国产丨九色丨pron| 国产精品拍天天在线| 国产一本一道久久香蕉| 欧美mv日韩mv国产网站| 免费观看日韩av| 欧美二区乱c少妇| 亚洲精品视频在线观看网站| 一本久久精品一区二区| 国产精品久久久久久亚洲毛片 | av不卡在线观看| 久久人人97超碰com| 九色|91porny| 精品嫩草影院久久| 久久精品国产99国产| 日韩美一区二区三区| 免费精品视频在线| 日韩一级高清毛片| 男人的j进女人的j一区| 8x福利精品第一导航| 亚洲精品久久7777| 亚洲国产成人自拍| 不卡视频在线观看| 一本一道综合狠狠老| 91女人视频在线观看| 日韩欧美黄色影院| 国产麻豆91精品| 最新日韩av在线| 欧美艳星brazzers| 美女尤物国产一区| 欧美国产精品劲爆| 在线精品亚洲一区二区不卡| 日本欧美久久久久免费播放网| 日韩欧美三级在线| 成人美女在线观看| 亚洲成人手机在线| 国产亚洲欧美日韩日本| 91久久线看在观草草青青| 男女男精品视频| 亚洲欧洲精品天堂一级| 欧美精品123区| 豆国产96在线|亚洲| 亚洲一线二线三线久久久| 精品理论电影在线| 色综合久久综合网| 韩国三级中文字幕hd久久精品| 成人免费在线视频观看| 欧美一个色资源| 99re热这里只有精品视频| 免费人成精品欧美精品| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆 | 中文字幕一区二区三区在线播放| 欧美日韩大陆一区二区| 久久99蜜桃精品| 樱花草国产18久久久久| 久久久久久久久伊人| 欧美在线观看一区二区| 国产九色sp调教91| 午夜私人影院久久久久| 欧美激情在线一区二区三区| 91精选在线观看| 一本久道久久综合中文字幕 | 欧美性xxxxxx少妇| 国产精品亚洲一区二区三区妖精 | 亚洲一区二区视频| 国产欧美视频在线观看| 欧美一区二区三区人| 91在线高清观看| 国产91高潮流白浆在线麻豆| 日韩av电影一区| 中文字幕一区二区三区精华液| 精品国产一二三区| 欧美男人的天堂一二区| 色综合久久中文字幕综合网| 国产suv精品一区二区883| 青青青爽久久午夜综合久久午夜| 亚洲精品亚洲人成人网在线播放| 国产欧美日本一区视频| 欧美电影免费观看高清完整版在线 | 国产在线精品免费av| 日产精品久久久久久久性色| 亚洲精品国产a| 中文字幕亚洲一区二区av在线| 精品久久久影院| 欧美一级国产精品| 欧美午夜一区二区三区| 97久久超碰国产精品| 成人激情电影免费在线观看| 国产乱码精品一区二区三区av| 麻豆精品一区二区三区| 爽好多水快深点欧美视频| 亚洲午夜一二三区视频| 亚洲婷婷综合久久一本伊一区| 国产精品午夜在线观看| 国产人成亚洲第一网站在线播放| 亚洲精品在线观看视频| www国产成人|