Kaynağa Gözat

读取光模块温度

yidong.fan 3 ay önce
ebeveyn
işleme
5a0266997a

+ 4 - 1
WZYXPCR_NO1.20250726.X/WZYXPCR_NO1.20250726.X/file/EEPROM.c

@@ -276,7 +276,10 @@ void Read_Sys_EE_03(void){
         EE_StrRead(0x338, (unsigned char*) &TempPara[4].fB,  4);        
         EE_StrRead(0x33C, (unsigned char*) &TempPara[5].fK1, 4);         
         EE_StrRead(0x340, (unsigned char*) &TempPara[5].fK2, 4);        
-        EE_StrRead(0x344, (unsigned char*) &TempPara[5].fB,  4);               
+        EE_StrRead(0x344, (unsigned char*) &TempPara[5].fB,  4);         
+        EE_StrRead(0x348, (unsigned char*) &TempPara[6].fK1, 4);         
+        EE_StrRead(0x34c, (unsigned char*) &TempPara[6].fK2, 4);        
+        EE_StrRead(0x350, (unsigned char*) &TempPara[6].fB,  4);               
    
         EE_StrRead(0x390, (unsigned char*) &TempPara[0].TTk1, 4);            
         EE_StrRead(0x394, (unsigned char*) &TempPara[0].TTk2, 4);      

+ 3 - 3
WZYXPCR_NO1.20250726.X/WZYXPCR_NO1.20250726.X/file/Interrupt.c

@@ -268,9 +268,9 @@ void __attribute__((interrupt,auto_psv)) _T6Interrupt (void)
         MCUAdcBuff[3][SampleNo]  = AD_Get(0x02);     //BLOCK4
         MCUAdcBuff[4][SampleNo]  = AD_Get(0x06);     //BLOCK5ÖÆÀ䳨
         MCUAdcBuff[5][SampleNo]  = AD_Get(0x07);     //BLOCK6ÖÆÀ䳨
-        MCUAdcBuff[6][SampleNo]  = AD_Get(0x02);     //ÈÈ¸Ç      
+        MCUAdcBuff[6][SampleNo]  = AD_Get(0x0f);     //ÈÈ¸Ç      
 //        MCUAdcBuff[7][SampleNo]  = AD_Get(0x07);     //
-        MCUAdcBuff[8][SampleNo]  = AD_Get(0x08);     //    É¢ÈÈÆ¬
+//        MCUAdcBuff[8][SampleNo]  = AD_Get(0x08);     //    É¢ÈÈÆ¬
     SampleNo++;
     if(SampleNo > 2) {     //100ms
         SampleNo=0;
@@ -311,7 +311,7 @@ void __attribute__((interrupt,auto_psv)) _T4Interrupt (void)
         dTemperature[i]=TempAD/3;
         dTemperatureAD[i] = (unsigned int)dTemperature[i];
     } 
-    for(i=0;i<6;i++){
+    for(i=0;i<7;i++){
         TempChn[i].fCurrentTemperature = (double)(TempPara[i].fK1 * dTemperature[i]*dTemperature[i] + TempPara[i].fK2 * dTemperature[i] + TempPara[i].fB);
         if(TempChn[i].fCurrentTemperature > 90)  TempChn[i].fCurrentTemperature = (double)(TempChn[i].fCurrentTemperature + TempPara[i].TTb);       
     }  

+ 1 - 1
WZYXPCR_NO1.20250726.X/WZYXPCR_NO1.20250726.X/file/PWM.h

@@ -85,7 +85,7 @@ typedef struct __TEMPPARA{
     float HoldPWMc1;
     
 }TEMPPARA;
- TEMPCTRLEXTERN TEMPPARA TempPara[6];
+ TEMPCTRLEXTERN TEMPPARA TempPara[7];
 
  
 #define MODEMRANGE              3 

+ 7 - 5
WZYXPCR_NO1.20250726.X/WZYXPCR_NO1.20250726.X/file/Uart.c

@@ -1535,7 +1535,7 @@ void Uart1_Ack(void)
             }else{
                 g_cTubeTempAriv = 0;
             } 
-            g_uiFrmLth = 23;
+            g_uiFrmLth = 25;
             g_ucU1TX_Data[0]  = FRAME_HEAD;
             g_ucU1TX_Data[1]  = g_ucCMD1|0X80;
             g_ucU1TX_Data[2]  = 0;
@@ -1555,10 +1555,12 @@ void Uart1_Ack(void)
             g_ucU1TX_Data[16] = (unsigned int)(TempChn[5].fCurrentTemperature*100.0) >> 8;
             g_ucU1TX_Data[17] = (unsigned char) (TempChn[5].fCurrentTemperature*100.0);
             g_ucU1TX_Data[18] = (unsigned int)(TempChn[5].fCurrentTemperature*100.0) >> 8;
-            g_ucU1TX_Data[19] = (unsigned char) (TempChn[5].fCurrentTemperature*100.0);            
-            g_ucU1TX_Data[20] = g_cTubeTempAriv;
-            g_ucU1TX_Data[21] = Flag_STATUS; //״̬λ
-            g_ucU1TX_Data[22] = (unsigned char) Check(g_ucU1TX_Data, g_uiFrmLth - 1);
+            g_ucU1TX_Data[19] = (unsigned char) (TempChn[5].fCurrentTemperature*100.0);   
+            g_ucU1TX_Data[20] = (unsigned int)(TempChn[6].fCurrentTemperature*100.0) >> 8;
+            g_ucU1TX_Data[21] = (unsigned char) (TempChn[6].fCurrentTemperature*100.0);            
+            g_ucU1TX_Data[22] = g_cTubeTempAriv;
+            g_ucU1TX_Data[23] = Flag_STATUS; //״̬λ
+            g_ucU1TX_Data[24] = (unsigned char) Check(g_ucU1TX_Data, g_uiFrmLth - 1);
                         
             while(DMA3CONbits.CHEN);        
             DMA3CNT=(g_uiFrmLth-1);

+ 3 - 2
WZYXPCR_NO1.20250726.X/WZYXPCR_NO1.20250726.X/file/main.c

@@ -140,10 +140,11 @@ int main(void) {
 //			TempChn[0].fCurrentTemperature,TempChn[1].fCurrentTemperature,
 //			TempChn[2].fCurrentTemperature,TempChn[3].fCurrentTemperature,
 //			TempChn[4].fCurrentTemperature,TempChn[5].fCurrentTemperature);
-			 Van_Device_Printf(2,"temp %f, %f, %f, %f, %f, %f\n\r",
+			 Van_Device_Printf(2,"temp %f, %f, %f, %f, %f, %f, %f\n\r",
 			TempChn[0].fCurrentTemperature,TempChn[1].fCurrentTemperature,
 			TempChn[2].fCurrentTemperature,TempChn[3].fCurrentTemperature,
-			TempChn[4].fCurrentTemperature,TempChn[5].fCurrentTemperature);
+			TempChn[4].fCurrentTemperature,TempChn[5].fCurrentTemperature,
+			TempChn[6].fCurrentTemperature);
         }
 		
     }