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

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

?? avricp.c

?? AVR ICP 支持AVR器件編程
?? C
?? 第 1 頁 / 共 4 頁
字號:

#define CPU         __AVR_ATmega16__
#define F_CPU       7372800L             /* CLK = 7.372800MHz       */ 
#define __OPTIMIZE__

#define _CV(bit)      (~(1 << (bit)))
#define TRUE          (1==1) 
#define FALSE         (1==0) 

#include <avr/io.h>
#include <string.h>
#include <util/delay.h>

#include <avr/pgmspace.h>

typedef unsigned char uchar;
typedef unsigned int  uint;

/*--------------------------------------------------------------------------*/ 
/* I/O port setting                                                         */ 
/* ---- ----- ------------------------------------------------------------- */ 
/* PD2: RST                                                                 */
/* PB5: MOSI                                                                */
/* PB6: MISO                                                                */
/* PB7: SCK                                                                 */
/* ---- ----- ------------------------------------------------------------- */ 
/* PA4: OUT    GREEN LED                                                    */
/* PA5: OUT    RED   LED                                                    */
/* ---- ----- ------------------------------------------------------------- */ 
/* PD0: IN     UART  RxD                                                    */ 
/* PD1: OUT    UART  TxD                                                    */ 
/* ---- ----- ------------------------------------------------------------- */ 

#define TARGET_RESET     PD2 
#define TARGET_MISO      PB6 
#define TARGET_MOSI      PB5 
#define TARGET_SCK       PB7

#define HOST_LED         PA5
#define MON_LED          PA4


//FOR AT89C51
#define  RST             PA6
#define  HIGHVP          PA0
#define  VP              PA1
#define  PROG            PA2
#define  PSEN            PA3

#define  P26             PD6
#define  P27             PD7
#define  P36             PD6
#define  P37             PD7

#define  RDY51           PA7
#define  A14             P3^0 


/*--------------------------------------------------------------------------*/ 
/* revision information                                                     */ 
/*--------------------------------------------------------------------------*/ 
#define SW_MAJOR      '2'   /* Major Software revision number   */ 
#define SW_MINOR      '8'   /* Minot Software revision number   */ 
#define HW_MAJOR      '1'   /* Major Hardware revision number   */ 
#define HW_MINOR      '8'   /* Minot Hardware revision number   */ 

/*--------------------------------------------------------------------------*/ 
/* device information                                                       */ 
/*--------------------------------------------------------------------------*/ 
#define AT89C1051			0x80 
#define AT89C2051           0x81 
#define AT89C51             0x82	  //自定義	
#define AT89C52             0x83	  //自定義	
#define AT89S51             0x84	  //自定義	
#define AT89S52             0x85	  //自定義	
#define AT89S53             0x87 
#define AT89S8252           0x86 
#define AT90C8534           0x70
#define AT90C8544           0x71
#define AT90S1200     		0x13
#define AT90S1200REVA       0x10
#define AT90S1200REVB       0x11
#define AT90S1200REVC       0x12 
#define AT90S2313           0x20
#define AT90S2323           0x48
#define AT90S2333           0x34
#define AT90S2343           0x4C
#define AT90S4414			0x28
#define AT90S4433           0x30
#define AT90S4434           0x6C
#define AT90S8515           0x38
#define AT90S8535           0x68
#define ATMEGA103           0x41
#define ATMEGA128           0x43
#define ATMEGA128BOOT       0x44
#define ATMEGA16			0x74
#define ATMEGA16BOOT        0x75
#define ATMEGA161           0x60
#define ATMEGA161BOOT       0x61
#define ATMEGA163           0x64
#define ATMEGA163BOOT       0x66
#define ATMEGA169           0x78
#define ATMEGA169BOOT       0x79
#define ATMEGA32			0x72
#define ATMEGA32BOOT        0x73
#define ATMEGA603           0x42
#define ATMEGA64            0x45
#define ATMEGA64BOOT        0x46
#define ATMEGA8             0x76
#define ATMEGA8BOOT         0x77
#define ATMEGA83            0x65
#define ATMEGA83BOOT		0x67
#define ATMEGA8515          0x3A
#define ATMEGA8515BOOT      0x3B
#define ATMEGA8535          0x69
#define ATTINY10            0x51
#define ATTINY11            0x50
#define ATTINY12            0x55
#define ATTINY15            0x56
#define ATTINY19			0x58
#define ATTINY26            0x5E
#define ATTINY28            0x5C

/* Device List    */ 
/* Device List                                                              */ 
/* +---------------+----------+------+-------+------+------+------+-------+ */ 
/* | Device        |Signature | Code | Flash |EEProm| Lock | Fuse | PMode | */ 
/* +---------------+----------+------+-------+------+------+------+-------+ */ 
/* | tiny12        | 1E 90 05 | 0x55 |  R/W  | R/W  | R/W  | R/W  | Byte  | */ 
/* | tiny15        | 1E 90 06 | 0x66 |  R/W  | R/W  | R/W  | R/W  | Byte  | */ 
/* |               |          |      |       |      |      |      |       | */ 
/* | S1200         | 1E 90 01 | 0x13 |  R/W  | R/W  |  W   | NA   | Byte  | */ 
/* |               |          |      |       |      |      |      |       | */ 
/* | S2313         | 1E 91 01 | 0x20 |  R/W  | R/W  |  W   | NA   | Byte  | */ 
/* | S2323         | 1E 91 02 | 0x48 |  R/W  | R/W  | R/W  | R/W  | Byte  | */ 
/* | S2333         | 1E 91 05 | 0x34 |  R/W  | R/W  | R/W  | R/W  | Byte  | */ 
/* | S2343         | 1E 91 03 | 0x4C |  R/W  | R/W  | R/W  | R/W  | Byte  | */ 
/* |               |          |      |       |      |      |      |       | */ 
/* | S4414         | 1E 92 01 | 0x28 |  R/W  | R/W  |  W   | NA   | Byte  | */ 
/* | S4433         | 1E 92 03 | 0x30 |  R/W  | R/W  | R/W  | R/W  | Byte  | */ 
/* | S4434         | 1E 92 02 | 0x6C |  R/W  | R/W  | R/W  | R/W  | Byte  | */ 
/* |               |          |      |       |      |      |      |       | */ 
/* | S8515         | 1E 93 01 | 0x38 |  R/W  | R/W  |  W   | NA   | Byte  | */ 
/* | S8535         | 1E 93 03 | 0x68 |  R/W  | R/W  | R/W  | R/W  | Byte  | */ 
/* |               |          |      |       |      |      |      |       | */ 
/* |mega83         | 1E 93 05 | 0x65 |  R/W  | R/W  | R/W  | R/W  | Page  | */ 
/* |mega103        | 1E 97 01 | 0x41 |  R/W  | R/W  | R/W  | R/W  | Page  | */ 
/* |mega161        | 1E 94 01 | 0x60 |  R/W  | R/W  | R/W  | R/W  | Page  | */ 
/* |mega163        | 1E 94 02 | 0x64 |  R/W  | R/W  | R/W  | R/W  | Page  | */ 
/* |               |          |      |       |      |      |      |       | */ 
/* |mega8          | 1E 93 07 | 0x76 |  R/W  | R/W  | R/W  | R/W  | Page  | */ 
/* |mega16         | 1E 94 03 | 0x74 |  R/W  | R/W  | R/W  | R/W  | Page  | */ 
/* |mega32         | 1E 95 02 | 0x72 |  R/W  | R/W  | R/W  | R/W  | Page  | */ 
/* |mega128        | 1E 97 02 | 0x43 |  R/W  | R/W  | R/W  | R/W  | Page  | */ 
/* |mega8515       | 1E 93 06 | 0x3A |  R/W  | R/W  | R/W  | R/W  | Page  | */ 
/* +---------------+----------+------+-------+------+------+------+-------+ */ 
//ATMEGA8     , 0x1E,0x93,0x07,
//ATMEGA16    , 0x1E,0x94,0x03,
//ATMEGA32    , 0x1E,0x95,0x02,
//ATMEGA64    , 0x1E,0x96,0x02,
//ATMEGA128   , 0x1E,0x97,0x02,
//ATMEGA8515  , 0x1E,0x93,0x06,
//ATMEGA8535  , 0x1E,0x93,0x08,

typedef struct _devices_info { 
	unsigned char   code; 
	
	unsigned int    wPageSize;		// Flash page size
	unsigned char   ucEepromPageSize;// Eeprom page size (extended parameter)
	
	unsigned char   twd_fuse; 
	unsigned char   twd_flash; 
	unsigned char   twd_eeprom; 
	unsigned char   twd_erase; 
	
} devices_info; 



const devices_info /*__ATTR_PROGMEM__*/  g_deviceSupported[] = 
{ 
	// code         , FPage,EPage,twd fuse lock,flash,eeprom,erase 
	
	{  ATTINY12     ,    0 ,   0 ,         2 ,   4 ,    7 ,   7 },
	{  ATTINY15     ,    0 ,   0 ,         2 ,   5 ,    9 ,   9 },   
                                     
	{  AT90S1200    ,    0 ,   0 ,         2 ,   9 ,    9 ,  18 },   
                                     
	{  AT90S2313    ,    0 ,   0 ,         2 ,   9 ,    9 ,  18 },   
	{  AT90S2323    ,    0 ,   0 ,         2 ,   9 ,    9 ,  18 },  
	{  AT90S2333    ,    0 ,   0 ,         2 ,   9 ,    9 ,  18 },   
	{  AT90S2343    ,    0 ,   0 ,         2 ,   9 ,    9 ,  18 },   
                                     
	{  AT90S4414    ,    0 ,   0 ,         2 ,   9 ,    9 ,  18 },   
	{  AT90S4433    ,    0 ,   0 ,         2 ,   9 ,    9 ,  18 },   
	{  AT90S4434    ,    0 ,   0 ,         2 ,   9 ,    9 ,  18 },  
                                     
	{  AT90S8515    ,    0 ,   0 ,         2 ,   9 ,    9 ,  18 },   
	{  AT90S8535    ,    0 ,   0 ,         2 ,   9 ,    9 ,  18 },   
                                     
	{  ATMEGA103    ,  256 ,   0 ,         2 ,  56 ,    9 ,  56 },    
	{  ATMEGA161    ,  128 ,   0 ,         2 ,  14 ,    4 ,  28 },    
	{  ATMEGA163    ,  128 ,   0 ,         2 ,  16 ,    4 ,  32 },    
                                     
	{  ATMEGA8      ,   64 ,   4 ,         5 ,   5 ,    9 ,   9 },
	{  ATMEGA16     ,  128 ,   4 ,         5 ,   5 ,    9 ,   9 },
	{  ATMEGA32     ,  128 ,   4 ,         5 ,   5 ,    9 ,   9 },
	{  ATMEGA64     ,  128 ,   8 ,         5 ,   5 ,    9 ,   9 },
	{  ATMEGA128    ,  256 ,   8 ,         5 ,   5 ,    9 ,   9 },
	{  ATMEGA8515   ,   64 ,   4 ,         5 ,   5 ,    9 ,   9 },
	{  ATMEGA8535   ,   64 ,   4 ,         5 ,   5 ,    9 ,   9 },
	                                 
	{  ATMEGA16BOOT ,  128 ,   4 ,         5 ,   5 ,    9 ,   9 },
//自定義	                             
	{  AT89C51      ,    0 ,   0 ,         0 ,   2 ,    0 ,  10 },
	{  AT89C52      ,    0 ,   0 ,         0 ,   2 ,    0 ,  10 },
	{  AT89S51      ,    0 ,   0 ,         2 ,   2 ,    0 , 250 }, //twd_erase = 250*2
	{  AT89S52      ,    0 ,   0 ,         2 ,   2 ,    0 , 250 }, //twd_erase = 250*2
	{  0x00 ,0x00, 0x00    }        
};





unsigned char G_device;
unsigned char G_index;
unsigned char G_pgmode;
unsigned char G_pgaddrh;
unsigned char G_pgaddrl;

unsigned char G_P2;
unsigned char G_P3;
unsigned char G_CON;


/*--------------------------------------------------------------------------*/ 
/* Port direction setting                                                   */ 
/*--------------------------------------------------------------------------*/ 
void InitPortForIdle(void)
{
	DDRA = _BV(PA4)|_BV(PA5); 
	DDRB = 0; 
	DDRC = 0; 
	DDRD = _BV(PD2); 
}

void InitPortForSPI(void)
{
	DDRA = _BV(PA4)|_BV(PA5);
	DDRB = 0xFF ^ _BV(TARGET_MISO);
	DDRC = 0;            
	DDRD = _BV(PD2);   
}

void InitPortForParallel(void)
{
	DDRA = _BV(PA0)|_BV(PA1)|_BV(PA2)|_BV(PA3)|_BV(PA4)|_BV(PA5)|_BV(PA6);
	DDRB = 0;
	DDRC = 0; 
	PORTC = 0xff; 
	DDRD = _BV(PD3)|_BV(PD4)|_BV(PD5)|_BV(PD6)|_BV(PD7);
	PORTD = 0; 
}

/*--------------------------------------------------------------------------*/ 
/* Port operation                                                           */ 
/*--------------------------------------------------------------------------*/ 
void OutP0(unsigned char data)
{
	DDRC  = 0xff;
	PORTC = data;
}
void OutP1(unsigned char data)
{
	DDRB  = 0xff;
	PORTB = data;
}

void OutP2(unsigned char data)
{
	G_P2 = data;
	PORTA = (PORTA & 0xc0)| (data & 0x3f);
	unsigned char tmp = (data & 0xc0);
	PORTD = tmp;
	asm("nop");
	PORTD = tmp | _BV(PD5);
	asm("nop");
	PORTD = tmp;
}
void OutP3(unsigned char data)
{
	G_P3 = data;
	PORTA = (PORTA & 0xc0)| (data & 0x3f);
	unsigned char tmp = (data & 0xc0);
	PORTD = tmp;
	asm("nop");
	PORTD = tmp | _BV(PD4);
	asm("nop");
	PORTD = tmp;
}
void OutCON(unsigned char data)
{
	G_CON = data;
	PORTA = (PORTA & 0xc0)| (data & 0x3f);
	unsigned char tmp = (data & 0xc0);
	PORTD = tmp;
	asm("nop");
	PORTD = tmp | _BV(PD3);
	asm("nop");
	PORTD = tmp;
}
void OutP2Bit(unsigned char pos,unsigned char b)
{
	unsigned char data;
	data =(G_P2 & _CV(pos)) | ( b << pos);
	OutP2(data);
}
void OutP3Bit(unsigned char pos,unsigned char b)
{
	unsigned char data;
	data =(G_P3 & _CV(pos)) | ( b << pos);
	OutP3(data);
}
void OutCONBit(unsigned char pos,unsigned char b)
{
	unsigned char data;
	data =(G_CON & _CV(pos)) | ( b << pos);
	OutCON(data);
}

#define  SetVPP12V()   OutCONBit(HIGHVP,1)
#define  SetVPP5V()    OutCONBit(HIGHVP,0)

#define  VPP(b)        OutCONBit(VP,b)



void OutAddress(unsigned char addrh,unsigned char addrl)
{
    
    OutP2( (G_P2 & 0xC0) | (addrh & 0x3f));
    OutP1(addrl);
    return;
}




/*--------------------------------------------------------------------------*/ 
/* Reset to High                                                            */ 
/*--------------------------------------------------------------------------*/ 
inline void SetReset(void) 
{ 
	PORTD|=_BV(TARGET_RESET); 
} 

/*--------------------------------------------------------------------------*/ 
/* Reset to low                                                             */ 
/*--------------------------------------------------------------------------*/ 
inline void ClrReset(void) 
{ 
	PORTD&=_CV(TARGET_RESET); 

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
av一二三不卡影片| 日本vs亚洲vs韩国一区三区 | 日韩福利电影在线| 久久99九九99精品| av综合在线播放| 91精品国产欧美一区二区18| 久久精品一区二区三区不卡| 亚洲另类在线制服丝袜| 日韩精品视频网站| www.爱久久.com| 欧美一区二区三区在线| 中文一区在线播放| 日韩精品一卡二卡三卡四卡无卡| 国产福利一区二区| 欧美美女网站色| 欧美国产精品一区| 日本中文在线一区| 99综合影院在线| 精品一区二区精品| 色综合久久99| 2021久久国产精品不只是精品| 亚洲免费在线视频| 国产福利91精品一区二区三区| 欧美三级资源在线| 亚洲国产精品av| 日本va欧美va精品| 色一情一伦一子一伦一区| 精品国产伦一区二区三区免费| 亚洲一区二区三区四区五区中文| 高清视频一区二区| 日韩欧美一区中文| 亚洲第一电影网| 成人爱爱电影网址| 久久久久久久网| 日本中文字幕一区二区有限公司| 色婷婷一区二区三区四区| 国产亚洲欧美激情| 精品一区二区三区免费毛片爱| 在线视频欧美区| 国产精品美女一区二区三区| 蜜桃久久久久久| 欧美日韩国产高清一区二区三区 | 99视频在线观看一区三区| 欧美变态tickle挠乳网站| 天天色综合天天| 欧美唯美清纯偷拍| 亚洲欧美日本在线| 成人国产亚洲欧美成人综合网| 欧美xxx久久| 免费观看久久久4p| 8v天堂国产在线一区二区| 一区二区三区欧美激情| 成人av网站在线观看免费| 国产亚洲精品资源在线26u| 久久99深爱久久99精品| 91精品国产综合久久久久久| 亚洲一本大道在线| 色久综合一二码| 亚洲欧洲精品一区二区三区| 国产精品综合网| 精品国产免费一区二区三区四区| 麻豆精品新av中文字幕| 日韩视频一区二区在线观看| 天天免费综合色| 91精品国产色综合久久| 亚洲va韩国va欧美va精品| 欧美特级限制片免费在线观看| 亚洲精品国产高清久久伦理二区 | 香蕉影视欧美成人| 欧美日韩在线一区二区| 亚洲一二三专区| 欧美视频一区二区三区在线观看| 一区二区在线观看不卡| 欧美在线制服丝袜| 天天色综合天天| 日韩免费观看2025年上映的电影| 久久99精品久久久久久国产越南| 日韩视频一区在线观看| 国产一区二区主播在线| 日本一区免费视频| 99视频热这里只有精品免费| 亚洲免费在线播放| 欧美人成免费网站| 美女爽到高潮91| 国产日韩精品一区| 97久久超碰国产精品| 一区二区欧美在线观看| 717成人午夜免费福利电影| 男人操女人的视频在线观看欧美| 欧美一区二区三区免费在线看 | 精品精品欲导航| 国产suv一区二区三区88区| 国产精品国产自产拍高清av| 99久久婷婷国产| 亚洲444eee在线观看| 欧美成人精品1314www| 成人午夜精品在线| 亚洲精品欧美综合四区| 91精品国产91综合久久蜜臀| 国产美女av一区二区三区| 国产精品卡一卡二卡三| 欧美日韩精品一区二区| 久久国内精品视频| 国产精品美女久久久久高潮| 欧日韩精品视频| 另类人妖一区二区av| 国产欧美日韩在线| 欧美日韩一区二区三区高清| 免费在线一区观看| 国产精品午夜春色av| 欧美色倩网站大全免费| 国产综合久久久久久久久久久久| 国产精品国产三级国产有无不卡 | 五月婷婷激情综合网| 国产亚洲欧美日韩在线一区| 色系网站成人免费| 美女视频黄免费的久久 | 日本高清视频一区二区| 免费视频一区二区| 亚洲视频在线一区二区| 日韩一区二区三区四区| 99久久国产综合精品色伊| 免费成人在线播放| 成人免费一区二区三区视频| 日韩欧美电影一二三| 色悠久久久久综合欧美99| 国产一区二区三区在线观看免费视频| 亚洲三级久久久| 欧美精品一区男女天堂| 欧美视频三区在线播放| 国产91精品露脸国语对白| 日本女人一区二区三区| 亚洲免费视频成人| 国产三级欧美三级| 欧美肥胖老妇做爰| 91麻豆文化传媒在线观看| 九九热在线视频观看这里只有精品| 综合久久综合久久| 久久综合色一综合色88| 欧美日韩成人综合天天影院| aaa欧美大片| 国产一区二区三区久久悠悠色av| 亚洲国产精品麻豆| 国产精品成人一区二区三区夜夜夜| 91精品婷婷国产综合久久| 91国模大尺度私拍在线视频| 成人在线综合网站| 狠狠色丁香婷婷综合| 视频一区二区三区中文字幕| 亚洲免费在线看| **欧美大码日韩| 久久久无码精品亚洲日韩按摩| 日韩一区二区电影在线| 欧美色成人综合| 在线视频你懂得一区二区三区| 成人sese在线| 国产91清纯白嫩初高中在线观看| 久久精品国产澳门| 日日夜夜精品视频天天综合网| 亚洲黄网站在线观看| 国产精品麻豆一区二区| 国产欧美视频一区二区三区| 精品欧美乱码久久久久久| 91麻豆精品91久久久久久清纯| 欧美在线视频你懂得| 色婷婷久久久久swag精品| 波多野结衣中文字幕一区| 懂色av一区二区在线播放| 国产一区二区三区四区在线观看| 另类小说视频一区二区| 全部av―极品视觉盛宴亚洲| 天堂资源在线中文精品| 水蜜桃久久夜色精品一区的特点| 亚洲一区在线观看网站| 亚洲无线码一区二区三区| 亚洲一区二区三区四区不卡| 亚洲在线观看免费视频| 亚洲综合999| 午夜精品一区二区三区免费视频| 亚洲综合激情网| 天堂资源在线中文精品| 日韩av一级片| 蜜臀av性久久久久蜜臀aⅴ流畅| 奇米精品一区二区三区在线观看| 日本成人在线看| 麻豆国产精品官网| 国产一区二区在线影院| 国产成人日日夜夜| 不卡视频在线观看| 99久久99久久精品国产片果冻 | 亚洲国产成人精品视频| 亚洲国产欧美日韩另类综合 | 亚洲精品一区二区三区香蕉| 久久久久97国产精华液好用吗| 国产婷婷色一区二区三区| 国产精品久久久久久户外露出| 亚洲品质自拍视频网站| 亚洲无线码一区二区三区| 日本欧美一区二区在线观看| 精品中文字幕一区二区|