Browse Source

init

master
zhaohe 1 year ago
parent
commit
7005fd7339
  1. 6
      .gitmodules
  2. 201
      .metadata/.ide.log
  3. 0
      .metadata/.lock
  4. 19
      .metadata/.log
  5. 18
      .metadata/.log4j2.xml
  6. 0
      .metadata/.plugins/com.st.stm32cube.ide.mcu.informationcenter/2.2.200.202403111931
  7. 1
      .metadata/.plugins/org.eclipse.cdt.core/.log
  8. 1
      .metadata/.plugins/org.eclipse.cdt.make.core/specs.c
  9. 1
      .metadata/.plugins/org.eclipse.cdt.make.core/specs.cpp
  10. 5
      .metadata/.plugins/org.eclipse.cdt.make.ui/dialog_settings.xml
  11. 1
      .metadata/.plugins/org.eclipse.core.resources/.root/.indexes/history.version
  12. 1
      .metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.version
  13. BIN
      .metadata/.plugins/org.eclipse.core.resources/.root/1.tree
  14. BIN
      .metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources
  15. 2
      .metadata/.plugins/org.eclipse.core.runtime/.settings/com.st.stm32cube.ide.mcu.ide.oss.prefs
  16. 2
      .metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.cdt.debug.core.prefs
  17. 4
      .metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.cdt.ui.prefs
  18. 2
      .metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs
  19. 5
      .metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.debug.core.prefs
  20. 2
      .metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.debug.ui.prefs
  21. 4
      .metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.ide.prefs
  22. 2
      .metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.navigator.prefs
  23. 2
      .metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.prefs
  24. 9
      .metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.workbench.prefs
  25. 1949
      .metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi
  26. 6
      .metadata/.plugins/org.eclipse.ui.ide/dialog_settings.xml
  27. 4
      .metadata/.plugins/org.eclipse.ui.workbench/workingsets.xml
  28. 3
      .metadata/version.ini
  29. 2
      .project
  30. 4
      .settings/language.settings.xml
  31. 2
      README.md
  32. 10
      h2o2_ext_sensor_pv1 Debug.launch
  33. 0
      h2o2_ext_sensor_pv1.cfg
  34. 4
      h2o2_ext_sensor_pv1.ioc
  35. 0
      h2o2_ext_sensor_pv1.launch
  36. 1
      transmit_disinfection_protocol_v1
  37. 4
      usrc/base/device_info.cpp
  38. 4
      usrc/base/hardware.cpp
  39. 2
      usrc/base/hardware.hpp
  40. 1
      usrc/main.cpp
  41. 13
      usrc/project_configs.h
  42. 2
      usrc/protocol_impl/basic/fn_mgr.cpp
  43. 15
      usrc/protocol_impl/basic/fn_mgr.hpp
  44. 15
      usrc/protocol_impl/function_impl/afunction_impl.hpp
  45. 91
      usrc/protocol_impl/function_impl/basic_fn.cpp
  46. 37
      usrc/protocol_impl/function_impl/h2o2_fn_impl.cpp
  47. 48
      usrc/protocol_impl/protocol_impl_service.cpp
  48. 2
      zsdk

6
.gitmodules

@ -1,9 +1,9 @@
[submodule "zaf_protocol"]
path = zaf_protocol
url = zwsd@192.168.1.3:p_camera_light_source_timing_controller/zaf_protocol.git
[submodule "zsdk"]
path = zsdk
url = zwsd@192.168.1.3:p_transmit_disinfection_v2/disinfection_stm32_sdk.git
[submodule "iflytop_canbus_protocol"]
path = iflytop_canbus_protocol
url = zwsd@192.168.1.3:p_transmit_disinfection_v2/disinfection_iflytop_can_protocol.git
[submodule "transmit_disinfection_protocol_v1"]
path = transmit_disinfection_protocol_v1
url = zwsd@192.168.1.3:p_transmit_disinfection/transmit_disinfection_protocol_v1.git

201
.metadata/.ide.log

@ -0,0 +1,201 @@
2024-05-15 10:48:10,095 [INFO] Activator:176 -
2024-05-15 10:48:10,096 [INFO] Activator:177 - !SESSION log4j initialized
2024-05-15 10:48:14,194 [INFO] LogOutputStream:77 - [STDOUT_REDIRECT]
2024-05-15 10:54:03,245 [INFO] ApplicationProperties:184 - Using Application install path: C:\ST\STM32CubeIDE_1.15.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.11.0.202403141607
2024-05-15 10:54:03,258 [INFO] DbMcusXml:78 - Set database path to: C:\ST\STM32CubeIDE_1.15.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.11.0.202403141607\\db\/mcu/
2024-05-15 10:54:03,258 [INFO] ApiDb:274 - Set plugin database path to: C:\ST\STM32CubeIDE_1.15.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.11.0.202403141607\\db\/plugins/boardmanager/
2024-05-15 10:54:03,270 [WARN] ApiDb:259 - Overriding images path with different value: => C:\ST\STM32CubeIDE_1.15.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.11.0.202403141607\\db\/plugins/mcufinder/images/
2024-05-15 10:54:03,277 [INFO] ApiDb:250 - Set database path to: C:\Users\h_zha\.stmcufinder\plugins\mcufinder//mcu/
2024-05-15 10:54:03,278 [INFO] DbMcusAds:125 - Set database path to: C:\Users\h_zha\.stmcufinder\plugins\mcufinder//mcu/
2024-05-15 10:54:03,288 [INFO] CrossReferenceDbSqlite:203 - Set database path to: C:\Users\h_zha\.stmcufinder\plugins\mcufinder//mcu/cs/
2024-05-15 10:54:03,348 [INFO] RulesReader:64 - Compatibility file has been processed (297 Rules)
2024-05-15 10:54:03,397 [INFO] DbMcusXml:78 - Set database path to: C:\ST\STM32CubeIDE_1.15.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.11.0.202403141607\\db\/mcu/
2024-05-15 10:54:03,397 [INFO] ApiDb:274 - Set plugin database path to: C:\ST\STM32CubeIDE_1.15.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.11.0.202403141607\\db\/plugins/boardmanager/
2024-05-15 10:54:03,397 [INFO] ApiDb:261 - Set plugin images path to: C:\ST\STM32CubeIDE_1.15.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.11.0.202403141607\\db\/plugins/mcufinder/images/
2024-05-15 10:54:03,397 [WARN] DbFile:41 - Overriding database path with different value: C:\Users\h_zha\.stmcufinder\plugins\mcufinder/ => C:\Users\h_zha\.stmcufinder\plugins\mcufinder
2024-05-15 10:54:03,398 [INFO] ApiDb:250 - Set database path to: C:\Users\h_zha\.stmcufinder\plugins\mcufinder//mcu/
2024-05-15 10:54:03,398 [WARN] DbFile:41 - Overriding database path with different value: C:\Users\h_zha\.stmcufinder\plugins\mcufinder/ => C:\Users\h_zha\.stmcufinder\plugins\mcufinder
2024-05-15 10:54:03,398 [INFO] DbMcusAds:125 - Set database path to: C:\Users\h_zha\.stmcufinder\plugins\mcufinder//mcu/
2024-05-15 10:54:03,398 [WARN] DbFile:41 - Overriding database path with different value: C:\Users\h_zha\.stmcufinder\plugins\mcufinder/ => C:\Users\h_zha\.stmcufinder\plugins\mcufinder
2024-05-15 10:54:03,398 [WARN] DbFile:41 - Overriding database path with different value: C:\Users\h_zha\.stmcufinder\plugins\mcufinder/ => C:\Users\h_zha\.stmcufinder\plugins\mcufinder
2024-05-15 10:54:03,398 [INFO] CrossReferenceDbSqlite:203 - Set database path to: C:\Users\h_zha\.stmcufinder\plugins\mcufinder//mcu/cs/
2024-05-15 10:54:03,435 [INFO] MainPanel:264 - HeapMemory: 268435456
2024-05-15 10:54:03,469 [INFO] DbMcusXml:78 - Set database path to: C:\ST\STM32CubeIDE_1.15.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.11.0.202403141607\\db\/mcu/
2024-05-15 10:54:03,469 [INFO] ApiDb:274 - Set plugin database path to: C:\ST\STM32CubeIDE_1.15.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.11.0.202403141607\\db\/plugins/boardmanager/
2024-05-15 10:54:03,469 [INFO] ApiDb:261 - Set plugin images path to: C:\ST\STM32CubeIDE_1.15.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.11.0.202403141607\\db\/plugins/mcufinder/images/
2024-05-15 10:54:03,469 [WARN] DbFile:41 - Overriding database path with different value: C:\Users\h_zha\.stmcufinder\plugins\mcufinder/ => C:\Users\h_zha\.stmcufinder\plugins\mcufinder
2024-05-15 10:54:03,469 [INFO] ApiDb:250 - Set database path to: C:\Users\h_zha\.stmcufinder\plugins\mcufinder//mcu/
2024-05-15 10:54:03,469 [WARN] DbFile:41 - Overriding database path with different value: C:\Users\h_zha\.stmcufinder\plugins\mcufinder/ => C:\Users\h_zha\.stmcufinder\plugins\mcufinder
2024-05-15 10:54:03,469 [INFO] DbMcusAds:125 - Set database path to: C:\Users\h_zha\.stmcufinder\plugins\mcufinder//mcu/
2024-05-15 10:54:03,469 [WARN] DbFile:41 - Overriding database path with different value: C:\Users\h_zha\.stmcufinder\plugins\mcufinder/ => C:\Users\h_zha\.stmcufinder\plugins\mcufinder
2024-05-15 10:54:03,469 [WARN] DbFile:41 - Overriding database path with different value: C:\Users\h_zha\.stmcufinder\plugins\mcufinder/ => C:\Users\h_zha\.stmcufinder\plugins\mcufinder
2024-05-15 10:54:03,469 [INFO] CrossReferenceDbSqlite:203 - Set database path to: C:\Users\h_zha\.stmcufinder\plugins\mcufinder//mcu/cs/
2024-05-15 10:54:03,479 [INFO] ApplicationProperties:184 - Using Application install path: C:\ST\STM32CubeIDE_1.15.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.11.0.202403141607
2024-05-15 10:54:03,480 [INFO] PluginManage:196 - Search for loadable plugins [exclusion list=, ]
2024-05-15 10:54:03,481 [INFO] PluginManage:310 - Check plugin analytics
2024-05-15 10:54:03,584 [INFO] AnalyticsPlugin:253 - Accepted Software Licenses: STM32CubeMX.6.7.0
2024-05-15 10:54:03,584 [INFO] AnalyticsPlugin:255 - Accepted CMSIS Pack Licenses:
2024-05-15 10:54:03,584 [INFO] AnalyticsPlugin:257 - Accepted Firmware Licenses: FW.F4.1.27.0,FW.F4.1.28.0
2024-05-15 10:54:03,586 [INFO] PluginManage:359 - Loaded plugin analytics (category:tool,tabindex:-1)
2024-05-15 10:54:03,586 [INFO] PluginManage:310 - Check plugin cadmodel
2024-05-15 10:54:03,596 [INFO] CADModel:105 - Init CAD model plugin
2024-05-15 10:54:03,597 [INFO] PluginManage:359 - Loaded plugin cadmodel (category:power,tabindex:5)
2024-05-15 10:54:03,597 [INFO] PluginManage:310 - Check plugin clock
2024-05-15 10:54:03,610 [INFO] PluginManage:359 - Loaded plugin clock (category:base,tabindex:2)
2024-05-15 10:54:03,610 [INFO] PluginManage:310 - Check plugin ddr
2024-05-15 10:54:03,613 [INFO] PluginManage:359 - Loaded plugin ddr (category:tool,tabindex:6)
2024-05-15 10:54:03,613 [INFO] PluginManage:310 - Check plugin filemanager
2024-05-15 10:54:03,747 [INFO] PluginManage:359 - Loaded plugin filemanager (category:base,tabindex:10)
2024-05-15 10:54:03,747 [INFO] PluginManage:310 - Check plugin ipmanager
2024-05-15 10:54:03,752 [INFO] PluginManage:359 - Loaded plugin ipmanager (category:base,tabindex:5)
2024-05-15 10:54:03,752 [INFO] PluginManage:310 - Check plugin lpbam
2024-05-15 10:54:03,765 [INFO] PluginManage:359 - Loaded plugin lpbam (category:base,tabindex:0)
2024-05-15 10:54:03,765 [INFO] PluginManage:310 - Check plugin memorymap
2024-05-15 10:54:03,779 [INFO] PluginManage:359 - Loaded plugin memorymap (category:base,tabindex:4)
2024-05-15 10:54:03,779 [INFO] PluginManage:310 - Check plugin pinoutandconfiguration
2024-05-15 10:54:03,790 [INFO] PluginManage:359 - Loaded plugin pinoutandconfiguration (category:base,tabindex:1)
2024-05-15 10:54:03,790 [INFO] PluginManage:310 - Check plugin pinoutconfig
2024-05-15 10:54:03,843 [WARN] SupportedApi:132 - Cannot load RTOS API schema: s4s-elt-must-match.1: The content of 'definitions' must match (annotation?, (simpleType | complexType)?, (unique | key | keyref)*)). A problem was found starting at: attribute.
2024-05-15 10:54:03,911 [INFO] PluginManage:359 - Loaded plugin pinoutconfig (category:base,tabindex:0)
2024-05-15 10:54:03,911 [INFO] PluginManage:310 - Check plugin power
2024-05-15 10:54:03,922 [INFO] PluginManage:359 - Loaded plugin power (category:power,tabindex:4)
2024-05-15 10:54:03,922 [INFO] PluginManage:310 - Check plugin projectmanager
2024-05-15 10:54:03,932 [INFO] PluginManage:359 - Loaded plugin projectmanager (category:projectmanager,tabindex:3)
2024-05-15 10:54:03,933 [INFO] PluginManage:310 - Check plugin thirdparty
2024-05-15 10:54:04,040 [INFO] PluginManage:359 - Loaded plugin thirdparty (category:base,tabindex:-1)
2024-05-15 10:54:04,040 [INFO] PluginManage:310 - Check plugin tools
2024-05-15 10:54:04,040 [WARN] IntegrityCheckThread:84 - waiting for thirdparty lock release [integrity check]
2024-05-15 10:54:04,041 [INFO] IntegrityCheckThread:86 - entering critical section [integrity check]
2024-05-15 10:54:04,042 [INFO] ThirdPartyUpdaterWithRetryManager:70 - Updater plugin not ready yet. [1/15]
2024-05-15 10:54:04,043 [INFO] PluginManage:359 - Loaded plugin tools (category:base,tabindex:7)
2024-05-15 10:54:04,043 [INFO] PluginManage:310 - Check plugin tutovideos
2024-05-15 10:54:04,150 [INFO] PluginManage:359 - Loaded plugin tutovideos (category:base,tabindex:-1)
2024-05-15 10:54:04,150 [INFO] PluginManage:310 - Check plugin updater
2024-05-15 10:54:04,157 [INFO] PluginManage:359 - Loaded plugin updater (category:base,tabindex:12)
2024-05-15 10:54:04,157 [INFO] PluginManage:310 - Check plugin userauth
2024-05-15 10:54:04,161 [INFO] UserAuth:114 - Init User Auth plugin
2024-05-15 10:54:04,161 [INFO] PluginManage:359 - Loaded plugin userauth (category:base,tabindex:14)
2024-05-15 10:54:04,161 [INFO] PluginManage:283 - PluginManage : Loaded plugins [17]
2024-05-15 10:54:04,303 [INFO] PinOutPanel:1561 - setPackage(No Configuration,No Configuration)
2024-05-15 10:54:04,365 [INFO] CADModel:165 - CPN selected for project level
2024-05-15 10:54:04,365 [INFO] CADModel:114 - Register for checkConnection events
2024-05-15 10:54:04,384 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:04,384 [INFO] PluginManager:220 - loadIPPluginJar : add adc
2024-05-15 10:54:04,407 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:04,407 [INFO] PluginManager:220 - loadIPPluginJar : add aes
2024-05-15 10:54:04,430 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:04,430 [INFO] PluginManager:220 - loadIPPluginJar : add can
2024-05-15 10:54:04,442 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:04,442 [INFO] PluginManager:220 - loadIPPluginJar : add comp
2024-05-15 10:54:04,459 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:04,459 [INFO] PluginManager:220 - loadIPPluginJar : add cryp
2024-05-15 10:54:04,474 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:04,475 [INFO] PluginManager:220 - loadIPPluginJar : add dfsdm
2024-05-15 10:54:04,484 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:04,484 [INFO] PluginManager:220 - loadIPPluginJar : add dma
2024-05-15 10:54:04,506 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:04,506 [INFO] PluginManager:220 - loadIPPluginJar : add dma3
2024-05-15 10:54:04,530 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:04,530 [INFO] PluginManager:220 - loadIPPluginJar : add extmemmanager
2024-05-15 10:54:04,531 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:04,531 [INFO] PluginManager:220 - loadIPPluginJar : add fatfs
2024-05-15 10:54:04,557 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:04,567 [INFO] PluginManager:220 - loadIPPluginJar : add fmc
2024-05-15 10:54:04,576 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:04,576 [INFO] PluginManager:220 - loadIPPluginJar : add freertos
2024-05-15 10:54:04,587 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:04,588 [INFO] PluginManager:220 - loadIPPluginJar : add genericplugin
2024-05-15 10:54:04,632 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:04,632 [INFO] PluginManager:220 - loadIPPluginJar : add gfxmmu
2024-05-15 10:54:04,699 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:04,699 [INFO] PluginManager:220 - loadIPPluginJar : add gic
2024-05-15 10:54:04,708 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:04,708 [INFO] PluginManager:220 - loadIPPluginJar : add gpio
2024-05-15 10:54:04,755 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:04,755 [INFO] PluginManager:220 - loadIPPluginJar : add gtzc
2024-05-15 10:54:04,757 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:04,757 [INFO] PluginManager:220 - loadIPPluginJar : add hash
2024-05-15 10:54:04,784 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:04,784 [INFO] PluginManager:220 - loadIPPluginJar : add i2c
2024-05-15 10:54:04,804 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:04,804 [INFO] PluginManager:220 - loadIPPluginJar : add i2s
2024-05-15 10:54:04,825 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:04,825 [INFO] PluginManager:220 - loadIPPluginJar : add i3c
2024-05-15 10:54:04,880 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:04,881 [INFO] PluginManager:220 - loadIPPluginJar : add ipddr
2024-05-15 10:54:04,928 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:04,929 [INFO] PluginManager:220 - loadIPPluginJar : add linkedlist
2024-05-15 10:54:04,947 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:04,947 [INFO] PluginManager:220 - loadIPPluginJar : add lorawan
2024-05-15 10:54:04,966 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:04,966 [INFO] PluginManager:220 - loadIPPluginJar : add ltdc
2024-05-15 10:54:04,974 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:04,974 [INFO] PluginManager:220 - loadIPPluginJar : add mdma
2024-05-15 10:54:04,981 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:04,981 [INFO] PluginManager:220 - loadIPPluginJar : add nvic
2024-05-15 10:54:05,000 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:05,000 [INFO] PluginManager:220 - loadIPPluginJar : add opamp
2024-05-15 10:54:05,034 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:05,034 [INFO] PluginManager:220 - loadIPPluginJar : add openamp
2024-05-15 10:54:05,056 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:05,057 [INFO] PluginManager:220 - loadIPPluginJar : add pdm2pcm
2024-05-15 10:54:05,065 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:05,066 [INFO] PluginManager:220 - loadIPPluginJar : add plateformsettings
2024-05-15 10:54:05,068 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:05,068 [INFO] PluginManager:220 - loadIPPluginJar : add quadspi
2024-05-15 10:54:05,075 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:05,075 [INFO] PluginManager:220 - loadIPPluginJar : add resmgrutility
2024-05-15 10:54:05,102 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:05,102 [INFO] PluginManager:220 - loadIPPluginJar : add sai
2024-05-15 10:54:05,122 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:05,122 [INFO] PluginManager:220 - loadIPPluginJar : add spi
2024-05-15 10:54:05,158 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:05,158 [INFO] PluginManager:220 - loadIPPluginJar : add stm32_wpan
2024-05-15 10:54:05,170 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:05,170 [INFO] PluginManager:220 - loadIPPluginJar : add tim
2024-05-15 10:54:05,208 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:05,209 [INFO] PluginManager:220 - loadIPPluginJar : add touchsensing
2024-05-15 10:54:05,222 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:05,222 [INFO] PluginManager:220 - loadIPPluginJar : add tracer_emb
2024-05-15 10:54:05,224 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:05,224 [INFO] PluginManager:220 - loadIPPluginJar : add ts
2024-05-15 10:54:05,226 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:05,226 [INFO] PluginManager:220 - loadIPPluginJar : add tsc
2024-05-15 10:54:05,227 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:05,227 [INFO] PluginManager:220 - loadIPPluginJar : add ucpd
2024-05-15 10:54:05,260 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:05,260 [INFO] PluginManager:220 - loadIPPluginJar : add usart
2024-05-15 10:54:05,293 [INFO] IPUIPlugin:80 - create IPUIPlugin
2024-05-15 10:54:05,293 [INFO] PluginManager:220 - loadIPPluginJar : add usbx
2024-05-15 10:54:05,402 [INFO] CADModel:165 - CPN selected for project level
2024-05-15 10:54:05,402 [INFO] CADModel:114 - Register for checkConnection events
2024-05-15 10:54:05,402 [FATAL] Updater:308 - Updater called before beeing initialized
2024-05-15 10:54:05,402 [ERROR] CADModel:125 - Updater not yet initialized, retry later
2024-05-15 10:54:05,476 [INFO] CADModel:165 - CPN selected for project level
2024-05-15 10:54:05,476 [INFO] CADModel:114 - Register for checkConnection events
2024-05-15 10:54:05,476 [FATAL] Updater:308 - Updater called before beeing initialized
2024-05-15 10:54:05,476 [ERROR] CADModel:125 - Updater not yet initialized, retry later
2024-05-15 10:54:05,478 [FATAL] Updater:308 - Updater called before beeing initialized
2024-05-15 10:54:05,539 [FATAL] Updater:308 - Updater called before beeing initialized
2024-05-15 10:54:05,542 [INFO] DbMcusAds:53 - JSON generation date=Wed Nov 29 18:52:27 CST 2023 (1701255147349)
2024-05-15 10:54:05,542 [FATAL] Updater:308 - Updater called before beeing initialized
2024-05-15 10:54:05,585 [WARN] DetailPanel:346 - Failed to get advertising image, set to default
2024-05-15 10:54:05,641 [FATAL] Updater:308 - Updater called before beeing initialized
2024-05-15 10:54:05,642 [FATAL] Updater:308 - Updater called before beeing initialized
2024-05-15 10:54:05,642 [FATAL] Updater:308 - Updater called before beeing initialized
2024-05-15 10:54:05,642 [WARN] DetailPanel:346 - Failed to get advertising image, set to default
2024-05-15 10:54:05,642 [FATAL] Updater:308 - Updater called before beeing initialized
2024-05-15 10:54:05,679 [ERROR] Updater:1120 - MainUpdater not yet initialized. External WinMGr cannot be set.
2024-05-15 10:54:05,681 [INFO] Updater:1056 - Updater Version found : 6.11.0
2024-05-15 10:54:05,693 [INFO] ApplicationProperties:184 - Using Application install path: C:\ST\STM32CubeIDE_1.15.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.11.0.202403141607
2024-05-15 10:54:05,980 [INFO] MainUpdater:2873 - connection check result : 10
2024-05-15 10:54:05,980 [INFO] MainUpdater:290 - Updater Check For Update Now.
2024-05-15 10:54:05,980 [INFO] MicroXplorer:498 - Change Database Version : DB.6.0.110
2024-05-15 10:54:05,990 [INFO] McuFinderGlobals:63 - Set McuFinder mode to 2 (CubeIDE integrated)
2024-05-15 10:54:05,990 [INFO] UserAuth:179 - activating auth plugin
2024-05-15 10:54:05,992 [INFO] UserAuth:415 - Internet connection configuration mode: 1
2024-05-15 10:54:06,020 [INFO] JxBrowserEngine:152 - Initiate JxBrowser Engine with user profile folder
2024-05-15 10:54:06,150 [INFO] CheckServerUpdateThread:120 - End of CheckServer Thread
2024-05-15 10:54:07,199 [ERROR] LogOutputStream:75 - [STDERR_REDIRECT]

0
.metadata/.lock

19
.metadata/.log

@ -0,0 +1,19 @@
!SESSION 2024-05-15 10:47:05.049 -----------------------------------------------
eclipse.buildId=Version 1.15.0
java.version=17.0.8.1
java.vendor=Eclipse Adoptium
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=zh_CN
Framework arguments: D:\workspace\p_transmit_disinfection\h2o2_ext_sensor_pv1\.project
Command-line arguments: -os win32 -ws win32 -arch x86_64 D:\workspace\p_transmit_disinfection\h2o2_ext_sensor_pv1\.project
!ENTRY com.st.stm32cube.ide.mcu.informationcenter 4 4 2024-05-15 10:48:09.936
!MESSAGE CubeMX plugin appears to be active, Log4j initialization might be too late.
!ENTRY com.st.stm32cube.ide.mcu.informationcenter 1 1 2024-05-15 10:48:09.952
!MESSAGE Log4j2 initialized with config file D:\workspace\p_transmit_disinfection\h2o2_ext_sensor_pv1\.metadata\.log4j2.xml
!ENTRY com.st.stm32cube.ide.mcu.ide 1 1 2024-05-15 10:48:15.098
!MESSAGE Started RMI Server, listening on port 41337
!ENTRY org.eclipse.core.jobs 2 2 2024-05-15 10:54:07.166
!MESSAGE Job found still running after platform shutdown. Jobs should be canceled by the plugin that scheduled them during shutdown: org.eclipse.ui.internal.Workbench$39

18
.metadata/.log4j2.xml

@ -0,0 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="info">
<ThresholdFilter level="INFO"/>
<Appenders>
<RollingFile name="DEBUGFILE" fileName="D:/workspace/p_transmit_disinfection/h2o2_ext_sensor_pv1/.metadata/.ide.log" filePattern="D:/workspace/p_transmit_disinfection/h2o2_ext_sensor_pv1/.metadata/.ide.log-%d{yyyy-MM-dd}.log">
<PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss,SSS} [%p] %c{1}:%L - %m%n" />
<Policies>
<TimeBasedTriggeringPolicy interval="1" modulate="true" />
<SizeBasedTriggeringPolicy size="50MB"/>
</Policies>
</RollingFile>
</Appenders>
<Loggers>
<Root level="ALL">
<AppenderRef ref="DEBUGFILE" />
</Root>
</Loggers>
</Configuration>

0
.metadata/.plugins/com.st.stm32cube.ide.mcu.informationcenter/2.2.200.202403111931

1
.metadata/.plugins/org.eclipse.cdt.core/.log

@ -0,0 +1 @@
*** SESSION 5月 15, 2024 10:48:06.567 -------------------------------------------

1
.metadata/.plugins/org.eclipse.cdt.make.core/specs.c

@ -0,0 +1 @@

1
.metadata/.plugins/org.eclipse.cdt.make.core/specs.cpp

@ -0,0 +1 @@

5
.metadata/.plugins/org.eclipse.cdt.make.ui/dialog_settings.xml

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<section name="Workbench">
<section name="org.eclipse.cdt.internal.ui.MakeView">
</section>
</section>

1
.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/history.version

@ -0,0 +1 @@


1
.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.version

@ -0,0 +1 @@


BIN
.metadata/.plugins/org.eclipse.core.resources/.root/1.tree

BIN
.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources

2
.metadata/.plugins/org.eclipse.core.runtime/.settings/com.st.stm32cube.ide.mcu.ide.oss.prefs

@ -0,0 +1,2 @@
eclipse.preferences.version=1
project_presentation/setHierarchicalMode=false

2
.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.cdt.debug.core.prefs

@ -0,0 +1,2 @@
eclipse.preferences.version=1
org.eclipse.cdt.debug.core.cDebug.default_source_containers=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?>\r\n<sourceLookupDirector>\r\n <sourceContainers duplicates\="false">\r\n <container memento\="AbsolutePath" typeId\="org.eclipse.cdt.debug.core.containerType.absolutePath"/>\r\n <container memento\="programRelativePath" typeId\="org.eclipse.cdt.debug.core.containerType.programRelativePath"/>\r\n <container memento\="&lt;?xml version\=&quot;1.0&quot; encoding\=&quot;UTF-8&quot; standalone\=&quot;no&quot;?&gt;&\#13;&\#10;&lt;project referencedProjects\=&quot;true&quot;/&gt;&\#13;&\#10;" typeId\="org.eclipse.cdt.debug.core.containerType.project"/>\r\n </sourceContainers>\r\n</sourceLookupDirector>\r\n

4
.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.cdt.ui.prefs

@ -0,0 +1,4 @@
eclipse.preferences.version=1
spelling_locale_initialized=true
useAnnotationsPrefPage=true
useQuickDiffPrefPage=true

2
.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs

@ -0,0 +1,2 @@
eclipse.preferences.version=1
version=1

5
.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.debug.core.prefs

@ -0,0 +1,5 @@
//org.eclipse.debug.core.PREFERRED_DELEGATES/org.eclipse.cdt.launch.applicationLaunchType=org.eclipse.cdt.dsf.gdb.launch.localCLaunch,debug,;org.eclipse.cdt.cdi.launch.localCLaunch,run,;
//org.eclipse.debug.core.PREFERRED_DELEGATES/org.eclipse.cdt.launch.attachLaunchType=org.eclipse.cdt.dsf.gdb.launch.attachCLaunch,debug,;
//org.eclipse.debug.core.PREFERRED_DELEGATES/org.eclipse.cdt.launch.postmortemLaunchType=org.eclipse.cdt.dsf.gdb.launch.coreCLaunch,debug,;
//org.eclipse.debug.core.PREFERRED_DELEGATES/org.eclipse.cdt.launch.remoteApplicationLaunchType=org.eclipse.rse.remotecdt.dsf.debug,debug,;
eclipse.preferences.version=1

2
.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.debug.ui.prefs

@ -0,0 +1,2 @@
eclipse.preferences.version=1
org.eclipse.debug.ui.PREF_LAUNCH_PERSPECTIVES=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?>\r\n<launchPerspectives/>\r\n

4
.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.ide.prefs

@ -0,0 +1,4 @@
eclipse.preferences.version=1
platformState=1714049040582
quickStart=false
tipsAndTricks=true

2
.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.navigator.prefs

@ -0,0 +1,2 @@
eclipse.preferences.version=1
org.eclipse.ui.navigator.ProjectExplorer.filterActivation=\:org.eclipse.ui.navigator.resources.filters.startsWithDot\:org.eclipse.cdt.ui.navigator.filters.AnonymousStructFilter\:org.eclipse.cdt.ui.navigator.filters.AbsentTranslationUnitFilter\:org.eclipse.ui.navigator.resources.nested.HideTopLevelProjectIfNested\:org.eclipse.ui.navigator.resources.nested.HideFolderWhenProjectIsShownAsNested\:org.eclipse.cdt.ui.navigator.filters.ForwardDeclarationFilter\:

2
.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.prefs

@ -0,0 +1,2 @@
eclipse.preferences.version=1
showIntro=false

9
.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.workbench.prefs

@ -0,0 +1,9 @@
//org.eclipse.ui.commands/state/com.st.stm32cube.ide.mcu.buildanalyzer.showstate/org.eclipse.ui.commands.radioState=human
//org.eclipse.ui.commands/state/org.eclipse.ui.navigator.resources.nested.changeProjectPresentation/org.eclipse.ui.commands.radioState=false
eclipse.preferences.version=1
org.eclipse.ui.workbench.ACTIVE_NOFOCUS_TAB_BG_END=255,255,255
org.eclipse.ui.workbench.ACTIVE_NOFOCUS_TAB_BG_START=255,255,255
org.eclipse.ui.workbench.ACTIVE_NOFOCUS_TAB_TEXT_COLOR=16,16,16
org.eclipse.ui.workbench.ACTIVE_TAB_BG_END=255,255,255
org.eclipse.ui.workbench.ACTIVE_TAB_BG_START=255,255,255
org.eclipse.ui.workbench.INACTIVE_TAB_BG_START=242,242,242

1949
.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi
File diff suppressed because it is too large
View File

6
.metadata/.plugins/org.eclipse.ui.ide/dialog_settings.xml

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<section name="Workbench">
<section name="ExternalProjectImportWizard">
<item key="WizardProjectsImportPage.STORE_NESTED_PROJECTS" value="true"/>
</section>
</section>

4
.metadata/.plugins/org.eclipse.ui.workbench/workingsets.xml

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<workingSetManager>
<workingSet aggregate="true" factoryID="org.eclipse.ui.internal.WorkingSetFactory" id="1715741289922_0" label="Window Working Set" name="Aggregate for window 1715741289921"/>
</workingSetManager>

3
.metadata/version.ini

@ -0,0 +1,3 @@
#Wed May 15 10:47:37 CST 2024
org.eclipse.core.runtime=2
org.eclipse.platform=4.30.0.v20231201-0110

2
.project

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>h2o2_ext_sensor</name>
<name>h2o2_ext_sensor_pv1</name>
<comment></comment>
<projects>
</projects>

4
.settings/language.settings.xml

@ -5,7 +5,7 @@
<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/>
<provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/>
<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/>
<provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="709724336485417758" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD &quot;${INPUTS}&quot;" prefer-non-shared="true">
<provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="1415462115871698035" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD &quot;${INPUTS}&quot;" prefer-non-shared="true">
<language-scope id="org.eclipse.cdt.core.gcc"/>
<language-scope id="org.eclipse.cdt.core.g++"/>
</provider>
@ -16,7 +16,7 @@
<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/>
<provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/>
<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/>
<provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="725214441617001229" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD &quot;${INPUTS}&quot;" prefer-non-shared="true">
<provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="1378021612277924580" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD &quot;${INPUTS}&quot;" prefer-non-shared="true">
<language-scope id="org.eclipse.cdt.core.gcc"/>
<language-scope id="org.eclipse.cdt.core.g++"/>
</provider>

2
README.md

@ -7,5 +7,5 @@
V2:
完成需求
h2o2_ext_sensor
h2o2_ext_sensor_pv1
```

10
h2o2_ext_sensor Debug.launch → h2o2_ext_sensor_pv1 Debug.launch

@ -12,7 +12,7 @@
<stringAttribute key="com.st.stm32cube.ide.mcu.debug.launch.ip_address_local" value="localhost"/>
<booleanAttribute key="com.st.stm32cube.ide.mcu.debug.launch.limit_swo_clock.enabled" value="false"/>
<stringAttribute key="com.st.stm32cube.ide.mcu.debug.launch.limit_swo_clock.value" value=""/>
<stringAttribute key="com.st.stm32cube.ide.mcu.debug.launch.loadList" value="{&quot;fItems&quot;:[{&quot;fIsFromMainTab&quot;:true,&quot;fPath&quot;:&quot;Debug/h2o2_ext_sensor.elf&quot;,&quot;fProjectName&quot;:&quot;h2o2_ext_sensor&quot;,&quot;fPerformBuild&quot;:true,&quot;fDownload&quot;:true,&quot;fLoadSymbols&quot;:true}]}"/>
<stringAttribute key="com.st.stm32cube.ide.mcu.debug.launch.loadList" value="{&quot;fItems&quot;:[{&quot;fIsFromMainTab&quot;:true,&quot;fPath&quot;:&quot;Debug/h2o2_ext_sensor_pv1.elf&quot;,&quot;fProjectName&quot;:&quot;h2o2_ext_sensor_pv1&quot;,&quot;fPerformBuild&quot;:true,&quot;fDownload&quot;:true,&quot;fLoadSymbols&quot;:true}]}"/>
<stringAttribute key="com.st.stm32cube.ide.mcu.debug.launch.override_start_address_mode" value="default"/>
<stringAttribute key="com.st.stm32cube.ide.mcu.debug.launch.remoteCommand" value="target remote"/>
<booleanAttribute key="com.st.stm32cube.ide.mcu.debug.launch.startServer" value="true"/>
@ -32,7 +32,7 @@
<booleanAttribute key="com.st.stm32cube.ide.mcu.debug.stlink.enable_shared_stlink" value="false"/>
<stringAttribute key="com.st.stm32cube.ide.mcu.debug.stlink.frequency" value="0"/>
<booleanAttribute key="com.st.stm32cube.ide.mcu.debug.stlink.halt_all_on_reset" value="false"/>
<stringAttribute key="com.st.stm32cube.ide.mcu.debug.stlink.log_file" value="D:\workspace\p_lusterinc\h2o2_ext_sensor\Debug\st-link_gdbserver_log.txt"/>
<stringAttribute key="com.st.stm32cube.ide.mcu.debug.stlink.log_file" value="D:\workspace\p_lusterinc\h2o2_ext_sensor_pv1\Debug\st-link_gdbserver_log.txt"/>
<stringAttribute key="com.st.stm32cube.ide.mcu.debug.stlink.low_power_debug" value="disable"/>
<stringAttribute key="com.st.stm32cube.ide.mcu.debug.stlink.max_halt_delay" value="2"/>
<stringAttribute key="com.st.stm32cube.ide.mcu.debug.stlink.reset_strategy" value="system_reset"/>
@ -67,13 +67,13 @@
<stringAttribute key="org.eclipse.cdt.launch.DEBUGGER_START_MODE" value="remote"/>
<booleanAttribute key="org.eclipse.cdt.launch.DEBUGGER_STOP_AT_MAIN" value="true"/>
<stringAttribute key="org.eclipse.cdt.launch.DEBUGGER_STOP_AT_MAIN_SYMBOL" value="main"/>
<stringAttribute key="org.eclipse.cdt.launch.PROGRAM_NAME" value="Debug/h2o2_ext_sensor.elf"/>
<stringAttribute key="org.eclipse.cdt.launch.PROJECT_ATTR" value="h2o2_ext_sensor"/>
<stringAttribute key="org.eclipse.cdt.launch.PROGRAM_NAME" value="Debug/h2o2_ext_sensor_pv1.elf"/>
<stringAttribute key="org.eclipse.cdt.launch.PROJECT_ATTR" value="h2o2_ext_sensor_pv1"/>
<booleanAttribute key="org.eclipse.cdt.launch.PROJECT_BUILD_CONFIG_AUTO_ATTR" value="true"/>
<stringAttribute key="org.eclipse.cdt.launch.PROJECT_BUILD_CONFIG_ID_ATTR" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.debug.1853947771"/>
<booleanAttribute key="org.eclipse.debug.core.ATTR_FORCE_SYSTEM_CONSOLE_ENCODING" value="false"/>
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
<listEntry value="/h2o2_ext_sensor"/>
<listEntry value="/h2o2_ext_sensor_pv1"/>
</listAttribute>
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
<listEntry value="4"/>

0
h2o2_ext_sensor.cfg → h2o2_ext_sensor_pv1.cfg

4
h2o2_ext_sensor.ioc → h2o2_ext_sensor_pv1.ioc

@ -230,8 +230,8 @@ ProjectManager.MultiThreaded=true
ProjectManager.NoMain=false
ProjectManager.PreviousToolchain=STM32CubeIDE
ProjectManager.ProjectBuild=false
ProjectManager.ProjectFileName=h2o2_ext_sensor.ioc
ProjectManager.ProjectName=h2o2_ext_sensor
ProjectManager.ProjectFileName=h2o2_ext_sensor_pv1.ioc
ProjectManager.ProjectName=h2o2_ext_sensor_pv1
ProjectManager.ProjectStructure=
ProjectManager.RegisterCallBack=
ProjectManager.StackSize=0x2000

0
h2o2_ext_sensor.launch → h2o2_ext_sensor_pv1.launch

1
transmit_disinfection_protocol_v1

@ -0,0 +1 @@
Subproject commit a3bc27ca9ca6c3d636d4a924c5d8bc9f7f4b5fc8

4
usrc/base/device_info.cpp

@ -1,6 +1,6 @@
#include "device_info.hpp"
#include "iflytop_canbus_protocol/iflytop_canbus_protocol.hpp"
#include "project_configs.h"
#include "zsdk/zsdk.hpp"
using namespace iflytop;
@ -17,6 +17,6 @@ uint16_t deviceInfo_getBoardId() {
}
uint16_t deviceInfo_getProjectId() { return PROJECT_ID; }
uint16_t deviceInfo_getBoardType() { return BOARD_TYPE; }
uint16_t deviceInfo_getProtocolVersion() { return PROTOCOL_VERSION; }
uint16_t deviceInfo_getProtocolVersion() { return 0; }
uint16_t deviceInfo_getSoftwareVersion() { return SOFTWARE_VERSION; }
uint16_t deviceInfo_getHardwareVersion() { return HARDWARE_VERSION; }

4
usrc/base/hardware.cpp

@ -3,6 +3,8 @@
#include "adc.h"
#include "tim.h"
#include "zsdk/zcanreceiver/zcanreceiver.hpp"
#include "zsdk/zcanreceiver_old/zcanreceiver.hpp"
#define TAG "HARD"
using namespace iflytop;
@ -148,7 +150,7 @@ int32_t Hardware::h2o2_sensor_read_sub_ic_reg(int32_t add, uint16_t* val, size_t
return 0;
}
#endif
return kerr_subdevice_offline;
return -1; // TODO 添加错误码
}
int32_t Hardware::h2o2_sensor_data(report_h2o2_data_t* readdata) {
#ifdef H2O2_SENSOR_TYPE_HMP110

2
usrc/base/hardware.hpp

@ -12,6 +12,8 @@
#include "zsdk/zadc.hpp"
#include "zsdk/zsdk.hpp"
#include "transmit_disinfection_protocol_v1/transmit_disinfection_protocol_v1.hpp"
void hardware_init();
namespace iflytop {

1
usrc/main.cpp

@ -6,6 +6,7 @@
#include "iwdg.h"
#include "protocol_impl/protocol_impl_service.hpp"
#include "zsdk/zcanreceiver/zcanreceiver.hpp"
#include "zsdk/zcanreceiver_old/zcanreceiver.hpp"
#include "zsdk/zsdk.hpp"
#define TAG "main"

13
usrc/project_configs.h

@ -1,5 +1,4 @@
#pragma once
#include "iflytop_canbus_protocol/iflytop_canbus_protocol.hpp"
/***********************************************************************************************************************
* SDK_CONFIG *
@ -20,15 +19,17 @@
*/
#define SOFTWARE_VERSION 1 // 软件版本
#define HARDWARE_VERSION 1 // 硬件版本
#define PROJECT "h2o2_ext_sensor" // 工程名称
#define PROJECT "h2o2_ext_sensor_pv1" // 工程名称
#define SN_HEADER "SN" // SN号前缀
#define PROJECT_ID kh2o2_ext_sensor // 项目ID
#define BOARD_TYPE kBoardType_H2O2Sensor // 板子类型
#define PROJECT_ID 0 // 项目ID
#define BOARD_TYPE 0 // 板子类型
#define DEBUG_UART huart1 // 调试串口
#define DEBUG_LIGHT_GPIO PE2 // 调试指示灯
// #define H2O2_SENSOR_TYPE_HPP272
#define H2O2_SENSOR_TYPE_HMP110
#define DEVICE_ID_START (kFixBoardId_H2O2SensorStart) // 设备ID
#define DEVICE_ID_OFF_PIN PE8 // 设备ID偏移引脚
#define DEVICE_ID_START (100) // 设备ID
#define DEVICE_ID_OFF_PIN PE8 // 设备ID偏移引脚
#define ENABLE_OLD_CAN_PROTOCOL

2
usrc/protocol_impl/basic/fn_mgr.cpp

@ -20,7 +20,7 @@ void fn_map_reg(uint16_t function_id, protocol_impl_func_t fn) {
bool fn_map_process(uint16_t function_id, uint8_t from, uint8_t to, uint8_t* rawpacket, size_t len) {
for (int i = 0; i < fn_map_size; i++) {
if (fn_map[i].function_id == function_id) {
fn_map[i].fn(from, to, (zcanbus_packet_t*)rawpacket, len);
fn_map[i].fn(from, to, (uint8_t*)rawpacket, len);
return true;
}
}

15
usrc/protocol_impl/basic/fn_mgr.hpp

@ -8,19 +8,6 @@
* MARCO *
***********************************************************************************************************************/
#define CHECK_PARAM_LEN(_paramNum, expectNum) \
if (_paramNum != expectNum) { \
zcanbus_send_errorack(packet, kerr_invalid_param_num); \
return; \
}
#define CHECK_MOTOR_INDEX(_subindex) \
if (_subindex > Hardware::ins().motorNum()) { \
zcanbus_send_errorack(packet, kerr_invalid_param); \
return; \
}
#define GET_PARAM(buff, off) ((((int32_t*)(buff))[off]))
#define PARAM_LEN() ((len - sizeof(zcanbus_packet_t)) / 4)
#define ZCLEAR_BIT(val, bit) (val &= ~(1 << bit))
#define ZSET_BIT(val, bit) (val |= (1 << bit))
@ -29,7 +16,7 @@
* FUNC *
***********************************************************************************************************************/
typedef void(*protocol_impl_func_t)(uint8_t from, uint8_t to, zcanbus_packet_t* rawpacket, size_t len);
typedef void(*protocol_impl_func_t)(uint8_t from, uint8_t to, uint8_t* rawpacket, size_t len);
void fn_map_reg(uint16_t function_id, protocol_impl_func_t funtion);
bool fn_map_process(uint16_t function_id, uint8_t from, uint8_t to, uint8_t* rawpacket, size_t len);

15
usrc/protocol_impl/function_impl/afunction_impl.hpp

@ -9,19 +9,6 @@
#include "base/hardware.hpp"
#include "zsdk/modbus/modbus_block_host.hpp"
#include "zsdk/zcanreceiver/zcanreceiver.hpp"
/***********************************************************************************************************************
* basic_fn *
***********************************************************************************************************************/
void basic_fn_init();
void fn_cmd_read_board_info(uint8_t from, uint8_t to, zcanbus_packet_t* packet, size_t len);
void fn_cmd_read_sysinfo(uint8_t from, uint8_t to, zcanbus_packet_t* packet, size_t len);
void fn_cmd_read_taskinfo(uint8_t from, uint8_t to, zcanbus_packet_t* packet, size_t len);
void fn_cmd_heart_ping(uint8_t from, uint8_t to, zcanbus_packet_t* packet, size_t len);
void fn_cmd_clear_reset_flag(uint8_t from, uint8_t to, zcanbus_packet_t* packet, size_t len);
#include "zsdk/zcanreceiver_old/zcanreceiver.hpp"
void h2o2_fn_impl_init();
void fn_cmd_h2o2_sensor_read_calibration_date(uint8_t from, uint8_t to, zcanbus_packet_t* packet, size_t len);
void fn_cmd_h2o2_sensor_read_sub_ic_errorcode(uint8_t from, uint8_t to, zcanbus_packet_t* packet, size_t len);
void fn_cmd_h2o2_sensor_read_sub_ic_reg(uint8_t from, uint8_t to, zcanbus_packet_t* packet, size_t len);

91
usrc/protocol_impl/function_impl/basic_fn.cpp

@ -1,91 +0,0 @@
#include "afunction_impl.hpp"
using namespace iflytop;
static uint8_t m_boardflag; // 0: 重启标志
/**
* @brief
*
* @param from
* @param to
* @param packet
* @param len
*/
void fn_cmd_read_board_info(uint8_t from, uint8_t to, zcanbus_packet_t* packet, size_t len) {
static ack_read_board_info_data_t ack;
ack.boardType = deviceInfo_getBoardType();
ack.projectId = deviceInfo_getProjectId();
ack.protcol_version = deviceInfo_getProtocolVersion();
ack.software_version = deviceInfo_getSoftwareVersion();
ack.hardware_version = deviceInfo_getHardwareVersion();
zcanbus_send_ack(packet, (uint8_t*)&ack, sizeof(ack));
}
/**
* @brief
*
* @param from
* @param to
* @param packet
* @param len
*/
void fn_cmd_read_sysinfo(uint8_t from, uint8_t to, zcanbus_packet_t* packet, size_t len) {
static ack_sysinfo_t ack;
ack.free_heap_size = SysMgr::ins()->osGetMinimumEverFreeHeapSize();
ack.total_heap_size = SysMgr::ins()->osGetTotalHeapSize();
ack.taskNum = SysMgr::ins()->getTaskNum();
ack.sysHasRun = SysMgr::ins()->osGetSysRunTime() / 1000;
zcanbus_send_ack(packet, (uint8_t*)&ack, sizeof(ack));
}
/**
* @brief 线
*
* @param from
* @param to
* @param packet
* @param len
*/
void fn_cmd_read_taskinfo(uint8_t from, uint8_t to, zcanbus_packet_t* packet, size_t len) {
static ask_taskinfo_t ack;
int32_t taskoff = GET_PARAM(packet->params, 0);
osThreadId taskId = SysMgr::ins()->osGetId(taskoff);
SysMgr::ins()->osTaskName(taskId, (char*)ack.taskName, sizeof(ack.taskName));
SysMgr::ins()->osTaskStackRemainingSize(taskId, &ack.stackRemindSize);
SysMgr::ins()->osTaskPriority(taskId, &ack.priority);
SysMgr::ins()->osTaskGetState(taskId, (char*)&ack.state);
zcanbus_send_ack(packet, (uint8_t*)&ack, sizeof(ack));
}
/**
* @brief PING
*
* @param from
* @param to
* @param packet
* @param len
*/
void fn_cmd_heart_ping(uint8_t from, uint8_t to, zcanbus_packet_t* packet, size_t len) {
static report_heatpacket_data_t heatpacket;
heatpacket.boardType = deviceInfo_getBoardType();
heatpacket.heartIndex = GET_PARAM(packet->params, 0);
heatpacket.flag = m_boardflag;
zcanbus_send_report(kreport_heatpacket_pong, (uint8_t*)&heatpacket, sizeof(heatpacket), 30);
}
/**
* @brief
*
* @param from
* @param to
* @param packet
* @param len
*/
void fn_cmd_clear_reset_flag(uint8_t from, uint8_t to, zcanbus_packet_t* packet, size_t len) {
ZCLEAR_BIT(m_boardflag, 0);
zcanbus_send_ack(packet, NULL, 0);
}
void basic_fn_init() {
m_boardflag = 0x00;
ZSET_BIT(m_boardflag, 0);
}

37
usrc/protocol_impl/function_impl/h2o2_fn_impl.cpp

@ -1,45 +1,18 @@
#include "afunction_impl.hpp"
#include "base/device_info.hpp"
using namespace iflytop;
#define TAG "PROTO-H2O2"
static osTimerId PacketReportTimerId;
using namespace iflytop;
using namespace zcr;
static void onPacketReportTimer(void const* argument) {
static report_h2o2_data_t data;
memset(&data, 0, sizeof(data));
Hardware::ins().h2o2_sensor_data(&data);
zcanbus_send_report(kreport_h2o2_sensor_data, (uint8_t*)&data, sizeof(data), 30);
}
void fn_cmd_h2o2_sensor_read_calibration_date(uint8_t from, uint8_t to, zcanbus_packet_t* packet, size_t len) {
CHECK_PARAM_LEN(PARAM_LEN(), 0);
int32_t data[3];
Hardware::ins().h2o2_sensor_read_calibration_date(&data[0], &data[1], &data[2]);
zcanbus_send_ack(packet, (uint8_t*)&data, sizeof(data));
}
void fn_cmd_h2o2_sensor_read_sub_ic_errorcode(uint8_t from, uint8_t to, zcanbus_packet_t* packet, size_t len) {
CHECK_PARAM_LEN(PARAM_LEN(), 0);
int32_t ecode = Hardware::ins().h2o2_sensor_read_sub_ic_errorcode();
zcanbus_send_ack(packet, (uint8_t*)&ecode, sizeof(ecode));
}
void fn_cmd_h2o2_sensor_read_sub_ic_reg(uint8_t from, uint8_t to, zcanbus_packet_t* packet, size_t len) {
CHECK_PARAM_LEN(PARAM_LEN(), 2);
int32_t addr = GET_PARAM(packet->params, 0);
int32_t regNum = GET_PARAM(packet->params, 1);
if (regNum > 10) regNum = 10; // 最多读10个寄存器
static uint16_t data[10];
memset(data, 0, sizeof(data));
int32_t ret = Hardware::ins().h2o2_sensor_read_sub_ic_reg(addr, data, regNum);
if (ret != 0) {
zcanbus_send_errorack(packet, ret);
return;
}
for (size_t i = 0; i < regNum; i++) {
printf("data[%d] = %d\n", i, data[i]);
}
zcanbus_send_ack(packet, (uint8_t*)&data, regNum * 2);
data.sensorid = deviceInfo_getBoardId();
ZCanReceiver::ins()->sendReport(kreport_h2o2_sensor_data, 0, (uint8_t*)&data, sizeof(data));
}
void h2o2_fn_impl_init() {

48
usrc/protocol_impl/protocol_impl_service.cpp

@ -14,7 +14,7 @@ static osThreadId DeviceStateMonitorThreadId;
static void onPacketRxThreadStart(void const* argument) {
while (true) {
zcanbus_schedule();
ZCanReceiver::ins()->loop();
osDelay(1);
}
}
@ -25,56 +25,26 @@ static void onDeviceStateMonitorThreadStart(void const* argument) {
if (Hardware::ins().h2o2_sensor_read_sub_ic_errorcode() != 0) {
Hardware::ins().setAlarmLight(kerror);
} else {
if (zcanbus_is_connected()) {
Hardware::ins().setAlarmLight(kconnected);
} else {
Hardware::ins().setAlarmLight(kdisconnected);
}
Hardware::ins().setAlarmLight(kconnected);
}
}
}
static void zcanbus_on_rx(uint8_t from, uint8_t to, uint8_t* rawpacket, size_t len) { //
zcanbus_packet_t* packet = (zcanbus_packet_t*)rawpacket;
ZLOGI(TAG, "process packet from %d to %d, function_id %d, len %d", from, to, packet->function_id, len);
bool processed = fn_map_process(packet->function_id, from, to, rawpacket, len);
if (!processed) {
zcanbus_send_errorack(packet, kerr_function_not_support);
}
ZLOGI(TAG, "process end");
}
static void zcanbus_on_connected(bool connected) {
if (connected) {
ZLOGI(TAG, "connected to host");
} else {
ZLOGI(TAG, "disconnected from host");
}
static void zcanbus_on_rx(CanPacketRxBuffer* rxbuf, uint8_t* packet, size_t len) { //
transmit_disinfection_protocol_header_t* header = (transmit_disinfection_protocol_header_t*)packet;
}
void protocol_impl_service_init() { //
Hardware::ins().init();
ForceReportFlagMgr::ins()->init();
zcanbus_init(deviceInfo_getBoardId());
zcanbus_reglistener(zcanbus_on_rx);
zcanbus_reg_on_connected_listener(zcanbus_on_connected);
ZCanReceiver::CFG* cfg = ZCanReceiver::ins()->createCFG(deviceInfo_getBoardId());
ZCanReceiver::ins()->init(cfg);
ZCanReceiver::ins()->registerListener(zcanbus_on_rx);
{
basic_fn_init();
fn_map_reg(kcmd_read_board_info, fn_cmd_read_board_info);
fn_map_reg(kcmd_read_sysinfo, fn_cmd_read_sysinfo);
fn_map_reg(kcmd_read_taskinfo, fn_cmd_read_taskinfo);
fn_map_reg(kcmd_heart_ping, fn_cmd_heart_ping);
fn_map_reg(kcmd_clear_reset_flag, fn_cmd_clear_reset_flag);
}
{}
{
h2o2_fn_impl_init();
fn_map_reg(kcmd_h2o2_sensor_read_calibration_date, fn_cmd_h2o2_sensor_read_calibration_date);
fn_map_reg(kcmd_h2o2_sensor_read_sub_ic_errorcode, fn_cmd_h2o2_sensor_read_sub_ic_errorcode);
fn_map_reg(kcmd_h2o2_sensor_read_sub_ic_reg, fn_cmd_h2o2_sensor_read_sub_ic_reg);
}
{ h2o2_fn_impl_init(); }
osThreadDef(PacketRxThread, onPacketRxThreadStart, osPriorityNormal, 0, 1024);
PacketRxThreadId = osThreadCreate(osThread(PacketRxThread), NULL);

2
zsdk

@ -1 +1 @@
Subproject commit 8c159045effb6a83b4dc8316f9370eeae192150c
Subproject commit 2d0aea4bda82668626ba11d42658eb2f36f48119
Loading…
Cancel
Save