⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 math.c

📁 这是机场入口电子卡检查登记的设备。有输入
💻 C
字号:
#include"my.h"
extern bit fSeri0_Send_Ok;
extern bit fSeri1_Send_Ok; 
extern bit fSeri0_Reci_Ok;
extern bit fSeri1_Reci_Ok; 
extern bit fSeri2_Send_Ok;
extern bit fSeri2_Reci_Ok; 
/**************************************************
      串口0队列    pc
**************************************************/

extern unsigned char xdata xBuf_0[];//130
extern unsigned char xdata *Seri0_ReadSendPoint;
extern unsigned char xdata *Seri0_WriteSendPoint;
extern unsigned char data Seri0_SendNum; 
extern unsigned char data Seri0_ReciNum; 
/**************************************************
      //串口1队列
**************************************************/
extern unsigned char xdata xBuf_1[];//16
extern unsigned char xdata pagedata[];//128
extern unsigned char xdata *pagedataPoint;
extern unsigned char data Seri1_SendNum; 
extern unsigned char data Seri1_ReciNum; 
/**************************************************
      //串口2队列
**************************************************/
extern unsigned char xdata xBuf_2[];//384
extern unsigned char xdata *Seri2_ReadPoint;
extern unsigned char xdata *Seri2_WritePoint;
extern unsigned int data Seri2_SendNum; 
extern unsigned int data Seri2_ReciNum; 
/************************************/
extern void puart_init(void);
extern void PSendChar(unsigned char inch);
extern 	    Pc2eep2pc();//
	        G_id_my();//get本机卡号();
	        G_id_my_some();//get间接码();  
            G_id_my_some_show();//get显示码();
            geteep32(unsigned char a);//get显示码()的子程序
            geteep16(unsigned char a);//get显示码()的子程序
extern      S2send();  //串寇2发送IOur.ct
extern unsigned char IRcvStr
( unsigned char  Sla,      unsigned int  Address ,
  unsigned char  *RcvData ,unsigned char  len);
extern unsigned char t;
math()
{
   if((fSeri0_Reci_Ok==0)) {//串口0 (pc)要求处理
      Seri0_ReciNum=0; //串口工作初始化
      Seri0_SendNum=0; //&&(fSeri0_Send_Ok==0)
	  Pc2eep2pc();     //在I2C.c 
                       //2。1)接受pc数据包,   
                       //按存储页地址(双字节)对eep页写如入更新;
                       //2。2)按存储页地址 对eep页读出,向pc发送数据包
	  fSeri0_Reci_Ok=1;//允许中断处理

	  fSeri0_Send_Ok=1;
      TI=1;//串口0发送
	  }

   if((fSeri1_Reci_Ok==0)&&(fSeri1_Send_Ok==0))//容许程序处理 
   {
      G_id_my();          //ok get本机卡号();在math.c
	  G_id_my_some();     //get间接码();  在math.c
      G_id_my_some_show();//get显示码();  在math.c
	  fSeri2_Send_Ok=1;
      S2send();           //led 显示      在IOuart.c  
      Seri1_ReciNum=0;
      Seri1_SendNum=0;
	  fSeri1_Reci_Ok=1;//允许中断处理
	  fSeri1_Send_Ok=1;
      TI_1=1;
   }

}

union d{         
  INT16U   u16;
  INT8U    u8[2];
}m,m1,m2,m3;

#define id  m.u16 
#define idH m.u8[0] 
#define idL m.u8[1] 

#define idm m1.u16 
#define idmH m1.u8[0] 
#define idmL m1.u8[1] 

#define pageaddr m2.u16 
#define pageaddrH m2.u8[0] 
#define pageaddrL m2.u8[1] 

#define idmix m3.u16 
#define idmixH m3.u8[0] 
#define idmixL m3.u8[1] 
/************************************************* 		                 
功能:	读I2C
输入:	
		Sla:		芯片地址(A0:EEPROM1;A4:EEPROM2)
		Address:	片内首地址
		Send_Data:	数据地址
		len:      	长度(<=128)
输出: 	0:正确; 1: 错误
注意: 
**************************************************/ 
extern Set_Sla();         
       unsigned char card_char[10];
extern unsigned char tmp;
extern unsigned char Sla;
/************************************************* 		                 
功能:	get本机卡号();
1。1)接受卡号,
1。2)从页=0x780处,读出页的数据,  
最小卡号(双字节,高位在前)。存放在第0个到第1个字节,
1。3)本机卡号=卡号-最小卡

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -