From 2ebb8217f43b69f491620423ea4d5d5944d1f91d Mon Sep 17 00:00:00 2001
From: yincheng.zhong <634916154@qq.com>
Date: 星期六, 05 七月 2025 22:43:58 +0800
Subject: [PATCH] 格式化部分代码

---
 keil/include/drivers/PCA9555.c |  496 +++++++++++++++++++++++++++---------------------------
 1 files changed, 249 insertions(+), 247 deletions(-)

diff --git a/keil/include/drivers/PCA9555.c b/keil/include/drivers/PCA9555.c
index 88588f8..027d629 100644
--- a/keil/include/drivers/PCA9555.c
+++ b/keil/include/drivers/PCA9555.c
@@ -12,7 +12,7 @@
     io_pin_mux_set(SCL_PIN, IO_FUNC0);
 
     gpio_pin_set_dir(SDA_PIN , GPIO_DIR_OUT, 1);
-		//io_open_drain_set(SDA_PIN, 1);
+    //io_open_drain_set(SDA_PIN, 1);
     io_pull_set(SDA_PIN , IO_PULL_UP, IO_PULL_UP_LEVEL2);//输出高阻态
 
     gpio_pin_set_dir(SCL_PIN , GPIO_DIR_OUT, 1);
@@ -29,8 +29,8 @@
 //		delay_us(10);
 //    SDA_0;//START:when CLK is high,DATA change form high to low
 //    delay_us(10);
-	
-	//		IIC2_SDA_OUT();     //sda线输出
+
+    //		IIC2_SDA_OUT();     //sda线输出
     SDA_1;
 //		delay_us(10);
     SCL_1;
@@ -41,31 +41,31 @@
 }
 void IIC_pca_Ready(void)
 {
-   
-		SCL_1;	
-  	delay_us(10);
-		SDA_1;
-   	delay_us(10);
+
+    SCL_1;
+    delay_us(10);
+    SDA_1;
+    delay_us(10);
 }
 //产生IIC停止信号
 void IIC2_pca_Stop(void)
 {
 
 //    SDA_0;//STOP:when CLK is high DATA change form low to high
-//	
+//
 //    delay_us(10);
 //    SCL_1;
 //		delay_us(10);
 //    SDA_1;//发送I2C总线结束信号
 //    delay_us(10);
-	
-			SCL_0;
-			SDA_0;//sToP:when ClK is high DATA change form low to high
-			delay_us(10);
-			SCL_1;
-			//delay_us(10);
-			SDA_1;//7发送I2C总线结束信号
-			delay_us(10);
+
+    SCL_0;
+    SDA_0;//sToP:when ClK is high DATA change form low to high
+    delay_us(10);
+    SCL_1;
+    //delay_us(10);
+    SDA_1;//7发送I2C总线结束信号
+    delay_us(10);
 }
 //等待应答信号到来
 //返回值:1,接收应答失败
@@ -73,16 +73,16 @@
 uint8_t IIC2_Wait_pca_Ack(void)
 {
     uint8_t ucErrTime=0;
-//  IIC2_SDA_IN();  
- 
-	gpio_pin_set_dir(SDA_PIN,GPIO_DIR_IN,1); //SDA设置为输入等待接收端的应答信号
-	 SDA_1;
-	delay_us(6);
-	SCL_1;
-  delay_us(6);	
+//  IIC2_SDA_IN();
+
+    gpio_pin_set_dir(SDA_PIN,GPIO_DIR_IN,1); //SDA设置为输入等待接收端的应答信号
+    SDA_1;
+    delay_us(6);
+    SCL_1;
+    delay_us(6);
 //    SDA_1;
 //    delay_us(6);
-    
+
 
     while(IIC2_READ_SDA)
     {
@@ -90,14 +90,14 @@
         if(ucErrTime>250)
         {
             IIC2_pca_Stop();
-						gpio_pin_set_dir(SDA_PIN , GPIO_DIR_OUT, 1);
+            gpio_pin_set_dir(SDA_PIN , GPIO_DIR_OUT, 1);
             return 1;
         }
     }
     gpio_pin_set_dir(SDA_PIN , GPIO_DIR_OUT, 0);
     SCL_0;//时钟输出0
     return 0;
-		
+
 }
 //产生ACK应答
 void IIC2_pca_send_Ack(void)
@@ -106,8 +106,8 @@
     SDA_0;//读取SDA电平为低则有应答
     delay_us(10);
     SCL_1;
-		delay_us(10);
-		SCL_0;
+    delay_us(10);
+    SCL_0;
 }
 //不产生ACK应答
 void IIC2_pca_send_NAck(void)
@@ -116,8 +116,8 @@
     SDA_1;//读取SDA电平为高则无应答信号
     delay_us(10);
     SCL_1;
-		delay_us(10);
-		SCL_0;
+    delay_us(10);
+    SCL_0;
 }
 //IIC发送一个字节,WRITE
 //返回从机有无应答
@@ -156,7 +156,7 @@
 uint8_t IIC2_Read_pca_Byte(unsigned char ack)
 {
     unsigned char i,receive=0,bit=0;
-		gpio_pin_set_dir(SDA_PIN,GPIO_DIR_IN,0); //设置为输入读取电平
+    gpio_pin_set_dir(SDA_PIN,GPIO_DIR_IN,0); //设置为输入读取电平
 //		io_pull_set(SDA_PIN , IO_HIGH_Z, IO_PULL_UP_NONE);
     for(i=0; i<8; i++ )
     {
@@ -164,19 +164,19 @@
         delay_us(6);//修改时间
         SCL_1;
         //receive<<=1;
-        if(IIC2_READ_SDA){
-					bit=1<<i;
-					receive|=bit;
-				}
+        if(IIC2_READ_SDA) {
+            bit=1<<i;
+            receive|=bit;
+        }
         delay_us(5);
     }
-		SCL_0;
-		if(ack==2){
-		gpio_pin_set_dir(SDA_PIN,GPIO_DIR_OUT,0); //设置为输出恢复ACK
-		}else{
-		gpio_pin_set_dir(SDA_PIN,GPIO_DIR_OUT,1); //设置为输出恢复ACK
-		}
-		
+    SCL_0;
+    if(ack==2) {
+        gpio_pin_set_dir(SDA_PIN,GPIO_DIR_OUT,0); //设置为输出恢复ACK
+    } else {
+        gpio_pin_set_dir(SDA_PIN,GPIO_DIR_OUT,1); //设置为输出恢复ACK
+    }
+
 //		io_pull_set(SDA_PIN , IO_PULL_UP, IO_PULL_UP_LEVEL2);//输出高阻态
 //    if (!ack)
 //        IIC2_pca_send_NAck();//发送nACK
@@ -196,17 +196,17 @@
 int temp_ack3,temp_ack4,temp_ack5,temp_ack6;
 void IIC_Write_Pca9555(unsigned char addr,unsigned char reg_addr,unsigned char low_byte,unsigned char high_byte)
 {
-	  IIC2_pca_Start();
-	  IIC2_Send_pca_Byte(addr & 0xfe);
-	  temp_ack3=IIC2_Wait_pca_Ack();
-	  IIC2_Send_pca_Byte(reg_addr);
-	  temp_ack4=IIC2_Wait_pca_Ack();
-	  IIC2_Send_pca_Byte(low_byte);
-	  temp_ack5=IIC2_Wait_pca_Ack();
-	  IIC2_Send_pca_Byte(high_byte);
-	  temp_ack6=IIC2_Wait_pca_Ack();
-	  IIC2_pca_Stop();
-	
+    IIC2_pca_Start();
+    IIC2_Send_pca_Byte(addr & 0xfe);
+    temp_ack3=IIC2_Wait_pca_Ack();
+    IIC2_Send_pca_Byte(reg_addr);
+    temp_ack4=IIC2_Wait_pca_Ack();
+    IIC2_Send_pca_Byte(low_byte);
+    temp_ack5=IIC2_Wait_pca_Ack();
+    IIC2_Send_pca_Byte(high_byte);
+    temp_ack6=IIC2_Wait_pca_Ack();
+    IIC2_pca_Stop();
+
 //  	  IIC2_Start();
 //    IIC2_Send_Byte(addr & 0xfe);	    //发送写命令
 //    temp_ack3=IIC2_Wait_pca_Ack();
@@ -232,45 +232,45 @@
 //    IIC2_Stop();//产生一个停止条件
 */
 int temp_ack,temp_ack1,temp_ack2;
- uint8_t temp=0;
+uint8_t temp=0;
 void IIC_Read_Pca9555(uint8_t addr,uint8_t reg_addr,uint8_t* pBuffer,uint16_t num)
 {
-	  IIC2_pca_Start();
-	  IIC2_Send_pca_Byte(addr & 0xfe);
-	  temp_ack=IIC2_Wait_pca_Ack();
-	  IIC2_Send_pca_Byte(reg_addr);
-	  temp_ack1=IIC2_Wait_pca_Ack();
+    IIC2_pca_Start();
+    IIC2_Send_pca_Byte(addr & 0xfe);
+    temp_ack=IIC2_Wait_pca_Ack();
+    IIC2_Send_pca_Byte(reg_addr);
+    temp_ack1=IIC2_Wait_pca_Ack();
 
-	  IIC2_pca_Start();
-	  IIC2_Send_pca_Byte(addr | 0x01);
-	  temp_ack2=IIC2_Wait_pca_Ack();
-		
+    IIC2_pca_Start();
+    IIC2_Send_pca_Byte(addr | 0x01);
+    temp_ack2=IIC2_Wait_pca_Ack();
+
 //		if(num==2){
 //		pBuffer[0]=IIC2_Read_Byte(1);
 //		pBuffer[1]=IIC2_Read_Byte(0);
 //		}else{
 //		pBuffer[0]=IIC2_Read_Byte(0);
 //		}
-	
-	  while (num)
-	  {
-		    *pBuffer = IIC2_Read_pca_Byte(num);
-			if (num == 1)
-			{
-				IIC2_pca_send_NAck();
-				//IIC2_NAck();
-			}
-			else
-			{ 
-				IIC2_pca_send_Ack();
-				//IIC2_Ack();
-			}	
-		    pBuffer++;
-			num--;
-	  }
-	  IIC2_pca_Stop();
 
-   
+    while (num)
+    {
+        *pBuffer = IIC2_Read_pca_Byte(num);
+        if (num == 1)
+        {
+            IIC2_pca_send_NAck();
+            //IIC2_NAck();
+        }
+        else
+        {
+            IIC2_pca_send_Ack();
+            //IIC2_Ack();
+        }
+        pBuffer++;
+        num--;
+    }
+    IIC2_pca_Stop();
+
+
 //    IIC2_Start();
 //    IIC2_Send_Byte(addr & 0xfe);	     //发送写命令
 //    IIC2_Wait_pca_Ack();
@@ -290,10 +290,10 @@
   data_H  写入芯片的前后位数据
 */
 void PCA9555_write_output_port_data(unsigned char addr,unsigned char data_L,unsigned char data_H)
-{                        
-		IIC_Write_Pca9555(addr,PCA9555_REG_OUT0,data_L,data_H);//	PCA9555_REG_OUT0 输出寄存器0地址
-		pca9555writedata_output[0]=	data_L;//保存该次设置数据
-		pca9555writedata_output[1]=	data_H;	
+{
+    IIC_Write_Pca9555(addr,PCA9555_REG_OUT0,data_L,data_H);//	PCA9555_REG_OUT0 输出寄存器0地址
+    pca9555writedata_output[0]=	data_L;//保存该次设置数据
+    pca9555writedata_output[1]=	data_H;
 }
 
 /*写pca9555第二层驱动,可辅助逻辑不破坏最底层驱动,该函数默认配置输出寄存器
@@ -302,10 +302,10 @@
   data_H  写入芯片的前后位数据
 */
 void PCA9555_write_config_port_data(unsigned char addr,unsigned char data_L,unsigned char data_H)
-{                        
-		IIC_Write_Pca9555(addr,PCA9555_REG_CFG0,data_L,data_H);//	PCA9555_REG_OUT0 输出寄存器0地址 
-		pca9555writedata_config[0]=	data_L;//保存该次设置数据
-		pca9555writedata_config[1]=	data_H;
+{
+    IIC_Write_Pca9555(addr,PCA9555_REG_CFG0,data_L,data_H);//	PCA9555_REG_OUT0 输出寄存器0地址
+    pca9555writedata_config[0]=	data_L;//保存该次设置数据
+    pca9555writedata_config[1]=	data_H;
 }
 /*写pca9555第二层驱动,可辅助逻辑不破坏最底层驱动,该函数默认配置输入极性翻转寄存器 1翻转 2不变
   addr    芯片地址,0x40表示第一个芯片地址
@@ -313,10 +313,10 @@
   data_H  写入芯片的前后位数据
 */
 void PCA9555_write_polarity_port_data(unsigned char addr,unsigned char data_L,unsigned char data_H)
-{                        
-		IIC_Write_Pca9555(addr,PCA9555_REG_POL0,data_L,data_H);//	PCA9555_REG_OUT0 输出寄存器0地址 
-		pca9555writedata_polarity[0]=	data_L;//保存该次设置数据
-		pca9555writedata_polarity[1]=	data_H;
+{
+    IIC_Write_Pca9555(addr,PCA9555_REG_POL0,data_L,data_H);//	PCA9555_REG_OUT0 输出寄存器0地址
+    pca9555writedata_polarity[0]=	data_L;//保存该次设置数据
+    pca9555writedata_polarity[1]=	data_H;
 }
 
 /*读pca9555第二层驱动,可辅助逻辑不破坏最底层驱动
@@ -325,7 +325,7 @@
 */
 void PCA9555_readdata(unsigned char addr,unsigned char* pBuffer)
 {
-		IIC_Read_Pca9555(addr,PCA9555_REG_IN0,pBuffer,2);//2为读出芯片数据组数,9555为2组,全部读出   
+    IIC_Read_Pca9555(addr,PCA9555_REG_IN0,pBuffer,2);//2为读出芯片数据组数,9555为2组,全部读出
 }
 /*读pca9555第二层驱动,可辅助逻辑不破坏最底层驱动
   addr     芯片地址,0x40表示第一个芯片地址
@@ -333,7 +333,7 @@
 */
 void PCA9555_readdata_from_output_register(unsigned char addr,unsigned char* pBuffer)
 {
-		IIC_Read_Pca9555(addr,PCA9555_REG_OUT0,pBuffer,2);//2为读出芯片数据组数,9555为2组,全部读出   
+    IIC_Read_Pca9555(addr,PCA9555_REG_OUT0,pBuffer,2);//2为读出芯片数据组数,9555为2组,全部读出
 }
 /*读pca9555第二层驱动,可辅助逻辑不破坏最底层驱动
   addr     芯片地址,0x40表示第一个芯片地址
@@ -341,7 +341,7 @@
 */
 void PCA9555_readdata_from_polarity_register(unsigned char addr,unsigned char* pBuffer)
 {
-		IIC_Read_Pca9555(addr,PCA9555_REG_POL0,pBuffer,2);//2为读出芯片数据组数,9555为2组,全部读出   
+    IIC_Read_Pca9555(addr,PCA9555_REG_POL0,pBuffer,2);//2为读出芯片数据组数,9555为2组,全部读出
 }
 /*读pca9555第二层驱动,可辅助逻辑不破坏最底层驱动
   addr     芯片地址,0x40表示第一个芯片地址
@@ -349,7 +349,7 @@
 */
 void PCA9555_readdata_from_config_register(unsigned char addr,unsigned char* pBuffer)
 {
-		IIC_Read_Pca9555(addr,PCA9555_REG_CFG0,pBuffer,2);//2为读出芯片数据组数,9555为2组,全部读出   
+    IIC_Read_Pca9555(addr,PCA9555_REG_CFG0,pBuffer,2);//2为读出芯片数据组数,9555为2组,全部读出
 }
 ///*配置芯片的对应管脚输入输出功能
 //  addr    芯片地址,0x40表示第一个芯片地址
@@ -357,8 +357,8 @@
 //  data_H  写入芯片的前后位数据
 //*/
 //void PCA9555_config_gpio(unsigned char addr,unsigned char data_L,unsigned char data_H)
-//{                        
-//		IIC_Write_Pca9555(addr,PCA9555_REG_CFG0,data_L,data_H);//	PCA9555_REG_OUT0 输出寄存器0地址    
+//{
+//		IIC_Write_Pca9555(addr,PCA9555_REG_CFG0,data_L,data_H);//	PCA9555_REG_OUT0 输出寄存器0地址
 //}
 
 
@@ -368,16 +368,16 @@
 */
 void PCA9555_Set_All_Output(unsigned char value)
 {
-		int i;
-		for(i=0;i<4;i++){
-			if(value==0)
-				pca9555writedata_output[i]=0;
-			else
-				pca9555writedata_output[i]=0xff;
-		}
-		PCA9555_write_output_port_data(PCA9555_DEVICE_ADDR,pca9555writedata_output[0],pca9555writedata_output[1]);//全部输出为1或0 
-		//多芯片
-		//PCA9555_writedata(PCA9555_REG_OUT0,pca9555writedata[2],pca9555writedata[3]);
+    int i;
+    for(i=0; i<4; i++) {
+        if(value==0)
+            pca9555writedata_output[i]=0;
+        else
+            pca9555writedata_output[i]=0xff;
+    }
+    PCA9555_write_output_port_data(PCA9555_DEVICE_ADDR,pca9555writedata_output[0],pca9555writedata_output[1]);//全部输出为1或0
+    //多芯片
+    //PCA9555_writedata(PCA9555_REG_OUT0,pca9555writedata[2],pca9555writedata[3]);
 }
 /*设置第一个芯片某一通道IO高低输出仅限输出
   num    控制的IO序号 1~16
@@ -385,20 +385,20 @@
 */
 void PCA9555_Set_One_Value_Output(unsigned char num,unsigned char value)
 {
-	 if(num >0 && num <17){//第一个芯片IO1-16控制
-		 if(num <9){
-				if(value)pca9555writedata_output[0] |= 0x01<<(num - 1);//赋值位高
-				else pca9555writedata_output[0] &= ~(0x01<<(num - 1));//赋值位低
-			}
-			else{
-				if(value)pca9555writedata_output[1] |= 0x01<<(num - 9);//赋值位高
-				else pca9555writedata_output[1] &= ~(0x01<<(num - 9));//赋值位低
-			}
-			PCA9555_write_output_port_data(PCA9555_DEVICE_ADDR,pca9555writedata_output[0],pca9555writedata_output[1]);
-	 }else{//超出芯片控制
-	 		//error
-	 }
-	 //底下为多芯片逻辑
+    if(num >0 && num <17) { //第一个芯片IO1-16控制
+        if(num <9) {
+            if(value)pca9555writedata_output[0] |= 0x01<<(num - 1);//赋值位高
+            else pca9555writedata_output[0] &= ~(0x01<<(num - 1));//赋值位低
+        }
+        else {
+            if(value)pca9555writedata_output[1] |= 0x01<<(num - 9);//赋值位高
+            else pca9555writedata_output[1] &= ~(0x01<<(num - 9));//赋值位低
+        }
+        PCA9555_write_output_port_data(PCA9555_DEVICE_ADDR,pca9555writedata_output[0],pca9555writedata_output[1]);
+    } else { //超出芯片控制
+        //error
+    }
+    //底下为多芯片逻辑
 //	 else if(num >16 && num <33){//第二个芯片IO1-16控制,使用更多IO以此类推,最多支持0x000~0x111 共8个芯片串联,共128个IO,如果不够可以使用PCA9505,40个IO,最多串联320个IO
 //	 		if(num <25){
 //				if(value)pca9555writedata[2] |= 0x01<<(num - 17);//赋值位高
@@ -407,7 +407,7 @@
 //			else{
 //				if(value)pca9555writedata[3] |= 0x01<<(num - 25);//赋值位高
 //				else pca9555writedata[3] &= ~(0x01<<(num - 25));//赋值位低
-//			}	
+//			}
 //			PCA9555_writedata(PCA9555_REG_OUT1,pca9555writedata[2],pca9555writedata[3]);
 //	 }
 //	 else{//超出芯片控制
@@ -418,42 +418,42 @@
   num    控制的IO序号 1~17
   value  控制的IO输出状态 0:输出 1:输入
 */
-void PCA9555_Set_One_Value_Config(unsigned char num,unsigned char value) 
+void PCA9555_Set_One_Value_Config(unsigned char num,unsigned char value)
 {
-	
-	 if(num >0 && num <17){//第一个芯片IO1-16控制
-		 if(num <9){
-				if(value)pca9555writedata_config[0] |= 0x01<<(num - 1);//赋值位高
-				else pca9555writedata_config[0] &= ~(0x01<<(num - 1));//赋值位低
-			}
-			else{
-				if(value)pca9555writedata_config[1] |= 0x01<<(num - 9);//赋值位高
-				else pca9555writedata_config[1] &= ~(0x01<<(num - 9));//赋值位低
-			}
-			PCA9555_write_config_port_data(PCA9555_DEVICE_ADDR,pca9555writedata_config[0],pca9555writedata_config[1]);
-	 }else{//超出芯片控制
-	 		//error
-	 }
+
+    if(num >0 && num <17) { //第一个芯片IO1-16控制
+        if(num <9) {
+            if(value)pca9555writedata_config[0] |= 0x01<<(num - 1);//赋值位高
+            else pca9555writedata_config[0] &= ~(0x01<<(num - 1));//赋值位低
+        }
+        else {
+            if(value)pca9555writedata_config[1] |= 0x01<<(num - 9);//赋值位高
+            else pca9555writedata_config[1] &= ~(0x01<<(num - 9));//赋值位低
+        }
+        PCA9555_write_config_port_data(PCA9555_DEVICE_ADDR,pca9555writedata_config[0],pca9555writedata_config[1]);
+    } else { //超出芯片控制
+        //error
+    }
 }
 /*设置第一个芯片某一通道默认输入的极性
   num    控制的IO序号 1~17
   value  控制的IO输出状态 0:非使能 1:使能翻转为电平0
 */
-void PCA9555_Set_One_Value_Polarity_input(unsigned char num,unsigned char value) 
+void PCA9555_Set_One_Value_Polarity_input(unsigned char num,unsigned char value)
 {
-	 if(num >0 && num <17){//第一个芯片IO1-16控制
-		 if(num <9){
-				if(value)pca9555writedata_polarity[0] |= 0x01<<(num - 1);//赋值位高
-				else pca9555writedata_polarity[0] &= ~(0x01<<(num - 1));//赋值位低
-			}
-			else{
-				if(value)pca9555writedata_polarity[1] |= 0x01<<(num - 9);//赋值位高
-				else pca9555writedata_polarity[1] &= ~(0x01<<(num - 9));//赋值位低
-			}
-			PCA9555_write_polarity_port_data(PCA9555_DEVICE_ADDR,pca9555writedata_polarity[0],pca9555writedata_polarity[1]);
-	 }else{//超出芯片控制
-	 		//error
-	 }
+    if(num >0 && num <17) { //第一个芯片IO1-16控制
+        if(num <9) {
+            if(value)pca9555writedata_polarity[0] |= 0x01<<(num - 1);//赋值位高
+            else pca9555writedata_polarity[0] &= ~(0x01<<(num - 1));//赋值位低
+        }
+        else {
+            if(value)pca9555writedata_polarity[1] |= 0x01<<(num - 9);//赋值位高
+            else pca9555writedata_polarity[1] &= ~(0x01<<(num - 9));//赋值位低
+        }
+        PCA9555_write_polarity_port_data(PCA9555_DEVICE_ADDR,pca9555writedata_polarity[0],pca9555writedata_polarity[1]);
+    } else { //超出芯片控制
+        //error
+    }
 }
 /*读取5V引脚的输入高低电平
   返回值 高1 低0 电平
@@ -479,13 +479,15 @@
 {
     if(input5v_time)
     {
-        input5v_time=0;    
+        input5v_time=0;
         PCA9555_readdata(PCA9555_DEVICE_ADDR,pca9555writedata_input);//读输入寄存器的值
         uint16_t gpio_state;
         gpio_state=(uint16_t)pca9555writedata_input[0]<<8|pca9555writedata_input[1];
         gpio_state111=gpio_state;
         if(gpio_state==0xFFFF)
-        {return 0;}
+        {
+            return 0;
+        }
         if(INPUT_5V_POSITION&gpio_state)
         {
             Set5VState(1);
@@ -499,9 +501,9 @@
     }
     else {
         Set5VState(0);
-		return 0;
-	}
-    
+        return 0;
+    }
+
 }
 /*读取供电引脚的输入高低电平
   返回值 高1 低0 电平
@@ -509,82 +511,82 @@
 int read_powerkey_input_pca(void)
 {
     PCA9555_readdata(PCA9555_DEVICE_ADDR,pca9555writedata_input);//读输入寄存器的值
-	uint16_t gpio_state;
-	gpio_state=(uint16_t)pca9555writedata_input[0]<<8|pca9555writedata_input[1];
-	if(PWR_ON_POSITION&gpio_state)
-		return 1;
-	else {
-		return 0;
-	}
+    uint16_t gpio_state;
+    gpio_state=(uint16_t)pca9555writedata_input[0]<<8|pca9555writedata_input[1];
+    if(PWR_ON_POSITION&gpio_state)
+        return 1;
+    else {
+        return 0;
+    }
 }
 /*读取SOS引脚的输入高低电平
   返回值 高1 低0 电平
 */
 int read_userkey_input_pca(void)
-{PCA9555_readdata(PCA9555_DEVICE_ADDR,pca9555writedata_input);//读输入寄存器的值
-	uint16_t gpio_state;
-	gpio_state=(uint16_t)pca9555writedata_input[0]<<8|pca9555writedata_input[1];
-	if(SOS_ENBALE_POSITION&gpio_state)
-		return 1;
-	else {
-		return 0;
-	}
+{   PCA9555_readdata(PCA9555_DEVICE_ADDR,pca9555writedata_input);//读输入寄存器的值
+    uint16_t gpio_state;
+    gpio_state=(uint16_t)pca9555writedata_input[0]<<8|pca9555writedata_input[1];
+    if(SOS_ENBALE_POSITION&gpio_state)
+        return 1;
+    else {
+        return 0;
+    }
 }
 void PCA9555_init()
 {
 //IIC_gpio_pca_init();//配置IIC管脚
-	
-	//PCA9555_write_config_port_data(PCA9555_DEVICE_ADDR,PCA_OUTPUT_CONFIG_MASK,PCA_OUTPUT_CONFIG_MASK);//全配置为输出
-	//PCA9555_Set_One_Value_Polarity_input(PWR_ON,0);
-	//PCA9555_write_config_port_data(PCA9555_DEVICE_ADDR,PCA_INPUT_CONFIG_MASK,PCA_INPUT_CONFIG_MASK);//全配置为输入
-	//PCA9555_write_polarity_port_data(PCA9555_DEVICE_ADDR,0x00,0x00);//翻转
-	//PCA9555_Set_One_Value_Config(WAKE_UP,1);
-	//PCA9555_Set_All_Output(1);
-	
-	PCA9555_Set_One_Value_Config(GPS_POWER,0);//设置GPS为输出
-	PCA9555_Set_One_Value_Output(GPS_POWER,1);//拉高GPS
-    
-    PCA9555_Set_One_Value_Config(GPS_BACKUP,0);//设置GPS备用电源为输出
-	PCA9555_Set_One_Value_Output(GPS_BACKUP,1);//拉高GPS
-    
-//    while(1)
-	PCA9555_Set_One_Value_Config(ADC_MINIUS,0);//设置ADC输出
-	PCA9555_Set_One_Value_Output(ADC_MINIUS,1);//默认拉高
-	PCA9555_Set_One_Value_Config(MCU_A,0);//设置串口复用芯片切换
-	PCA9555_Set_One_Value_Output(MCU_A,1);//输出高电平为uart通讯
-	PCA9555_Set_One_Value_Config(INPUT_5V,1);//设置5V输入检测
-	PCA9555_Set_One_Value_Config(LED_POWER,0);//设置LED灯输出
-	PCA9555_Set_One_Value_Output(LED_POWER,1);//输出高电平开启LED通闪烁
-	PCA9555_Set_One_Value_Config(PWR_ENABLE,0);//设置电池上电是否给单片机供电
-	PCA9555_Set_One_Value_Output(PWR_ENABLE,1);//高电平默认导通单片机供电
-	PCA9555_Set_One_Value_Config(PWR_ON,1);//设置开关机按键输入
 
-	PCA9555_Set_One_Value_Config(SOS_ENBALE,1);//设置SOS按钮输入
-    
+    //PCA9555_write_config_port_data(PCA9555_DEVICE_ADDR,PCA_OUTPUT_CONFIG_MASK,PCA_OUTPUT_CONFIG_MASK);//全配置为输出
+    //PCA9555_Set_One_Value_Polarity_input(PWR_ON,0);
+    //PCA9555_write_config_port_data(PCA9555_DEVICE_ADDR,PCA_INPUT_CONFIG_MASK,PCA_INPUT_CONFIG_MASK);//全配置为输入
+    //PCA9555_write_polarity_port_data(PCA9555_DEVICE_ADDR,0x00,0x00);//翻转
+    //PCA9555_Set_One_Value_Config(WAKE_UP,1);
+    //PCA9555_Set_All_Output(1);
+
+    PCA9555_Set_One_Value_Config(GPS_POWER,0);//设置GPS为输出
+    PCA9555_Set_One_Value_Output(GPS_POWER,1);//拉高GPS
+
+    PCA9555_Set_One_Value_Config(GPS_BACKUP,0);//设置GPS备用电源为输出
+    PCA9555_Set_One_Value_Output(GPS_BACKUP,1);//拉高GPS
+
+//    while(1)
+    PCA9555_Set_One_Value_Config(ADC_MINIUS,0);//设置ADC输出
+    PCA9555_Set_One_Value_Output(ADC_MINIUS,1);//默认拉高
+    PCA9555_Set_One_Value_Config(MCU_A,0);//设置串口复用芯片切换
+    PCA9555_Set_One_Value_Output(MCU_A,1);//输出高电平为uart通讯
+    PCA9555_Set_One_Value_Config(INPUT_5V,1);//设置5V输入检测
+    PCA9555_Set_One_Value_Config(LED_POWER,0);//设置LED灯输出
+    PCA9555_Set_One_Value_Output(LED_POWER,1);//输出高电平开启LED通闪烁
+    PCA9555_Set_One_Value_Config(PWR_ENABLE,0);//设置电池上电是否给单片机供电
+    PCA9555_Set_One_Value_Output(PWR_ENABLE,1);//高电平默认导通单片机供电
+    PCA9555_Set_One_Value_Config(PWR_ON,1);//设置开关机按键输入
+
+    PCA9555_Set_One_Value_Config(SOS_ENBALE,1);//设置SOS按钮输入
+
 //    PCA9555_Set_One_Value_Config(TTS_ENABLE,0);
     PCA9555_Set_One_Value_Output(TTS_ENABLE,1);
-	PCA9555_Set_One_Value_Config(AIR780E_ENBALE,0);//配置4G供电
-	PCA9555_Set_One_Value_Output(AIR780E_ENBALE,1);//打开4G
-	
-	PCA9555_Set_One_Value_Config(MAIN_RI,0);//配置4G唤醒引脚为输入
-	PCA9555_Set_One_Value_Output(MAIN_RI,0);
-    
+    PCA9555_Set_One_Value_Config(AIR780E_ENBALE,0);//配置4G供电
+    PCA9555_Set_One_Value_Output(AIR780E_ENBALE,1);//打开4G
+
+    PCA9555_Set_One_Value_Config(MAIN_RI,0);//配置4G唤醒引脚为输入
+    PCA9555_Set_One_Value_Output(MAIN_RI,0);
+
 //	PCA9555_Set_One_Value_Config(SOS_ENBALE,1);//设置SOS按钮输入
-    
+
     PCA9555_Set_One_Value_Config(WAKE_UP,1);
 //    PCA9555_Set_One_Value_Config(TTS_ENABLE,0);//配置tts供电
 //	PCA9555_Set_One_Value_Output(PWR_ON,0);//拉低
-	//PCA9555_readdata_from_output_register(PCA9555_DEVICE_ADDR,pca9555writedata_input);
-	//PCA9555_Set_One_Value_Output(AIR780E_ENBALE,0);
-	//PCA9555_Set_One_Value_Output(PWR_ON,0);
+    //PCA9555_readdata_from_output_register(PCA9555_DEVICE_ADDR,pca9555writedata_input);
+    //PCA9555_Set_One_Value_Output(AIR780E_ENBALE,0);
+    //PCA9555_Set_One_Value_Output(PWR_ON,0);
 //	PCA9555_Set_All_Output(0);
-	//PCA9555_readdata_from_polarity_register(PCA9555_DEVICE_ADDR,pca9555writedata_input);
-	PCA9555_readdata(PCA9555_DEVICE_ADDR,pca9555writedata_input);//读输入寄存器的值
-	
-	//PCA9555_readdata_from_config_register(PCA9555_DEVICE_ADDR,pca9555writedata_config);
+    //PCA9555_readdata_from_polarity_register(PCA9555_DEVICE_ADDR,pca9555writedata_input);
+    PCA9555_readdata(PCA9555_DEVICE_ADDR,pca9555writedata_input);//读输入寄存器的值
+
+    //PCA9555_readdata_from_config_register(PCA9555_DEVICE_ADDR,pca9555writedata_config);
 //	PCA9555_Set_All_Output(0);//全部拉低
-	
-	//测试
+
+    //测试
 //PCA9555_Set_All_Output(1);//全部拉高
 //PCA9555_Set_All_Output(0);//全部拉低
 
@@ -596,53 +598,53 @@
 void move_handler()
 {
     nomove_count=0;
-		if(deep_sleep_falg==0)
-		{
-     deep_sleep_falg=1;	
-//	   sleep_timer_start();    
-     NVIC_SystemReset();
-		}
+    if(deep_sleep_falg==0)
+    {
+        deep_sleep_falg=1;
+//	   sleep_timer_start();
+        NVIC_SystemReset();
+    }
 }
 uint8_t test11,test21,test31,test41,test51;
 void check_input_change(void)
 {
-        uint16_t gpio_state;
-        gpio_state=(uint16_t)pca9555writedata_input[0]<<8|pca9555writedata_input[1];
+    uint16_t gpio_state;
+    gpio_state=(uint16_t)pca9555writedata_input[0]<<8|pca9555writedata_input[1];
 
-			  if(WAKE_UP_POSITION&gpio_state)
-				{
+    if(WAKE_UP_POSITION&gpio_state)
+    {
 
-				 //移动
-					nomove_count=0;
-					if(deep_sleep_falg==0)
-					{
-                        
-                      
-					 deep_sleep_falg=1;	
-//           NVIC_SystemReset();   
-					 sys_reset(0);
-					}
-// 
-				 test51++;
-				}
+        //移动
+        nomove_count=0;
+        if(deep_sleep_falg==0)
+        {
+
+
+            deep_sleep_falg=1;
+//           NVIC_SystemReset();
+            sys_reset(0);
+        }
+//
+        test51++;
+    }
 //	if(!(MAIN_RI_POSITION&gpio_state))
 //	{
 //		 flag_4G_recdata = 1;
 //     delaysleep_count = 3;
 //        test21++;
 //	}
-			if((PWR_ON_POSITION&gpio_state))
-			{
+    if((PWR_ON_POSITION&gpio_state))
+    {
 
         PowerTask();
         test31++;
-			}
-			if(!(SOS_ENBALE_POSITION&gpio_state))
-			{
+    }
+    if(!(SOS_ENBALE_POSITION&gpio_state))
+    {
 
         UserKeyTask();
         test21++;
-			}
+    }
 
 
 }

--
Gitblit v1.9.3