数据while()循环判断

这次提交的是while()判断的古老版本,前面5个为零则不进入循环
before_die
kafeijiaasamu 2 years ago
parent e5be2d536c
commit 4a0de2e878

@ -197,7 +197,8 @@ uint8 do_mqtt(SOCKET Socket,uint8 *sip,uint16 sport,uint16 lport){ //sportԴ
break; break;
case SOCK_ESTABLISHED: //success to connect case SOCK_ESTABLISHED: //success to connect
if(getSn_IR(Socket)&Sn_IR_CON)setSn_IR(Socket,Sn_IR_CON);//getSn_IR获取Socket中断状态Sn_IR_CON已建立连接 if(getSn_IR(Socket)&Sn_IR_CON)setSn_IR(Socket,Sn_IR_CON);//getSn_IR获取Socket中断状态Sn_IR_CON已建立连接
if(!CONNECT_FLAG)if(!connectMqtt(Socket))CONNECT_FLAG=1; if(!CONNECT_FLAG)if(!connectMqtt(Socket))CONNECT_FLAG=1;//connectMqtt连接服务器
printf("success connect aliyun!!!\r\n");
rlen=getSn_RX_RSR(Socket);//获取socketRX接收大小 rlen=getSn_RX_RSR(Socket);//获取socketRX接收大小
if(rlen>0){ if(rlen>0){
recv(Socket,buf,rlen); recv(Socket,buf,rlen);

Binary file not shown.

@ -27,9 +27,9 @@ Project File Date: 11/19/2023
<h2>Output:</h2> <h2>Output:</h2>
*** Using Compiler 'V5.06 update 7 (build 960)', folder: 'D:\MDK5\ARM\ARMCC\Bin' *** Using Compiler 'V5.06 update 7 (build 960)', folder: 'D:\MDK5\ARM\ARMCC\Bin'
Build target 'LED' Build target 'LED'
compiling w5500api.c... compiling myfreertos.c...
linking... linking...
Program Size: Code=38856 RO-data=676 RW-data=1680 ZI-data=16224 Program Size: Code=26548 RO-data=368 RW-data=1524 ZI-data=12828
FromELF: creating hex file... FromELF: creating hex file...
"..\OBJ\LED.axf" - 0 Error(s), 0 Warning(s). "..\OBJ\LED.axf" - 0 Error(s), 0 Warning(s).

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

@ -1,6 +1,6 @@
Dependencies for Project 'control', Target 'LED': (DO NOT MODIFY !) Dependencies for Project 'control', Target 'LED': (DO NOT MODIFY !)
CompilerVersion: 5060960::V5.06 update 7 (build 960)::.\ARMCC CompilerVersion: 5060960::V5.06 update 7 (build 960)::.\ARMCC
F (.\main.c)(0x656FE907)(--c99 -c --cpu Cortex-M3 -D__MICROLIB -g -O0 --apcs=interwork --split_sections -I ..\USER -I ..\CORE -I ..\STM32F10x_FWLib\inc -I ..\HARDWARE -I ..\SYSTEM -I ..\dhcp -I ..\dns -I ..\md5 -I ..\MQTT -I ..\MQTT\lib -I ..\w5500 -I ..\FreeRTOS\include -I ..\FreeRTOS\portable\RVDS\ARM_CM3 -I ..\myfreertos -ID:\MDK5\ARM\Keil\STM32F1xx_DFP\2.3.0\Device\Include -D__UVISION_VERSION="536" -DSTM32F10X_MD -DSTM32F10X_MD -DUSE_STDPERIPH_DRIVER -o ..\obj\main.o --omf_browse ..\obj\main.crf --depend ..\obj\main.d) F (.\main.c)(0x6572D3A6)(--c99 -c --cpu Cortex-M3 -D__MICROLIB -g -O0 --apcs=interwork --split_sections -I ..\USER -I ..\CORE -I ..\STM32F10x_FWLib\inc -I ..\HARDWARE -I ..\SYSTEM -I ..\dhcp -I ..\dns -I ..\md5 -I ..\MQTT -I ..\MQTT\lib -I ..\w5500 -I ..\FreeRTOS\include -I ..\FreeRTOS\portable\RVDS\ARM_CM3 -I ..\myfreertos -ID:\MDK5\ARM\Keil\STM32F1xx_DFP\2.3.0\Device\Include -D__UVISION_VERSION="536" -DSTM32F10X_MD -DSTM32F10X_MD -DUSE_STDPERIPH_DRIVER -o ..\obj\main.o --omf_browse ..\obj\main.crf --depend ..\obj\main.d)
I (..\myfreertos\myfreertos.h)(0x656FE939) I (..\myfreertos\myfreertos.h)(0x656FE939)
I (..\FreeRTOS\include\FreeRTOS.h)(0x652F9ABE) I (..\FreeRTOS\include\FreeRTOS.h)(0x652F9ABE)
I (D:\MDK5\ARM\ARMCC\include\stddef.h)(0x6025237E) I (D:\MDK5\ARM\ARMCC\include\stddef.h)(0x6025237E)
@ -55,7 +55,7 @@ I (..\HARDWARE\bufcut.h)(0x6537353D)
I (..\HARDWARE\iwdg.h)(0x64FC32D3) I (..\HARDWARE\iwdg.h)(0x64FC32D3)
I (..\HARDWARE\PID.h)(0x6559C02A) I (..\HARDWARE\PID.h)(0x6559C02A)
I (..\HARDWARE\PWMOUT.h)(0x655DCACD) I (..\HARDWARE\PWMOUT.h)(0x655DCACD)
I (..\w5500\w5500api.h)(0x650BB944) I (..\w5500\w5500api.h)(0x65712928)
I (..\w5500\spi.h)(0x65093ED0) I (..\w5500\spi.h)(0x65093ED0)
I (..\w5500\w5500.h)(0x5F374D02) I (..\w5500\w5500.h)(0x5F374D02)
I (..\w5500\Types.h)(0x5F374D02) I (..\w5500\Types.h)(0x5F374D02)
@ -330,7 +330,7 @@ I (..\HARDWARE\bufcut.h)(0x6537353D)
I (..\HARDWARE\iwdg.h)(0x64FC32D3) I (..\HARDWARE\iwdg.h)(0x64FC32D3)
I (..\HARDWARE\PID.h)(0x6559C02A) I (..\HARDWARE\PID.h)(0x6559C02A)
I (..\HARDWARE\PWMOUT.h)(0x655DCACD) I (..\HARDWARE\PWMOUT.h)(0x655DCACD)
I (..\w5500\w5500api.h)(0x650BB944) I (..\w5500\w5500api.h)(0x65712928)
I (..\w5500\spi.h)(0x65093ED0) I (..\w5500\spi.h)(0x65093ED0)
I (..\w5500\w5500.h)(0x5F374D02) I (..\w5500\w5500.h)(0x5F374D02)
I (..\w5500\Types.h)(0x5F374D02) I (..\w5500\Types.h)(0x5F374D02)
@ -374,7 +374,7 @@ I (..\SYSTEM\system.h)(0x64BC0671)
I (D:\MDK5\ARM\ARMCC\include\stdio.h)(0x60252374) I (D:\MDK5\ARM\ARMCC\include\stdio.h)(0x60252374)
I (..\SYSTEM\SysTick.h)(0x6530E176) I (..\SYSTEM\SysTick.h)(0x6530E176)
F (..\HARDWARE\OSC.h)(0x64E6C94A)() F (..\HARDWARE\OSC.h)(0x64E6C94A)()
F (..\HARDWARE\rs485.c)(0x656FE31F)(--c99 -c --cpu Cortex-M3 -D__MICROLIB -g -O0 --apcs=interwork --split_sections -I ..\USER -I ..\CORE -I ..\STM32F10x_FWLib\inc -I ..\HARDWARE -I ..\SYSTEM -I ..\dhcp -I ..\dns -I ..\md5 -I ..\MQTT -I ..\MQTT\lib -I ..\w5500 -I ..\FreeRTOS\include -I ..\FreeRTOS\portable\RVDS\ARM_CM3 -I ..\myfreertos -ID:\MDK5\ARM\Keil\STM32F1xx_DFP\2.3.0\Device\Include -D__UVISION_VERSION="536" -DSTM32F10X_MD -DSTM32F10X_MD -DUSE_STDPERIPH_DRIVER -o ..\obj\rs485.o --omf_browse ..\obj\rs485.crf --depend ..\obj\rs485.d) F (..\HARDWARE\rs485.c)(0x6572D473)(--c99 -c --cpu Cortex-M3 -D__MICROLIB -g -O0 --apcs=interwork --split_sections -I ..\USER -I ..\CORE -I ..\STM32F10x_FWLib\inc -I ..\HARDWARE -I ..\SYSTEM -I ..\dhcp -I ..\dns -I ..\md5 -I ..\MQTT -I ..\MQTT\lib -I ..\w5500 -I ..\FreeRTOS\include -I ..\FreeRTOS\portable\RVDS\ARM_CM3 -I ..\myfreertos -ID:\MDK5\ARM\Keil\STM32F1xx_DFP\2.3.0\Device\Include -D__UVISION_VERSION="536" -DSTM32F10X_MD -DSTM32F10X_MD -DUSE_STDPERIPH_DRIVER -o ..\obj\rs485.o --omf_browse ..\obj\rs485.crf --depend ..\obj\rs485.d)
I (..\HARDWARE\rs485.h)(0x656565E2) I (..\HARDWARE\rs485.h)(0x656565E2)
I (..\USER\stm32f10x.h)(0x4D783CB5) I (..\USER\stm32f10x.h)(0x4D783CB5)
I (..\CORE\core_cm3.h)(0x4D523B58) I (..\CORE\core_cm3.h)(0x4D523B58)
@ -429,7 +429,7 @@ I (..\HARDWARE\bufcut.h)(0x6537353D)
I (..\HARDWARE\iwdg.h)(0x64FC32D3) I (..\HARDWARE\iwdg.h)(0x64FC32D3)
I (..\HARDWARE\PID.h)(0x6559C02A) I (..\HARDWARE\PID.h)(0x6559C02A)
I (..\HARDWARE\PWMOUT.h)(0x655DCACD) I (..\HARDWARE\PWMOUT.h)(0x655DCACD)
I (..\w5500\w5500api.h)(0x650BB944) I (..\w5500\w5500api.h)(0x65712928)
I (..\w5500\spi.h)(0x65093ED0) I (..\w5500\spi.h)(0x65093ED0)
I (..\w5500\w5500.h)(0x5F374D02) I (..\w5500\w5500.h)(0x5F374D02)
I (..\w5500\Types.h)(0x5F374D02) I (..\w5500\Types.h)(0x5F374D02)
@ -1507,8 +1507,8 @@ I (..\STM32F10x_FWLib\inc\stm32f10x_usart.h)(0x504F415F)
I (..\STM32F10x_FWLib\inc\stm32f10x_wwdg.h)(0x4D783BB4) I (..\STM32F10x_FWLib\inc\stm32f10x_wwdg.h)(0x4D783BB4)
I (..\STM32F10x_FWLib\inc\misc.h)(0x4D783BB4) I (..\STM32F10x_FWLib\inc\misc.h)(0x4D783BB4)
I (..\w5500\Types.h)(0x5F374D02) I (..\w5500\Types.h)(0x5F374D02)
F (..\w5500\w5500api.c)(0x65703ECA)(--c99 -c --cpu Cortex-M3 -D__MICROLIB -g -O0 --apcs=interwork --split_sections -I ..\USER -I ..\CORE -I ..\STM32F10x_FWLib\inc -I ..\HARDWARE -I ..\SYSTEM -I ..\dhcp -I ..\dns -I ..\md5 -I ..\MQTT -I ..\MQTT\lib -I ..\w5500 -I ..\FreeRTOS\include -I ..\FreeRTOS\portable\RVDS\ARM_CM3 -I ..\myfreertos -ID:\MDK5\ARM\Keil\STM32F1xx_DFP\2.3.0\Device\Include -D__UVISION_VERSION="536" -DSTM32F10X_MD -DSTM32F10X_MD -DUSE_STDPERIPH_DRIVER -o ..\obj\w5500api.o --omf_browse ..\obj\w5500api.crf --depend ..\obj\w5500api.d) F (..\w5500\w5500api.c)(0x65714139)(--c99 -c --cpu Cortex-M3 -D__MICROLIB -g -O0 --apcs=interwork --split_sections -I ..\USER -I ..\CORE -I ..\STM32F10x_FWLib\inc -I ..\HARDWARE -I ..\SYSTEM -I ..\dhcp -I ..\dns -I ..\md5 -I ..\MQTT -I ..\MQTT\lib -I ..\w5500 -I ..\FreeRTOS\include -I ..\FreeRTOS\portable\RVDS\ARM_CM3 -I ..\myfreertos -ID:\MDK5\ARM\Keil\STM32F1xx_DFP\2.3.0\Device\Include -D__UVISION_VERSION="536" -DSTM32F10X_MD -DSTM32F10X_MD -DUSE_STDPERIPH_DRIVER -o ..\obj\w5500api.o --omf_browse ..\obj\w5500api.crf --depend ..\obj\w5500api.d)
I (..\w5500\w5500api.h)(0x650BB944) I (..\w5500\w5500api.h)(0x65712928)
I (..\SYSTEM\SysTick.h)(0x6530E176) I (..\SYSTEM\SysTick.h)(0x6530E176)
I (..\SYSTEM\system.h)(0x64BC0671) I (..\SYSTEM\system.h)(0x64BC0671)
I (..\USER\stm32f10x.h)(0x4D783CB5) I (..\USER\stm32f10x.h)(0x4D783CB5)
@ -1581,7 +1581,7 @@ I (..\STM32F10x_FWLib\inc\stm32f10x_usart.h)(0x504F415F)
I (..\STM32F10x_FWLib\inc\stm32f10x_wwdg.h)(0x4D783BB4) I (..\STM32F10x_FWLib\inc\stm32f10x_wwdg.h)(0x4D783BB4)
I (..\STM32F10x_FWLib\inc\misc.h)(0x4D783BB4) I (..\STM32F10x_FWLib\inc\misc.h)(0x4D783BB4)
I (..\dns\dns.h)(0x5F377DE4) I (..\dns\dns.h)(0x5F377DE4)
I (..\w5500\w5500api.h)(0x650BB944) I (..\w5500\w5500api.h)(0x65712928)
I (..\SYSTEM\SysTick.h)(0x6530E176) I (..\SYSTEM\SysTick.h)(0x6530E176)
I (..\SYSTEM\system.h)(0x64BC0671) I (..\SYSTEM\system.h)(0x64BC0671)
I (..\w5500\spi.h)(0x65093ED0) I (..\w5500\spi.h)(0x65093ED0)
@ -1594,7 +1594,7 @@ F (..\dhcp\dhcp.c)(0x650954D1)(--c99 -c --cpu Cortex-M3 -D__MICROLIB -g -O0 --ap
I (..\dhcp\dhcp.h)(0x5F377F9A) I (..\dhcp\dhcp.h)(0x5F377F9A)
I (D:\MDK5\ARM\ARMCC\include\stdio.h)(0x60252374) I (D:\MDK5\ARM\ARMCC\include\stdio.h)(0x60252374)
I (D:\MDK5\ARM\ARMCC\include\string.h)(0x6025237E) I (D:\MDK5\ARM\ARMCC\include\string.h)(0x6025237E)
I (..\w5500\w5500api.h)(0x650BB944) I (..\w5500\w5500api.h)(0x65712928)
I (..\SYSTEM\SysTick.h)(0x6530E176) I (..\SYSTEM\SysTick.h)(0x6530E176)
I (..\SYSTEM\system.h)(0x64BC0671) I (..\SYSTEM\system.h)(0x64BC0671)
I (..\USER\stm32f10x.h)(0x4D783CB5) I (..\USER\stm32f10x.h)(0x4D783CB5)
@ -2060,9 +2060,9 @@ I (..\w5500\w5500.h)(0x5F374D02)
I (..\w5500\spi.h)(0x65093ED0) I (..\w5500\spi.h)(0x65093ED0)
I (..\w5500\Types.h)(0x5F374D02) I (..\w5500\Types.h)(0x5F374D02)
I (D:\MDK5\ARM\ARMCC\include\string.h)(0x6025237E) I (D:\MDK5\ARM\ARMCC\include\string.h)(0x6025237E)
F (..\MQTT\mqtt_api.c)(0x65703086)(--c99 -c --cpu Cortex-M3 -D__MICROLIB -g -O0 --apcs=interwork --split_sections -I ..\USER -I ..\CORE -I ..\STM32F10x_FWLib\inc -I ..\HARDWARE -I ..\SYSTEM -I ..\dhcp -I ..\dns -I ..\md5 -I ..\MQTT -I ..\MQTT\lib -I ..\w5500 -I ..\FreeRTOS\include -I ..\FreeRTOS\portable\RVDS\ARM_CM3 -I ..\myfreertos -ID:\MDK5\ARM\Keil\STM32F1xx_DFP\2.3.0\Device\Include -D__UVISION_VERSION="536" -DSTM32F10X_MD -DSTM32F10X_MD -DUSE_STDPERIPH_DRIVER -o ..\obj\mqtt_api.o --omf_browse ..\obj\mqtt_api.crf --depend ..\obj\mqtt_api.d) F (..\MQTT\mqtt_api.c)(0x65729139)(--c99 -c --cpu Cortex-M3 -D__MICROLIB -g -O0 --apcs=interwork --split_sections -I ..\USER -I ..\CORE -I ..\STM32F10x_FWLib\inc -I ..\HARDWARE -I ..\SYSTEM -I ..\dhcp -I ..\dns -I ..\md5 -I ..\MQTT -I ..\MQTT\lib -I ..\w5500 -I ..\FreeRTOS\include -I ..\FreeRTOS\portable\RVDS\ARM_CM3 -I ..\myfreertos -ID:\MDK5\ARM\Keil\STM32F1xx_DFP\2.3.0\Device\Include -D__UVISION_VERSION="536" -DSTM32F10X_MD -DSTM32F10X_MD -DUSE_STDPERIPH_DRIVER -o ..\obj\mqtt_api.o --omf_browse ..\obj\mqtt_api.crf --depend ..\obj\mqtt_api.d)
I (..\MQTT\mqtt_api.h)(0x5F3A0FBC) I (..\MQTT\mqtt_api.h)(0x5F3A0FBC)
I (..\w5500\w5500api.h)(0x650BB944) I (..\w5500\w5500api.h)(0x65712928)
I (..\SYSTEM\SysTick.h)(0x6530E176) I (..\SYSTEM\SysTick.h)(0x6530E176)
I (..\SYSTEM\system.h)(0x64BC0671) I (..\SYSTEM\system.h)(0x64BC0671)
I (..\USER\stm32f10x.h)(0x4D783CB5) I (..\USER\stm32f10x.h)(0x4D783CB5)
@ -2505,7 +2505,7 @@ I (..\FreeRTOS\portable\RVDS\ARM_CM3\portmacro.h)(0x573F3A17)
I (..\FreeRTOS\include\mpu_wrappers.h)(0x573F3A16) I (..\FreeRTOS\include\mpu_wrappers.h)(0x573F3A16)
I (..\FreeRTOS\include\task.h)(0x573F3A16) I (..\FreeRTOS\include\task.h)(0x573F3A16)
I (..\FreeRTOS\include\list.h)(0x573F3A16) I (..\FreeRTOS\include\list.h)(0x573F3A16)
F (..\myfreertos\myfreertos.c)(0x656FECAF)(--c99 -c --cpu Cortex-M3 -D__MICROLIB -g -O0 --apcs=interwork --split_sections -I ..\USER -I ..\CORE -I ..\STM32F10x_FWLib\inc -I ..\HARDWARE -I ..\SYSTEM -I ..\dhcp -I ..\dns -I ..\md5 -I ..\MQTT -I ..\MQTT\lib -I ..\w5500 -I ..\FreeRTOS\include -I ..\FreeRTOS\portable\RVDS\ARM_CM3 -I ..\myfreertos -ID:\MDK5\ARM\Keil\STM32F1xx_DFP\2.3.0\Device\Include -D__UVISION_VERSION="536" -DSTM32F10X_MD -DSTM32F10X_MD -DUSE_STDPERIPH_DRIVER -o ..\obj\myfreertos.o --omf_browse ..\obj\myfreertos.crf --depend ..\obj\myfreertos.d) F (..\myfreertos\myfreertos.c)(0x6572DB89)(--c99 -c --cpu Cortex-M3 -D__MICROLIB -g -O0 --apcs=interwork --split_sections -I ..\USER -I ..\CORE -I ..\STM32F10x_FWLib\inc -I ..\HARDWARE -I ..\SYSTEM -I ..\dhcp -I ..\dns -I ..\md5 -I ..\MQTT -I ..\MQTT\lib -I ..\w5500 -I ..\FreeRTOS\include -I ..\FreeRTOS\portable\RVDS\ARM_CM3 -I ..\myfreertos -ID:\MDK5\ARM\Keil\STM32F1xx_DFP\2.3.0\Device\Include -D__UVISION_VERSION="536" -DSTM32F10X_MD -DSTM32F10X_MD -DUSE_STDPERIPH_DRIVER -o ..\obj\myfreertos.o --omf_browse ..\obj\myfreertos.crf --depend ..\obj\myfreertos.d)
I (..\myfreertos\myfreertos.h)(0x656FE939) I (..\myfreertos\myfreertos.h)(0x656FE939)
I (..\FreeRTOS\include\FreeRTOS.h)(0x652F9ABE) I (..\FreeRTOS\include\FreeRTOS.h)(0x652F9ABE)
I (D:\MDK5\ARM\ARMCC\include\stddef.h)(0x6025237E) I (D:\MDK5\ARM\ARMCC\include\stddef.h)(0x6025237E)
@ -2560,7 +2560,7 @@ I (..\HARDWARE\bufcut.h)(0x6537353D)
I (..\HARDWARE\iwdg.h)(0x64FC32D3) I (..\HARDWARE\iwdg.h)(0x64FC32D3)
I (..\HARDWARE\PID.h)(0x6559C02A) I (..\HARDWARE\PID.h)(0x6559C02A)
I (..\HARDWARE\PWMOUT.h)(0x655DCACD) I (..\HARDWARE\PWMOUT.h)(0x655DCACD)
I (..\w5500\w5500api.h)(0x650BB944) I (..\w5500\w5500api.h)(0x65712928)
I (..\w5500\spi.h)(0x65093ED0) I (..\w5500\spi.h)(0x65093ED0)
I (..\w5500\w5500.h)(0x5F374D02) I (..\w5500\w5500.h)(0x5F374D02)
I (..\w5500\Types.h)(0x5F374D02) I (..\w5500\Types.h)(0x5F374D02)

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

@ -120,7 +120,7 @@
<SetRegEntry> <SetRegEntry>
<Number>0</Number> <Number>0</Number>
<Key>ST-LINKIII-KEIL_SWO</Key> <Key>ST-LINKIII-KEIL_SWO</Key>
<Name>-UB65B5A1A00000000725C0200 -O206 -SF10000 -C0 -A0 -I0 -HNlocalhost -HP7184 -P1 -N00("") -D00(00000000) -L00(0) -TO131090 -TC10000000 -TT10000000 -TP21 -TDS8000 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC1000 -FN1 -FF0STM32F10x_128.FLM -FS08000000 -FL020000 -FP0($$Device:STM32F103C8$Flash\STM32F10x_128.FLM)</Name> <Name>-U16004A002933353739303541 -O206 -SF10000 -C0 -A0 -I0 -HNlocalhost -HP7184 -P1 -N00("ARM CoreSight SW-DP (ARM Core") -D00(1BA01477) -L00(0) -TO131090 -TC10000000 -TT10000000 -TP21 -TDS8000 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC1000 -FN1 -FF0STM32F10x_128.FLM -FS08000000 -FL020000 -FP0($$Device:STM32F103C8$Flash\STM32F10x_128.FLM)</Name>
</SetRegEntry> </SetRegEntry>
<SetRegEntry> <SetRegEntry>
<Number>0</Number> <Number>0</Number>

@ -21,7 +21,7 @@ int main(void)
PWM1_Init(500-1,720-1); PWM1_Init(500-1,720-1);
PWM2_Init(500-1,720-1); PWM2_Init(500-1,720-1);
PWM3_Init(500-1,720-1); PWM3_Init(500-1,720-1);
TIM4_Init(10000-1,7200-1);//100ms计数溢出更新中断200*7200/72M=0.02s=20ms //TIM4_Init(10000-1,7200-1);//100ms计数溢出更新中断200*7200/72M=0.02s=20ms
// //iwdg_my_Init(5,16000); //不喂狗12s复位 // //iwdg_my_Init(5,16000); //不喂狗12s复位
// //RX_BUF_Init(); // //RX_BUF_Init();
HC595_Send_Byte(0x02);//默认打开压缩机 HC595_Send_Byte(0x02);//默认打开压缩机
@ -36,10 +36,10 @@ int main(void)
PWM_SetCompare1(30);//J10 PWM_SetCompare1(30);//J10
PWM_SetCompare2(30);//J12 PWM_SetCompare2(30);//J12
PWM_SetCompare4(30);//J11 PWM_SetCompare4(30);//J11
// printf("init start\r\n");
init_Net();//网络初始化 // init_Net();//网络初始化
printf("init_Net OK"); // printf("init_Net OK");
while(!do_dns((u8 *)"hp8oQhMZJ67.iot-as-mqtt.cn-shanghai.aliyuncs.com"));//网域名称 //while(!do_dns((u8 *)"hp8oQhMZJ67.iot-as-mqtt.cn-shanghai.aliyuncs.com"));//网域名称
os_init(); os_init();
while(1) while(1)
{ {

@ -139,29 +139,30 @@ void Sensor_Communication_task(void *pvParameters)
while(1) while(1)
{ {
cnt_flag=do_mqtt(MQTT_SOCK,NET_CONFIG.rip,1883,5500); // cnt_flag=do_mqtt(MQTT_SOCK,NET_CONFIG.rip,1883,5500);
Humidity=H*0.1; // Humidity=H*0.1;
temperature=T*0.1; // temperature=T*0.1;
delay_ms(50); // delay_ms(50);
sprintf(wet_temp,"{\"method\":\"thing.event.property.post\",\"params\":{\"Humidity\":%.2f,\"temperature\":%.2f,\"CO2\":%d},\"version\":\"1.0.0\"}",Humidity,temperature,C); //¹¹½¨Êý¾Ý // sprintf(wet_temp,"{\"method\":\"thing.event.property.post\",\"params\":{\"Humidity\":%.2f,\"temperature\":%.2f,\"CO2\":%d,\"red_light\":%d,\"white_light\":%d,\"blue_light\":%d},\"version\":\"1.0.0\"}",Humidity,temperature,C,red/10,white/10,blue/10); //构建数据
if(cnt_flag==0){sub_flag=0;pub_flag=0;time=0;} // //sprintf(wet_temp,"{\"method\":\"thing.event.property.post\",\"params\":{\"Humidity\":%.2f,\"temperature\":%.2f,\"CO2\":%d},\"version\":\"1.0.0\"}",Humidity,temperature,C); //构建数据
if(cnt_flag&&sub_flag==0)sub_flag=!subscribMqtt(MQTT_SOCK,subTopic); // if(cnt_flag==0){sub_flag=0;pub_flag=0;time=0;}
if(cnt_flag&&sub_flag&&pub_flag==0)pub_flag=!publishMqtt(MQTT_SOCK,pubTopic,wet_temp); // if(cnt_flag&&sub_flag==0)sub_flag=!subscribMqtt(MQTT_SOCK,subTopic);
if(cnt_flag)time++; // if(cnt_flag&&sub_flag&&pub_flag==0)pub_flag=!publishMqtt(MQTT_SOCK,pubTopic,wet_temp);
if(time==50){ // if(cnt_flag)time++;
time=0; // if(time==50){
pingMqtt(MQTT_SOCK); // time=0;
} // pingMqtt(MQTT_SOCK);
// }
now_stage=timelong_Compare();// now_stage=timelong_Compare();//
printf("%d %d\r\n",chour,cminute); printf("%d %d\r\n",chour,cminute);
Array(&now_stage,&hour,&min,&tem,&hum,&red,&blue,&white);//更新对应阶段号的参数 Array(&now_stage,&hour,&min,&tem,&hum,&red,&blue,&white);//更新对应阶段号的参数
printf("current stage: %d\r\n",now_stage); printf("current stage: %d\r\n",now_stage);
RS485_1_Send_Data_1(rs485buf,8);//(RS485_RX_CNT=0已被注释) RS485_1_Send_Data_1(rs485buf,8);//(RS485_RX_CNT=0已被注释)
printf("send finish\r\n"); printf("send finish\r\n");
delay_xms(1000); delay_xms(500);
RX_BUF_Printf(128); RX_BUF_Printf(128);
RS485_1_Send_Data_3(); RS485_1_Send_Data_3();
delay_xms(1000); delay_xms(500);
RX_BUF_Printf(128); RX_BUF_Printf(128);
while(!(RS485_RX_BUF[0]==0 && RS485_RX_BUF[1]==0 && RS485_RX_BUF[2]==0 && RS485_RX_BUF[3]==0 && RS485_RX_BUF[4]==0)) while(!(RS485_RX_BUF[0]==0 && RS485_RX_BUF[1]==0 && RS485_RX_BUF[2]==0 && RS485_RX_BUF[3]==0 && RS485_RX_BUF[4]==0))
{ {
@ -260,6 +261,7 @@ void Sensor_Communication_task(void *pvParameters)
{ {
Analysis(&n,&i,RS485_RX_BUF); Analysis(&n,&i,RS485_RX_BUF);
printf("B6 03 cmd: batch sync\r\n"); printf("B6 03 cmd: batch sync\r\n");
Array(&now_stage,&hour,&min,&tem,&hum,&red,&blue,&white);//更新对应阶段号的参数
Write_Init(); Write_Init();
RX_BUF_ZERO(11); RX_BUF_ZERO(11);
printf(" \r\n"); printf(" \r\n");
@ -288,6 +290,7 @@ void Sensor_Communication_task(void *pvParameters)
{ {
Batch_synchronization(&n,RS485_RX_BUF); Batch_synchronization(&n,RS485_RX_BUF);
printf("B6 01 cmd: get one %d\r\n", n); printf("B6 01 cmd: get one %d\r\n", n);
Array(&now_stage,&hour,&min,&tem,&hum,&red,&blue,&white);//更新对应阶段号的参数
//Write_Init();减少擦写的次数 //Write_Init();减少擦写的次数
RX_BUF_ZERO(20); RX_BUF_ZERO(20);
printf(" \r\n"); printf(" \r\n");
@ -296,6 +299,42 @@ void Sensor_Communication_task(void *pvParameters)
//RX_BUF_Printf(128); //RX_BUF_Printf(128);
printf("\r\n"); printf("\r\n");
} }
else if(RS485_RX_BUF[0]==0xEE&&RS485_RX_BUF[1]==0xB1&&RS485_RX_BUF[2]==0x11&&RS485_RX_BUF[15]==0xFF&&RS485_RX_BUF[16]==0xFF)//单个同步默认带的数据
{
RX_BUF_ZERO(17);
printf(" \r\n");
printf("cut overdata of B6 03 \r\n");
//RX_BUF_Printf(128);
RX_BUF_Transfer(0,17);
//RX_BUF_Printf(128);
}
else if(RS485_RX_BUF[0]==0xEE&&RS485_RX_BUF[1]==0xB1&&RS485_RX_BUF[2]==0x11&&RS485_RX_BUF[14]==0xFF&&RS485_RX_BUF[15]==0xFF)//单个同步默认带的数据
{
RX_BUF_ZERO(16);
printf("cut overdata of B6 03 \r\n");
printf(" \r\n");
//RX_BUF_Printf(128);
RX_BUF_Transfer(0,16);
//RX_BUF_Printf(128);
}
else if(RS485_RX_BUF[0]==0xEE&&RS485_RX_BUF[1]==0xB1&&RS485_RX_BUF[2]==0x11&&RS485_RX_BUF[12]==0xFF&&RS485_RX_BUF[13]==0xFF)//阶段切换默认带的数据
{
RX_BUF_ZERO(14);
printf("cut overdata of B6 04 \r\n");
printf(" \r\n");
//RX_BUF_Printf(128);
RX_BUF_Transfer(0,14);
//RX_BUF_Printf(128);
}
else if(RS485_RX_BUF[0]==0xEE&&RS485_RX_BUF[1]==0xB1&&RS485_RX_BUF[2]==0x01&&RS485_RX_BUF[7]==0xFF&&RS485_RX_BUF[8]==0xFF)//上位机默认带的数据
{
RX_BUF_ZERO(9);
printf("cut overdata of Upper computer \r\n");
printf(" \r\n");
//RX_BUF_Printf(128);
RX_BUF_Transfer(0,9);
//RX_BUF_Printf(128);
}
else else
{ {
printf("previous array cut\r\n"); printf("previous array cut\r\n");
@ -315,7 +354,7 @@ void Sensor_Communication_task(void *pvParameters)
PWM_SetCompare1((red/100.0*3.5+28));//J9 PWM_SetCompare1((red/100.0*3.5+28));//J9
PWM_SetCompare2((blue/100.0*3.5+28));//J11 PWM_SetCompare2((blue/100.0*3.5+28));//J11
//PWM_SetCompare4((white/10));//J10 PWM_SetCompare4((blue/100.0*3.5+28));//J10
//printf("red=%d\r\n",red); //printf("red=%d\r\n",red);
//printf("bule=%d\r\n",blue); //printf("bule=%d\r\n",blue);
} }

@ -10,12 +10,12 @@ uint8 txsize[MAX_SOCK_NUM] = {2,2,2,2,2,2,2,2};
uint8 rxsize[MAX_SOCK_NUM] = {2,2,2,2,2,2,2,2}; uint8 rxsize[MAX_SOCK_NUM] = {2,2,2,2,2,2,2,2};
//默认值 //默认值
uint8 dmac[6]={0x02,0x0e,0xc3,0x23,0x12,0x45}; uint8 dmac[6]={0x02,0x0e,0xc3,0x23,0x12,0x45};//MAC地址
uint8 dlip[4]={192,168,31,10}; uint8 dlip[4]={192,168,31,60}; //本机IP
uint8 dsub[4]={255,255,255,0}; uint8 dsub[4]={255,255,255,0}; //子网掩码
uint8 dgw[4]={192,168,31,1}; uint8 dgw[4]={192,168,31,1}; //网关
uint8 ddns[4]={114,114,114,114}; uint8 ddns[4]={114,114,114,114}; //DNS
uint8 drip[4]={0,0,0,0}; uint8 drip[4]={0,0,0,0}; //DNS 解析到的IP
void Reset_W5500(void){ void Reset_W5500(void){
GPIO_ResetBits(GPIOA, GPIO_Pin_15); GPIO_ResetBits(GPIOA, GPIO_Pin_15);
@ -25,12 +25,12 @@ void Reset_W5500(void){
} }
void put_defaultNet(void){ void put_defaultNet(void){
memcpy(NET_CONFIG.mac,dmac,6); memcpy(NET_CONFIG.mac,dmac,6);//MAC地址
memcpy(NET_CONFIG.lip,dlip,4); memcpy(NET_CONFIG.lip,dlip,4);//本机IP
memcpy(NET_CONFIG.sub,dsub,4); memcpy(NET_CONFIG.sub,dsub,4);//子网掩码
memcpy(NET_CONFIG.gw,dgw,4); memcpy(NET_CONFIG.gw,dgw,4); //网关
memcpy(NET_CONFIG.dns,ddns,4); memcpy(NET_CONFIG.dns,ddns,4);//DNS
memcpy(NET_CONFIG.rip,drip,4); memcpy(NET_CONFIG.rip,drip,4);//DNS 解析到的IP
} }
uint8 set_Network(void){ uint8 set_Network(void){
@ -84,23 +84,26 @@ void init_W5500(void){
GPIO_Init(GPIOA, &GPIO_InitStructure); GPIO_Init(GPIOA, &GPIO_InitStructure);
GPIO_SetBits(GPIOA, GPIO_Pin_15); GPIO_SetBits(GPIOA, GPIO_Pin_15);
WIZ_SPI_Init(); WIZ_SPI_Init();
//Reset_W5500();/*Ó²ÖØÆôW5500*/ Reset_W5500();/*硬重启W5500*/
put_defaultNet(); put_defaultNet();//赋值默认网络参数
} }
void init_Net(void){ void init_Net(void){
u8 try_times=0; u8 try_times=0;
init_W5500(); init_W5500();
//printf("reset\r\n"); printf("reset\r\n");
init_dhcp_client();//初始化DHCP客户端 init_dhcp_client();//初始化DHCP客户端
printf("okk\r\n");
while(check_DHCP_state(SOCK_DHCP)!=DHCP_RET_UPDATE){ while(check_DHCP_state(SOCK_DHCP)!=DHCP_RET_UPDATE){
try_times++; try_times++;
if(try_times==100){ //超时 重启芯片 if(try_times==100){ //超时 重启芯片
Reset_W5500(); Reset_W5500();
printf("w5500 reset ok");
init_dhcp_client(); init_dhcp_client();
try_times=0; try_times=0;
} }
delay_ms(5); delay_ms(5);
} }
while(!set_Network()); while(!set_Network());
} }

@ -28,5 +28,5 @@ void Reset_W5500(void); //
void init_W5500(void);//初始化W5500芯片 void init_W5500(void);//初始化W5500芯片
uint8 set_Network(void);//设置网络参数 uint8 set_Network(void);//设置网络参数
uint8 PHY_check(void);//检测网线是否连接 uint8 PHY_check(void);//检测网线是否连接
void init_Net(void);//网络初始化
#endif #endif

Loading…
Cancel
Save