📄 otp.h.bak
字号:
sbit LED=P1^0;
sbit CE_DET=P1^1;
sbit CE_FLS=P1^2;
sbit VPP_CTRL=P1^3; //vpp=ntest
sbit VCC_CTRL=P1^4;
sbit NRST=P1^5;
sbit SCLK=P1^6;
sbit SDAT=P1^7;
sbit BZ_IO=P3^3;
sbit KEY1 = P3^5;
sbit KEY0 = P3^4;
sbit PA=P2^0;
sbit PB=P2^1;
sbit PC=P2^2;
sbit INH=P2^3;
sbit VDET=P2^4;
//sbit VC_DOWN=~P1^1;
sbit OE=P1^1;
bdata k_flag=0x0;
bdata s_flag=0x0;
sbit _50ms = s_flag^0;
//k_flag(_kdown, _lkey1, _lkey0, _key1, _key0), lkey_num, key_buf
uchar key_buf=0;
uchar lkey_num=0;
sbit _kdown=k_flag^7;
sbit _lkey1=k_flag^6;
sbit _lkey0=k_flag^5;
sbit _key1=k_flag^4;
sbit _key0=k_flag^3;
unsigned char otp_type=0x00;
extern uchar idata EpBuf[];
unsigned char code mcu_size[]={0x04,0x04,0x04,0x08,0x02}; //get muc_size from type
unsigned int code blank_config[]={0x3fff, 0x2fff, 0x3fff, 0x3fff, 0x27ff};
unsigned char blank_check(void);
void buzzer_1(void);
void buzzer_2(void);
void buzzer_3(void);
void DelayNms(uchar count);
void DelayXus(void); //5.4us
void download_otp(void);
void I2cReset(void);
void init_sub(void);
void initial_timer0(void);
void main_command(bit rw, uchar command_adrh, uchar command_adrl);
void otp_read(uchar page);
void otp_write(uchar page);
void pulse_read(void);
void read_configue();
void read_data(uchar *p);
bit rev_1bit(void);
void scan_popkey(void);
void send_1bit(bit si);
void smart_command(bit rw, uchar command_adrh, uchar command_adrl);
void start(void);
void stop(void);
void verify_otp(void);
void whole_write(void);
void write_configue();
void write_data(uchar *p_read, uchar wt_num);
void write_page(uint page, uchar *p_buf);
bit PIN_TEST(void);
bit pin_test_by_type(unsigned char mcu_type);
unsigned int cal_checksum();
void timer0_50ms(void) interrupt 1 using 1
{
TH0=(65536-50000)/256; /*每隔50MS扫描一次*/
TL0=(65536-50000)%256;
_50ms=1;
}
extern void init_sub(void)
extern void DelayNms(uchar count) //Nms
extern void DelayXus(void) //5.4us
extern void I2cReset(void)
extern void pulse_read(void)
extern void start(void)
extern void send_1bit(bit si)
extern void main_command(bit rw, uchar command_adrh, uchar command_adrl)
extern bit rev_1bit(void) //接收一个位
extern void whole_write(void)
extern void read_data(uchar *p) //读出两个字节放在p指定的地址
extern void stop(void)
extern void write_data(uchar *p_read, uchar wt_num)
extern void otp_write(uchar page)
extern void write_configue()
extern void read_configue()
extern void otp_read_usb(uchar page) //母片读取
extern void otp_read(uchar page) //母片读取
extern void smart_command(bit rw, uchar command_adrh, uchar command_adrl)
extern void buzzer_3(void)
extern void buzzer_1(void)
extern void buzzer_2(void)
extern void write_page(uint page, uchar *p_buf)
extern void download_otp(void)
extern unsigned int cal_checksum() //??? add type argument
extern unsigned char blank_check(void)
extern void verify_otp(void)
extern void scan_popkey(void)
extern void write_protect(void)
extern void initial_timer0(void)
extern bit PIN_TEST(void)
extern bit pin_test_by_type(unsigned char mcu_type)
extern void check_buttton()
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -