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

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

?? avricp.c

?? AVR ICP 支持AVR器件編程
?? C
?? 第 1 頁 / 共 4 頁
字號:
	
    SPIWrite(0x50); 
    SPIWrite(0x00); 
    SPIWrite(0x00); 
    putc(SPIRead()); 
	return;
}
/* +-----------------------------------+-----+-------+------+-----+------+  */ 
/* |                                   | ID  | host  | programer  | Note |  */ 
/* | Leave programming mode            | 'L' |       |      | 13d |   5  |  */ 
/* +-----------------------------------+-----+-------+------+-----+------+  */ 
void Leave_programming_mode(void)
{
    //G_pgmode == TRUE;
    InitPortForIdle(); 
    SetReset(); 
	//G_index = 0xff;
	G_pgmode = FALSE;
    putc(0x0D);
	return;
}
/* +-----------------------------------+-----+-------+------+-----+------+  */ 
/* |                                   | ID  | host  | programer  | Note |  */ 
/* | Select device type                | 'T' |    dd |      | 13d |   6  |  */ 
/* +-----------------------------------+-----+-------+------+-----+------+  */ 
void Select_device_type(void)
{
	unsigned char   code; 
	unsigned char   i; 
	
	G_device=getc();
	
	G_index = 0xff;
	i = 0;
	do
	{
		code = g_deviceSupported[i++].code;
		if (code == 0) 
		{ 
			break; 
		} 
		if (code == G_device) 
		{ 
			G_index = i;
			break; 
		} 
	} while(i < 0xff);
	
	putc(13);
	return;
}
/* +-----------------------------------+-----+-------+------+-----+------+  */ 
/* |                                   | ID  | host  | programer  | Note |  */ 
/* | Read signature bytes              | 's' |       | 3*dd |     |      |  */ 
/* +-----------------------------------+-----+-------+------+-----+------+  */
//多功能函數5 
void Read_signature_bytes(void)
{
    //G_pgmode == TRUE;
	if(G_device == AT89C51 || G_device == AT89C52)
	{
		SetVPP5V();
		PORTA|= _BV(PA6);   //RST=H
		OutCONBit(PSEN,0);  //PSEN=L
		OutCONBit(PROG,1);  //PROG=H
		
		VPP(1);

		OutP2Bit(P26,0);
		OutP3Bit(P36,0);
		OutP3Bit(P37,0);
		OutP2Bit(P27,0);
		
		
		putc(ParaReadByte(0,0x32));
		putc(ParaReadByte(0,0x31));
		putc(ParaReadByte(0,0x30));
		
	}
	else
	if(G_device == AT89S51 || G_device == AT89S52)
	{
		char i;
		for (i = 2; i >= 0; i--) 
		{ 
			SPIWrite(0x28); 
			SPIWrite(i); 
			SPIWrite(0x00); 
			putc(SPIRead()); 
		} 
	}
	else
	{
		char i;
		for (i = 2; i >= 0; i--) 
		{ 
			SPIWrite(0x30); 
			SPIWrite(0x00); 
			SPIWrite(i); 
			putc(SPIRead()); 
		} 
	}
	
	return;
}


/* +-----------------------------------+-----+-------+------+-----+------+  */ 
/* |                                   | ID  | host  | programer  | Note |  */ 
/* | Return supported device codes     | 't' |       | n*dd | 00d |   7  |  */ 
/* +-----------------------------------+-----+-------+------+-----+------+  */ 
void Return_supported_device_codes(void)
{
	unsigned char   code; 
	unsigned char   i; 
	
	i=0;
	
	while((code=g_deviceSupported[i++].code) != 0)
	{
		putc(code);
		if(i==0xff)break;
	} 
	
	//for(i=0x50;i<0x60;i++)putc(i);
	putc(0x00); 
	return;
}
/* +-----------------------------------+-----+-------+------+-----+------+  */ 
/* |                                   | ID  | host  | programer  | Note |  */ 
/* | Return software identifier        | 'S' |       | s[7] |     |   8  |  */ 
/* +-----------------------------------+-----+-------+------+-----+------+  */ 
void Return_software_identifier(void)
{
	putcstr("AVR ISP");
	return;
}
/* +-----------------------------------+-----+-------+------+-----+------+  */ 
/* |                                   | ID  | host  | programer  | Note |  */ 
/* | Return sofware version            | 'V' |       |dd dd |     |   9  |  */ 
/* +-----------------------------------+-----+-------+------+-----+------+  */ 
void Return_software_version(void)
{
    putc(SW_MAJOR); 
    putc(SW_MINOR); 
	return;
}
/* +-----------------------------------+-----+-------+------+-----+------+  */ 
/* |                                   | ID  | host  | programer  | Note |  */ 
/* | Return hardware version           | 'v' |       |dd dd |     |   9  |  */ 
/* +-----------------------------------+-----+-------+------+-----+------+  */ 
void Return_hardware_version(void)
{
    putc(HW_MAJOR); 
    putc(HW_MINOR); 
	return;
}
/* +-----------------------------------+-----+-------+------+-----+------+  */ 
/* |                                   | ID  | host  | programer  | Note |  */ 
/* | Return programmer type            | 'p' |       |   dd |     |  10  |  */ 
/* +-----------------------------------+-----+-------+------+-----+------+  */ 
void Return_programmer_type(void)
{
    putc('S'); 
	return;
}
/* +-----------------------------------+-----+-------+------+-----+------+  */ 
/* |                                   | ID  | host  | programer  | Note |  */ 
/* | Set LED                           | 'x' |    dd |      | 13d |  12  |  */ 
/* +-----------------------------------+-----+-------+------+-----+------+  */ 
void Set_LED(void)
{
	getc();
	Host_LED_On();
    putc(13); 
	return;
}
/* +-----------------------------------+-----+-------+------+-----+------+  */ 
/* |                                   | ID  | host  | programer  | Note |  */ 
/* | Clear LED                         | 'y' |    dd |      | 13d |  12  |  */ 
/* +-----------------------------------+-----+-------+------+-----+------+  */ 
void Clear_LED(void)
{
	getc();
	Host_LED_Off();
    putc(13); 
	return;
}
/* +-----------------------------------+-----+-------+------+-----+------+  */ 
/* |                                   | ID  | host  | programer  | Note |  */ 
/* | Universial command                | ':' |  3*dd |   dd | 13d |      |  */ 
/* +-----------------------------------+-----+-------+------+-----+------+  */ 
void Universal_command(void)
{
    //G_pgmode == TRUE;
	
	unsigned char cmd1;
	unsigned char cmd2;
	unsigned char cmd3;
	unsigned char cmd4;
	unsigned char cmdr;
	
    cmd1 = getc(); 
    cmd2 = getc(); 
    cmd3 = getc();
	cmd4 = 0x00;
    SPIWrite(cmd1); 
    SPIWrite(cmd2); 
    SPIWrite(cmd3); 
    cmdr = SPIWrite(cmd4); 
    putc(cmdr); 
    delay(120); 
    putc(13); 
	return;
}
/* +-----------------------------------+-----+-------+------+-----+------+  */ 
/* |                                   | ID  | host  | programer  | Note |  */ 
/* | New universal command             | '.' |  4*dd |   dd | 13d |      |  */ 
/* +-----------------------------------+-----+-------+------+-----+------+  */ 
void New_universal_command(void)
{
    //G_pgmode == TRUE;
	
	unsigned char cmd1;
	unsigned char cmd2;
	unsigned char cmd3;
	unsigned char cmd4;
	unsigned char cmdr;
	
    cmd1 = getc(); 
    cmd2 = getc(); 
    cmd3 = getc();
	cmd4 = getc();
    SPIWrite(cmd1); 
    SPIWrite(cmd2); 
    SPIWrite(cmd3); 
    cmdr = SPIWrite(cmd4); 
    putc(cmdr); 
    delay(120); 
    putc(13); 
	return;
}
/* +-----------------------------------+-----+-------+------+-----+------+  */ 
/* |                                   | ID  | host  | programer  | Note |  */ 
/* | Special test command              | 'Z' |  2*dd |   dd |     |      |  */ 
/* +-----------------------------------+-----+-------+------+-----+------+  */ 

/* +-----------------------------------+-----+-------+------+-----+------+  */ 
/*                                     | ID  | host  | programer  | Note |  */ 
/* | Read lock bits                    | 'r' |       |   dd |     |      |  */ 
/* +-----------------------------------+-----+-------+------+-----+------+  */ 
void Read_lock_bits(void)
{
    //G_pgmode == TRUE;
	
	
    SPIWrite(0x58); 
    SPIWrite(0x00); 
    SPIWrite(0x00); 
    putc(SPIRead()); 
	return;
}
/* +-----------------------------------+-----+-------+------+-----+------+  */ 
/* |                                   | ID  | host  | programer  | Note |  */ 
/* | Read high fuse bits               | 'N' |       |   dd |     |      |  */ 
/* +-----------------------------------+-----+-------+------+-----+------+  */ 
void Read_high_fuse_bits(void)
{
    //G_pgmode == TRUE;
	
    SPIWrite(0x58); 
    SPIWrite(0x08); 
    SPIWrite(0x00); 
    putc(SPIRead()); 
	return;
}
/* +-----------------------------------+-----+-------+------+-----+------+  */ 
/* |                                   | ID  | host  | programer  | Note |  */ 
/* | Read extended fuse bits           | 'Q' |       |   dd |     |      |  */ 
/* +-----------------------------------+-----+-------+------+-----+------+  */ 
void Read_extended_fuse_bits(void)
{
    //G_pgmode == TRUE;
	
    SPIWrite(0x50); 
    SPIWrite(0x08); 
    SPIWrite(0x00); 
    putc(SPIRead()); 
	return;
}


/*--------------------------------------------------------------------------*/ 
/* int main(void)                                                           */ 
/*--------------------------------------------------------------------------*/ 
int main(void) 
{ 
	InitUART(); 
	InitPortForIdle(); 
	
	G_device  = 0;
	G_index   = 0xff;
	G_pgmode  = FALSE;
	G_pgaddrh = 0;
	G_pgaddrl = 0;
	
	Programer_LED_On(); 
	wait_1ms(500); 
	Programer_LED_Off(); 
	wait_1ms(500); 
	Programer_LED_On(); 
	wait_1ms(500); 
	Programer_LED_Off(); 
    
	do{ 
		char   c; 
		c = getc(); 
		switch (c) 
		{ 
		case 0x1b:   /* ESC received  */           break; 
		case 'T': Select_device_type();            break; 
		case 'S': Return_software_identifier();    break; 
		case 'V': Return_software_version();       break; 
		case 'v': Return_hardware_version();       break; 
		case 't': Return_supported_device_codes(); break; 
		case 'p': Return_programmer_type();        break; 
		case 'a': Report_autoincrement_address();  break; 
		case 'x': Set_LED();                       break; 
		case 'y': Clear_LED();                     break; 
		default: 
			if (G_index == 0xff) { putc('?'); } 
			else  switch (c) { 
		case 'P':   Enter_programming_mode();         break; 
		case 'C':   Write_program_memory_high_byte(); break; 
		case 'c':   Write_program_memory_low_byte();  break; 
		case 'R':   Read_program_memory();            break; 
		case 'A':   Set_address();                    break; 
		case 'D':   Write_data_memory();              break; 
		case 'd':   Read_data_memory();               break; 
		case 'L':   Leave_programming_mode();         break; 
		case 'e':   Chip_erase();                     break; 
		case 'l':   Write_lock_bits();                break; 
		case 'r':   Read_lock_bits();                 break; 
		case 's':   Read_signature_bytes();           break; 
		case 'm':   Issue_Page_Write();               break; 
		case ':':   Universal_command();              break; 
		case '.':   New_universal_command();          break; 
		case 'f':   Write_fuse_bits();                break; 
		case 'F':   Read_fuse_bits();                 break; 
		case 'N':   Read_high_fuse_bits();            break; 
		case 'Q':   Read_extended_fuse_bits();        break; 
		default:   /* Command Error  */  putc('?');   } 
		} 
	} while (TRUE);
    
	return 0; 
} 


?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美一区二区三区男人的天堂| 亚洲欧美日韩电影| 欧日韩精品视频| 成人国产精品免费| 国内一区二区视频| 蜜臀av性久久久久蜜臀aⅴ流畅| 亚洲韩国一区二区三区| 亚洲在线免费播放| 亚洲一二三四久久| 五月激情综合婷婷| 久久99热国产| 国产成人免费视频网站| 成人av网站在线观看免费| 成人动漫一区二区三区| 色综合天天综合网国产成人综合天| 91在线一区二区| 欧美亚洲动漫精品| 91精品国产综合久久久久久久 | 午夜视频在线观看一区二区| 亚洲午夜电影网| 久久精工是国产品牌吗| 国产成人午夜视频| 91久久精品一区二区三| 欧美日韩日日夜夜| 精品日韩成人av| 中文字幕一区二区三区在线观看| 亚洲精品成人在线| 五月婷婷综合网| 国产黄人亚洲片| 在线免费不卡视频| 精品国产一区二区三区久久久蜜月 | 国产精品对白交换视频 | 国产中文字幕一区| 色吧成人激情小说| 精品第一国产综合精品aⅴ| 中文字幕在线一区免费| 日韩av在线播放中文字幕| 国产91高潮流白浆在线麻豆| 欧美日韩一区三区四区| 国产亚洲欧洲997久久综合| 亚洲综合偷拍欧美一区色| 六月丁香婷婷色狠狠久久| 91看片淫黄大片一级在线观看| 日韩一级黄色大片| 夜夜亚洲天天久久| 激情五月播播久久久精品| 欧美在线视频日韩| 国产精品动漫网站| 国产精品一区二区久激情瑜伽| 欧美精品色综合| 中文字幕五月欧美| 国产一区二区不卡老阿姨| 欧美日韩色一区| 亚洲视频资源在线| 国产精品一色哟哟哟| 日韩一卡二卡三卡| 亚洲成人av一区| 北条麻妃国产九九精品视频| 欧美一区二区三区免费大片| 中文字幕精品综合| 福利电影一区二区| 成人av影视在线观看| 精品播放一区二区| 欧美激情综合五月色丁香小说| 蜜臀精品一区二区三区在线观看 | 欧美日韩国产a| 国产精品乱子久久久久| 丝袜脚交一区二区| 欧美日本在线一区| 国产精品免费久久久久| 成人激情综合网站| 欧美xxxxxxxx| 国产精品一区二区视频| 欧美精品aⅴ在线视频| 亚洲综合区在线| 不卡视频在线观看| 国产精品国产三级国产普通话三级 | 国产99久久久精品| 亚洲精品在线观| 国产精品乱码人人做人人爱 | 99久久精品国产麻豆演员表| 久久丝袜美腿综合| 精品夜夜嗨av一区二区三区| 精品毛片乱码1区2区3区| 亚洲成av人综合在线观看| 欧美日韩一区二区三区免费看| 亚洲欧美另类在线| 成人一级片网址| 日本一区免费视频| 国产suv精品一区二区三区| 精品精品国产高清a毛片牛牛| 成人欧美一区二区三区白人| 色噜噜狠狠成人网p站| 亚洲天堂久久久久久久| 欧美日韩午夜影院| 偷拍一区二区三区| 久久九九99视频| 国产精品一区在线观看你懂的| 国产精品亲子伦对白| 高清日韩电视剧大全免费| 中文字幕亚洲欧美在线不卡| 不卡的av电影| 日本在线不卡视频| 制服.丝袜.亚洲.另类.中文 | 国产.欧美.日韩| 亚洲欧美一区二区三区国产精品 | 欧美少妇xxx| 午夜av一区二区三区| www久久久久| 99精品桃花视频在线观看| 亚洲综合色丁香婷婷六月图片| 欧美日韩国产片| 亚洲色图制服丝袜| 在线成人午夜影院| 免费成人在线视频观看| 久久色在线观看| 欧美网站大全在线观看| 免费观看久久久4p| 一区二区三区波多野结衣在线观看 | 成人免费黄色大片| 三级成人在线视频| 久久午夜免费电影| 欧美吞精做爰啪啪高潮| 美女国产一区二区三区| 亚洲中国最大av网站| 91精品福利在线一区二区三区 | 亚洲精品日产精品乱码不卡| 色婷婷一区二区| 丁香六月综合激情| 日韩美女精品在线| 久久久精品日韩欧美| 不卡一区二区中文字幕| 国产一区二区剧情av在线| 国产精品视频九色porn| 精品国产一区二区国模嫣然| 国产成人精品免费网站| 黄色精品一二区| 中文字幕乱码一区二区免费| 日韩一区二区三| 成人动漫一区二区三区| 国产老妇另类xxxxx| 亚洲人成在线观看一区二区| 国产欧美一区二区精品性| 99国产精品久久久久久久久久久| 国产麻豆精品在线| 1024国产精品| 国产精品私人影院| 欧美一级日韩一级| 欧美一级夜夜爽| 91亚洲永久精品| 国产精品一色哟哟哟| 91蝌蚪porny| 免费观看在线色综合| 国产精品资源在线| 捆绑紧缚一区二区三区视频| 69堂国产成人免费视频| 成+人+亚洲+综合天堂| 欧美丝袜丝交足nylons| 色综合久久88色综合天天6 | 日韩一区二区三区在线| 国产日韩欧美电影| 一区二区三区在线免费视频| 六月丁香婷婷久久| 波多野结衣中文一区| 在线视频国内自拍亚洲视频| 欧美日本国产视频| 国产精品家庭影院| 亚洲国产日韩一级| 成+人+亚洲+综合天堂| 欧美日韩三级视频| 亚洲欧洲在线观看av| 亚洲精品va在线观看| 国产成人av福利| 在线观看成人小视频| 国产欧美精品一区二区三区四区| 亚洲免费观看高清完整版在线观看 | ww亚洲ww在线观看国产| 日本一区二区在线不卡| 午夜久久久久久久久| 国产成人精品影视| 91精品国产色综合久久ai换脸 | 国产一区二区福利视频| www.爱久久.com| 精品粉嫩aⅴ一区二区三区四区 | 欧美一二三四区在线| 国产精品久久99| 国产精品主播直播| 91久久精品一区二区二区| 亚洲欧美在线aaa| 日韩不卡一区二区| 91超碰这里只有精品国产| 亚洲制服丝袜一区| 97精品电影院| 中文字幕色av一区二区三区| 奇米影视一区二区三区| 欧美一区二区在线免费播放| 亚洲日本乱码在线观看| 99国产精品99久久久久久| 久久综合av免费| 国产成人av一区二区三区在线 |