📄 led.i
字号:
#line 1 "F:\AVR-PRO\avr3\led.c"
#line 1 "F:\AVR-PRO\avr3/main.h"
#line 1 "C:/icc/include/iom8v.h"
#line 7 "C:/icc/include/iom8v.h"
#line 10 "C:/icc/include/iom8v.h"
#line 13 "C:/icc/include/iom8v.h"
#line 16 "C:/icc/include/iom8v.h"
#line 2 "F:\AVR-PRO\avr3/main.h"
#line 1 "C:/icc/include/macros.h"
#line 35 "C:/icc/include/macros.h"
void _StackCheck(void);
void _StackOverflowed(char);
#line 3 "F:\AVR-PRO\avr3/main.h"
#line 1 "C:/icc/include/stdio.h"
#line 1 "C:/icc/include/stdarg.h"
typedef char *va_list;
#line 9 "C:/icc/include/stdarg.h"
char *_va_start(void *, int);
#line 13 "C:/icc/include/stdarg.h"
#line 4 "C:/icc/include/stdio.h"
#line 1 "C:/icc/include/_const.h"
#line 10 "C:/icc/include/_const.h"
#line 5 "C:/icc/include/stdio.h"
int getchar(void);
int putchar(char);
int puts( char *);
int printf( char *, ...);
int vprintf( char *, va_list va);
int sprintf(char *, char *, ...);
int vsprintf(char *, char *, va_list va);
int scanf( char *, ...);
int vscanf( char *, va_list va);
int sscanf(char *, char *, ...);
int vsscanf(char *, char *, va_list va);
int cprintf(const char *, ...);
int csprintf(char *, const char *, ...);
#line 4 "F:\AVR-PRO\avr3/main.h"
#line 1 "F:\AVR-PRO\avr3/key.c"
#line 1 "F:\AVR-PRO\avr3/sga.h"
#line 1 "C:/icc/include/iom8v.h"
#line 7 "C:/icc/include/iom8v.h"
#line 10 "C:/icc/include/iom8v.h"
#line 13 "C:/icc/include/iom8v.h"
#line 16 "C:/icc/include/iom8v.h"
#line 2 "F:\AVR-PRO\avr3/sga.h"
#line 1 "C:/icc/include/macros.h"
#line 35 "C:/icc/include/macros.h"
#line 3 "F:\AVR-PRO\avr3/sga.h"
#line 1 "C:/icc/include/stdio.h"
#line 4 "F:\AVR-PRO\avr3/sga.h"
unsigned char MBZ,VARIA_BIT,LCD[23],KKEY_n[14],KEY,
CHW;
struct data
{
unsigned BEEP1:1;
unsigned BEEP2:1;
unsigned BIT1 :1;
unsigned BIT2 :1;
unsigned BIT3 :1;
unsigned BIT4 :1;
unsigned BIT5 :1;
unsigned BIT6 :1;
}a;
#line 2 "F:\AVR-PRO\avr3/key.c"
unsigned char key_t2()
{
static unsigned char NK=0,
PPK=111,
KZT,
YYK,
NKEY_n,
key_i=0;
unsigned char a,c, KEYIN,z,i;
z=0;
(*(volatile unsigned char *)0x34)|=0X3E;
(*(volatile unsigned char *)0x35)|=(1 << (5));(*(volatile unsigned char *)0x35)|=(1 << (4));(*(volatile unsigned char *)0x35)|=(1 << (3));
_nop_();
switch(key_i)
{
case 0:(*(volatile unsigned char *)0x35)|=(1 << (2));(*(volatile unsigned char *)0x35)&=-(1 << (1)); break;
case 1:(*(volatile unsigned char *)0x35)&=-(1 << (2));(*(volatile unsigned char *)0x35)|=(1 << (1)); break;
}
key_i++;
if(key_i==2) key_i=0;
_nop_(); _nop_();_nop_();_nop_();_nop_();
_nop_(); _nop_();_nop_();_nop_();_nop_();
_nop_(); _nop_();_nop_();_nop_();_nop_();
_nop_(); _nop_();_nop_();_nop_();_nop_();
_nop_(); _nop_();_nop_();_nop_();_nop_();
(*(volatile unsigned char *)0x34)|=0XC7;
i=(*(volatile unsigned char *)0x35);
i=i&0x38;
if(i==0x18)
{
a=3;
}else
if(i==0x28)
{
a=4;
}else
if(i==0x30)
{
a=5;
}else
{
a=0;
}
a=a*10+key_i;
if(a<20)
{
NKEY_n++;
if(NKEY_n==4)
{
NKEY_n=0; z=1;
for(a=0;a!=14;a++)
KKEY_n[a]=0;
KEYIN=0;
}
}else
{
NKEY_n=0;
switch(a)
{
case 32:KKEY_n[4]++;break;
case 33:KKEY_n[5]++;break;
case 31:KKEY_n[3]++;break;
case 30:KKEY_n[8]++;break;
case 42:KKEY_n[2]++;break;
case 43:KKEY_n[7]++;break;
case 41:KKEY_n[1]++;break;
case 40:KKEY_n[0]++;break;
case 52:KKEY_n[11]++;break;
case 53:KKEY_n[13]++;break;
case 51:KKEY_n[12]++;break;
case 50:KKEY_n[6]++;break;
case 63:KKEY_n[9]++;break;
case 60:KKEY_n[10]++;break;
}
for(a=0;a!=14;a++)
{
if(KKEY_n[a]==4)
{
KEYIN=a+1; z=1;
NKEY_n=0;
for(c=0;c!=14;c++) KKEY_n[c]=0;
break;
}
}
if(a==14) return(0);
}
if(z==0) return(0);
if(KEYIN==0)
{
if((++NK)>2)
{
NK=30;
KEY=0;
switch(PPK)
{
case 5 :
KEY=PPK;
PPK=111;
if(YYK<16)
return(1);
break;
default:PPK=111;
}
YYK=0;
}
return(0);
}
NK=0;
if(PPK!=KEYIN)
{
PPK=KEYIN;
YYK=0;
KZT=1;
return(0);
}
if(YYK==200) return(0);
++YYK;
switch(KZT)
{
case 1: if((PPK== 5 && YYK>26))
{
YYK=200;
KEY=PPK;
return(2);
}
if ( PPK== 1 || PPK== 2 )
{
if(YYK!=1) return(0);
_nop_();
KEY=PPK;
return(1);
}
if(PPK== 3 || PPK== 4 )
{
KEY=PPK;
KZT=2; YYK=0;
if(CHW==0)BEEP1=1;
return(1);
}
return(0);
case 2: if(YYK!=20 && (PPK== 3 || PPK== 4 ))
return(0);
YYK=0;
KEY=PPK;
KZT=3;
return(1);
case 3: if (YYK!=10) return(0);
YYK=0;
KEY=PPK;
return(1);
}
}
#line 5 "F:\AVR-PRO\avr3/main.h"
extern unsigned char key_t2();
extern unsigned char MBZ,VARIA_BIT,LCD[23],KKEY_n[14],KEY,
CHW;
struct data
{
unsigned BEEP1:1;
unsigned BEEP2:1;
unsigned BIT1 :1;
unsigned BIT2 :1;
unsigned BIT3 :1;
unsigned BIT4 :1;
unsigned BIT5 :1;
unsigned BIT6 :1;
}a;
#line 2 "F:\AVR-PRO\avr3\led.c"
#pragma interrupt_handler timet0_ovf:10
void timet0_ovf(void)
{
static unsigned int
BEEP1_CONT=110,
BEEP2_CONT=190,
M05_CONT=800;
(*(volatile unsigned char *)0x5F) =0X80;
(*(volatile unsigned char *)0x52)=0XEE;
(*(volatile unsigned char *)0x37)|=(1 << (0));
(*(volatile unsigned char *)0x38)|=(1 << (0));
M05_CONT--;
if(M05_CONT==0)
{
M05_CONT=800;
if(MBZ==0) { MBZ=1; }
else { MBZ=0; }
}
if(a.BEEP1==1)
{
(*(volatile unsigned char *)0x32)&=~(1 << (6));
if((BEEP1_CONT--)==1)
{
BEEP1_CONT=110;
(*(volatile unsigned char *)0x32)|=(1 << (6));
a.BEEP1=0;
}
}
if(a.BEEP2==1)
{
--BEEP2_CONT;
if(BEEP2_CONT>113)
{
(*(volatile unsigned char *)0x32)&=~(1 << (6));
}else
if(BEEP2_CONT>75)
{
(*(volatile unsigned char *)0x32)|=(1 << (6));
}else
if(BEEP2_CONT>0)
{
(*(volatile unsigned char *)0x32)&=~(1 << (6));
}else
if(BEEP2_CONT==0)
{
(*(volatile unsigned char *)0x32)|=(1 << (6));
a.BEEP2=0;
BEEP2_CONT=190;
}
}
}
#line 137 "F:\AVR-PRO\avr3\led.c"
void main(void)
{
unsigned int i;
unsigned char x;
#line 153 "F:\AVR-PRO\avr3\led.c"
for(x=0;x<23;x++) LCD[x]=0XFF;
(*(volatile unsigned char *)0x53)=0X05;
(*(volatile unsigned char *)0x52)=0XEE;
(*(volatile unsigned char *)0x59)|=0X01;
(*(volatile unsigned char *)0x31)&=0XF3;
(*(volatile unsigned char *)0x55)=0X08;
#line 168 "F:\AVR-PRO\avr3\led.c"
(*(volatile unsigned char *)0x37)|=0X3e;
(*(volatile unsigned char *)0x4F)=0X63;
(*(volatile unsigned char *)0x4E)=0X12;
(*(volatile unsigned int *)0x4A)=0x61A7;
(*(volatile unsigned int *)0x48)=2500;
(*(volatile unsigned char *)0x5F) =0X80;
MBZ=0;
while(1)
{
(*(volatile unsigned char *)0x31)|=(1 << (7));
(*(volatile unsigned char *)0x31)|=(1 << (6));
if(MBZ==0)
{
(*(volatile unsigned char *)0x32)|=(1 << (7));
}
if(MBZ==1)
{
(*(volatile unsigned char *)0x32)&=~(1 << (7));
a.BEEP1=1;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -