📄 pc668okls.bak
字号:
0x12,0x13,0x24,0x49,0x9F,0x19,0x2F,0x69, // 衡 110
0xAF,0x21,0x21,0x3F,0x22,0x24,0x28,0x20,
0x00,0xC4,0x9E,0x00,0xE0,0x20,0xFE,0x24,
0xE4,0x04,0x24,0xF4,0x84,0x44,0x54,0x08,
0x10,0x13,0x10,0x7C,0x10,0x10,0xFD,0x12, // 超 111
0x51,0x5D,0x51,0x51,0x71,0x48,0x87,0x00,
0x08,0xFC,0x88,0x88,0x88,0xA8,0x10,0x00,
0xF8,0x08,0x08,0x08,0xF8,0x06,0xFC,0x00,
0x01,0x01,0x02,0x04,0x0A,0x11,0x20,0xDF, // 含 112
0x00,0x00,0x1F,0x10,0x10,0x10,0x1F,0x10,
0x00,0x00,0x80,0x40,0x20,0x90,0x8E,0xE4,
0x40,0x90,0xF8,0x10,0x10,0x10,0xF0,0x10,
0x02,0x01,0x7F,0x01,0x42,0x27,0x11,0x22, // 率 113
0x4F,0x01,0x01,0xFF,0x01,0x01,0x01,0x01,
0x00,0x08,0xFC,0x00,0x44,0x88,0x10,0x48,
0xE4,0x20,0x04,0xFE,0x00,0x00,0x00,0x00,
0x10,0x10,0x10,0x10,0xFD,0x12,0x35,0x30, // 检 114
0x58,0x56,0x91,0x11,0x11,0x10,0x1F,0x10,
0x40,0x40,0xA0,0xA0,0x10,0x0E,0xF4,0x00,
0x40,0x48,0x4C,0x48,0x50,0x04,0xFE,0x00,
0x02,0x01,0x7F,0x40,0x84,0x09,0x12,0x04, // 容 115
0x08,0x10,0x2F,0xC8,0x08,0x08,0x0F,0x08,
0x00,0x00,0xFE,0x02,0x44,0x30,0x90,0x40,
0x20,0x10,0xEE,0x24,0x20,0x20,0xE0,0x20,
0x10,0x10,0x12,0x12,0x5B,0x54,0x54,0x98, // 性 116
0x10,0x13,0x10,0x10,0x10,0x10,0x1F,0x10,
0x40,0x40,0x40,0x48,0xFC,0x40,0x40,0x40,
0x50,0xF8,0x40,0x40,0x40,0x44,0xFE,0x00,
0x10,0x08,0x7F,0x41,0x92,0x1E,0x22,0x54, // 额 117
0x08,0x14,0x22,0x7F,0xA2,0x22,0x3E,0x20,
0x04,0xFE,0x10,0x24,0x7E,0x44,0x54,0x54,
0x54,0x54,0x54,0x54,0x10,0x28,0x46,0x82,
0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01, // 上 118
0x01,0x01,0x01,0x01,0x01,0x01,0xFF,0x00,
0x00,0x00,0x00,0x00,0x10,0xF8,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x04,0xFE,0x00,
0x00,0xFF,0x02,0x02,0x02,0x02,0x02,0x02, // 下 119
0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02,
0x04,0xFE,0x00,0x00,0x00,0x80,0x40,0x30,
0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x7D,0x45,0x49,0x49,0x51,0x49,0x49, // 限 120
0x45,0x45,0x45,0x69,0x51,0x41,0x41,0x41,
0x08,0xFC,0x08,0x08,0xF8,0x08,0x08,0xF8,
0x04,0x88,0x50,0x20,0x10,0x4E,0x84,0x00,
0x02,0x01,0x7F,0x04,0x14,0x14,0x24,0x44, // 变 121
0x1F,0x08,0x04,0x02,0x01,0x02,0x0C,0x30,
0x00,0x08,0xFC,0x40,0x50,0x48,0x4C,0x44,
0xF0,0x20,0x40,0x80,0x00,0xC0,0x3C,0x08,
0x00,0x20,0x20,0x20,0x20,0x24,0x3E,0x20, // 比 122
0x20,0x20,0x20,0x20,0x26,0x38,0x60,0x00,
0x80,0x80,0x80,0x80,0x88,0x98,0xA0,0xC0,
0x80,0x80,0x80,0x82,0x82,0x82,0x7E,0x00,
0x00,0x20,0x22,0x22,0x22,0x22,0xFB,0x26, // 地 123
0x22,0x22,0x22,0x22,0x3A,0xE2,0x41,0x00,
0x40,0x40,0x40,0x40,0x48,0x7C,0xC8,0x48,
0x48,0x48,0x68,0x50,0x42,0x02,0xFE,0x00,
0x10,0x10,0x10,0x15,0xFF,0x11,0x11,0x11, // 址 124
0x11,0x11,0x11,0x13,0x1D,0xF1,0x47,0x00,
0x20,0x20,0x20,0x20,0x24,0x3E,0x20,0x20,
0x20,0x20,0x20,0x20,0x20,0x24,0xFE,0x00,
0x03,0x40,0x30,0x10,0x03,0x02,0xF2,0x13, // 通 125
0x12,0x12,0x13,0x12,0x12,0x2A,0x44,0x03,
0xF8,0x10,0xA0,0x48,0xFC,0x48,0x48,0xF8,
0x48,0x48,0xF8,0x48,0x68,0x50,0x06,0xFC,
0x00,0x47,0x30,0x11,0x01,0x01,0xF1,0x11, // 讯 126
0x17,0x11,0x11,0x11,0x15,0x19,0x11,0x01,
0x10,0xF8,0x10,0x10,0x10,0x10,0x10,0x50,
0xF0,0x10,0x10,0x10,0x0A,0x0A,0x06,0x00,
0x10,0x10,0x50,0x53,0x7C,0x90,0x17,0x18, // 特 127
0x30,0xD7,0x11,0x10,0x10,0x10,0x10,0x10,
0x40,0x40,0x48,0xFC,0x40,0x44,0xFE,0x10,
0x14,0xFE,0x10,0x90,0x90,0x10,0x50,0x20,
0x10,0x10,0x10,0x13,0xFC,0x10,0x31,0x3A, // 校 128
0x54,0x50,0x90,0x10,0x10,0x10,0x13,0x1C,
0x40,0x20,0x04,0xFE,0x00,0x88,0x06,0x8A,
0x88,0x50,0x50,0x20,0x50,0x88,0x0E,0x04,
0x08,0xFC,0x08,0x48,0x49,0x4A,0x4D,0x48, // 验 129
0x7C,0x06,0x05,0x1D,0xE5,0x44,0x17,0x08,
0x40,0x40,0xA0,0xA0,0x10,0x0E,0xF4,0x00,
0x48,0x48,0x48,0x50,0x10,0x24,0xFE,0x00,
0x08,0x08,0x08,0x10,0x17,0x30,0x52,0x92, // 位 130
0x11,0x11,0x10,0x10,0x10,0x1F,0x10,0x10,
0x80,0x40,0x40,0x08,0xFC,0x00,0x08,0x08,
0x10,0x10,0x90,0xA0,0x24,0xFE,0x00,0x00,
};
/*设置总线函数
描述用于设置I2C 控制寄存器包括总线时钟速率及从地址.不接受广播地址*/
void SetBus()
{
S1ADR=0x88; /*设置从地址,屏蔽高7 位即广播地址响应位复位*/
S1CON=0XC5; /*启动硬件I2C*/
}
/*************************
接收到对本器件的寻址信号时
产生,中断入口地址为2BH
*************************/
void sla_int() interrupt 5 using 1
{
/*static uchar POINT=0; //定义存储器及地址指针
unsigned char i;
i=S1STA;
if(i==0x60) //接收数据通过判断状态字识别操作
{
if(RcvByte668(&POINT)==0)return; //取一字节存储器地址值
if(POINT>48)POINT=0;
while(1)
{
if(RcvByte668(&R2buf[POINT])==0)return;
POINT++; //地址指针自增
if(POINT>48)POINT=0;
}
}
else if(i==0xa8) //发送数据
{
while(1)
{
if(SendByte668(T2buf[POINT])==0)return;
POINT++;
if(POINT>48)POINT=0;
}
} */
static unsigned char Rzen; //ren,
static I2cad=0;
//unsigned char i;
switch (S1STA)
{
//static unsigned char i;
case 0x60:S1CON=0x44;I2cad=0;break;
case 0x80:if (I2cad==0)
{
Rzen=S1DAT;S1CON=0x44;I2cad=1;
}
else
{
R2buf[Rzen]=S1DAT;S1CON=0x44;Rzen++;
if (Rzen>48) Rzen=0;
}
break;
case 0xA8: S1DAT=T2buf[Rzen];S1CON=0x44;Rzen++;
if (Rzen>48) Rzen=0;
break;
case 0xB8:S1DAT=T2buf[Rzen];S1CON=0x44;Rzen++;
if (Rzen>48) Rzen=0;break;
default: S1CON=0x44;break;
}
}
/*********************************************************************
起动总线函数
函数原型: void Start_I2c();
功能:启动I2C 总线,即发送I2C 起始条件
********************************************************************/
void Start_I2c()
{
SDA2=1; /*发送起始条件的数据信号*/
_Nop();
_Nop();
_Nop();
_Nop();
SCL2=1;
_Nop();
_Nop();
_Nop();
_Nop(); /*起始条件建立时间大于4.7us,延时*/
_Nop();
_Nop();
_Nop();
_Nop();
_Nop();
SDA2=0; /*发送起始信号*/
_Nop(); /* 起始条件锁定时间大于4 s*/
_Nop();
_Nop();
_Nop();
_Nop();
_Nop();
_Nop();
_Nop();
_Nop();
SCL2=0; /*钳住I2C 总线准备发送或接收数据*/
_Nop();
_Nop();
_Nop();
}
/***********************************************
结束总线函数
函数原型: void Stop_I2c();
功能:结束I2C 总线,即发送I2C 结束条件
***********************************************/
void Stop_I2c()
{
SDA2=0; /*发送结束条件的数据信号*/
_Nop(); /*发送结束条件的时钟信号*/
_Nop();
_Nop();
_Nop();
_Nop();
_Nop();
_Nop();
_Nop();
SCL2=1; /*结束条件建立时间大于4 s*/
_Nop();
_Nop();
_Nop();
_Nop();
_Nop();
_Nop();
_Nop();
_Nop();
SDA2=1; /*发送I2C 总线结束信号*/
_Nop();
_Nop();
_Nop();
_Nop();
_Nop();
_Nop();
_Nop();
_Nop();
_Nop();
}
/*******************************************************************
字节数据传送函数
函数原型: void SendByte(uchar c);
功能:将数据c 发送出去,可以是地址,也可以是数据,发完后等待应答,并对此状
态位进行操作(不应答或非应答都使ack=0 假) 发送数据正常ack=1;
ack=0 表示被控器无应答或损坏
********************************************************************/
void SendByte(uchar c)
{
uchar BitCnt;
for(BitCnt=0;BitCnt<8;BitCnt++) /*要传送的数据长度为8 位*/
{
if((c<<BitCnt)&0x80)SDA2=1; /*判断发送位*/
else SDA2=0;
_Nop();
_Nop();
_Nop();
_Nop();
_Nop();
_Nop();
SCL2=1; /*置时钟线为高通知被控器开始接收数据位*/
_Nop();
_Nop();
_Nop();
_Nop();
_Nop();/*保证时钟高电平周期大于4 s*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -