Kaynağa Gözat

增加SMG452温度检测功能,检测出来的数据乘以0.0625,为温度数据(单位℃),IIC address 0x9E,和MS933X分开IIC通路
温度检测事件TEMPTURE_DET,每500Ms进行一次数据读取,并通过UART5发送出去(给主机),串口通信协议可以后续再根据情况调整

MS933X环出功能ms933x_media_service,放到timer3中断里循环调用,不强制拉高HPD,通过软件来识别接入,并关闭相关打印信息

删除一些不用的代码

robbin 1 hafta önce
ebeveyn
işleme
c55b45e36b
30 değiştirilmiş dosya ile 726 ekleme ve 822 silme
  1. 1 1
      EVT/EXAM/CodePro/YJD-CH32V30X/.settings/language.settings.xml
  2. 4 0
      EVT/EXAM/CodePro/YJD-CH32V30X/.settings/org.eclipse.core.resources.prefs
  3. 3 3
      EVT/EXAM/CodePro/YJD-CH32V30X/obj/Core/subdir.mk
  4. 3 3
      EVT/EXAM/CodePro/YJD-CH32V30X/obj/Debug/subdir.mk
  5. 78 78
      EVT/EXAM/CodePro/YJD-CH32V30X/obj/Peripheral/src/subdir.mk
  6. 3 3
      EVT/EXAM/CodePro/YJD-CH32V30X/obj/Startup/subdir.mk
  7. 253 295
      EVT/EXAM/CodePro/YJD-CH32V30X/obj/YJD-CH32V30X.map
  8. 3 1
      EVT/EXAM/CodePro/YJD-CH32V30X/obj/makefile
  9. 2 0
      EVT/EXAM/CodePro/YJD-CH32V30X/obj/sources.mk
  10. 1 1
      EVT/EXAM/CodePro/YJD-CH32V30X/obj/src/src/IIC_hal/subdir.mk
  11. 1 1
      EVT/EXAM/CodePro/YJD-CH32V30X/obj/src/src/ms933x/subdir.mk
  12. 20 0
      EVT/EXAM/CodePro/YJD-CH32V30X/obj/src/src/sgm452_temperature/subdir.mk
  13. 1 1
      EVT/EXAM/CodePro/YJD-CH32V30X/obj/src/src/subdir.mk
  14. 20 0
      EVT/EXAM/CodePro/YJD-CH32V30X/obj/src/src/uart5/subdir.mk
  15. 1 1
      EVT/EXAM/CodePro/YJD-CH32V30X/obj/src/src/uart_ht7315/subdir.mk
  16. 0 5
      EVT/EXAM/CodePro/YJD-CH32V30X/src/inc/BoardConfig.h
  17. 0 3
      EVT/EXAM/CodePro/YJD-CH32V30X/src/inc/IIC_Hardware.h
  18. 1 22
      EVT/EXAM/CodePro/YJD-CH32V30X/src/inc/TaskProcessCom.h
  19. 1 1
      EVT/EXAM/CodePro/YJD-CH32V30X/src/inc/mculib_common.h
  20. 18 0
      EVT/EXAM/CodePro/YJD-CH32V30X/src/inc/sgm452.h
  21. 35 0
      EVT/EXAM/CodePro/YJD-CH32V30X/src/inc/uart5.h
  22. 0 21
      EVT/EXAM/CodePro/YJD-CH32V30X/src/src/BoardConfig.c
  23. 35 35
      EVT/EXAM/CodePro/YJD-CH32V30X/src/src/IIC_hal/IIC3_Software.c
  24. 6 8
      EVT/EXAM/CodePro/YJD-CH32V30X/src/src/IIC_hal/IIC_Software.c
  25. 14 213
      EVT/EXAM/CodePro/YJD-CH32V30X/src/src/TaskProcessCom.c
  26. 10 24
      EVT/EXAM/CodePro/YJD-CH32V30X/src/src/main.c
  27. 0 96
      EVT/EXAM/CodePro/YJD-CH32V30X/src/src/mculib_common.c
  28. 6 6
      EVT/EXAM/CodePro/YJD-CH32V30X/src/src/ms933x/ms933x_app.c
  29. 58 0
      EVT/EXAM/CodePro/YJD-CH32V30X/src/src/sgm452_temperature/sgm452.c
  30. 148 0
      EVT/EXAM/CodePro/YJD-CH32V30X/src/src/uart5/uart5.c

+ 1 - 1
EVT/EXAM/CodePro/YJD-CH32V30X/.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="org.eclipse.cdt.managedbuilder.language.settings.providers.GCCBuiltinSpecsDetector" console="false" env-hash="391012066886060987" id="ilg.gnumcueclipse.managedbuild.cross.riscv.GCCBuiltinSpecsDetector" keep-relative-paths="false" name="CDT RISC-V Cross GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} ${cross_toolchain_flags} -E -P -v -dD &quot;${INPUTS}&quot;" prefer-non-shared="true">
+			<provider class="org.eclipse.cdt.managedbuilder.language.settings.providers.GCCBuiltinSpecsDetector" console="false" env-hash="424039548480138979" id="ilg.gnumcueclipse.managedbuild.cross.riscv.GCCBuiltinSpecsDetector" keep-relative-paths="false" name="CDT RISC-V Cross GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} ${cross_toolchain_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>

+ 4 - 0
EVT/EXAM/CodePro/YJD-CH32V30X/.settings/org.eclipse.core.resources.prefs

@@ -1,8 +1,12 @@
 eclipse.preferences.version=1
 encoding//src/inc/IIC_Software.h=UTF-8
+encoding//src/inc/sgm832.h=UTF-8
+encoding//src/inc/uart5.h=UTF-8
 encoding//src/src/IIC_hal/IIC2_Software.c=UTF-8
+encoding//src/src/IIC_hal/IIC3_Software.c=UTF-8
 encoding//src/src/IIC_hal/IIC_Software.c=UTF-8
 encoding//src/src/TaskProcessCom.c=UTF-8
 encoding//src/src/mculib_common.c=UTF-8
 encoding//src/src/ms933x/ms933x_app.c=UTF-8
+encoding//src/src/uart5/uart5.c=UTF-8
 encoding//src/src/uart_ht7315/uart_ht7315.c=UTF-8

+ 3 - 3
EVT/EXAM/CodePro/YJD-CH32V30X/obj/Core/subdir.mk

@@ -4,7 +4,7 @@
 
 # Add inputs and outputs from these tool invocations to the build variables 
 C_SRCS += \
-D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Core/core_riscv.c 
+D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Core/core_riscv.c 
 
 OBJS += \
 ./Core/core_riscv.o 
@@ -14,7 +14,7 @@ C_DEPS += \
 
 
 # Each subdirectory must supply rules for building sources it contributes
-Core/core_riscv.o: D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Core/core_riscv.c
-	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
+Core/core_riscv.o: D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Core/core_riscv.c
+	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
 	@	@
 

+ 3 - 3
EVT/EXAM/CodePro/YJD-CH32V30X/obj/Debug/subdir.mk

@@ -4,7 +4,7 @@
 
 # Add inputs and outputs from these tool invocations to the build variables 
 C_SRCS += \
-D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Debug/debug.c 
+D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Debug/debug.c 
 
 OBJS += \
 ./Debug/debug.o 
@@ -14,7 +14,7 @@ C_DEPS += \
 
 
 # Each subdirectory must supply rules for building sources it contributes
-Debug/debug.o: D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Debug/debug.c
-	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
+Debug/debug.o: D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Debug/debug.c
+	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
 	@	@
 

+ 78 - 78
EVT/EXAM/CodePro/YJD-CH32V30X/obj/Peripheral/src/subdir.mk

@@ -4,32 +4,32 @@
 
 # Add inputs and outputs from these tool invocations to the build variables 
 C_SRCS += \
-D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_adc.c \
-D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_bkp.c \
-D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_can.c \
-D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_crc.c \
-D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_dac.c \
-D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_dbgmcu.c \
-D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_dma.c \
-D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_dvp.c \
-D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_eth.c \
-D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_exti.c \
-D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_flash.c \
-D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_fsmc.c \
-D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_gpio.c \
-D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_i2c.c \
-D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_iwdg.c \
-D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_misc.c \
-D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_opa.c \
-D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_pwr.c \
-D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_rcc.c \
-D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_rng.c \
-D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_rtc.c \
-D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_sdio.c \
-D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_spi.c \
-D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_tim.c \
-D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_usart.c \
-D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_wwdg.c 
+D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_adc.c \
+D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_bkp.c \
+D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_can.c \
+D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_crc.c \
+D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_dac.c \
+D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_dbgmcu.c \
+D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_dma.c \
+D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_dvp.c \
+D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_eth.c \
+D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_exti.c \
+D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_flash.c \
+D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_fsmc.c \
+D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_gpio.c \
+D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_i2c.c \
+D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_iwdg.c \
+D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_misc.c \
+D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_opa.c \
+D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_pwr.c \
+D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_rcc.c \
+D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_rng.c \
+D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_rtc.c \
+D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_sdio.c \
+D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_spi.c \
+D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_tim.c \
+D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_usart.c \
+D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_wwdg.c 
 
 OBJS += \
 ./Peripheral/src/ch32v30x_adc.o \
@@ -89,82 +89,82 @@ C_DEPS += \
 
 
 # Each subdirectory must supply rules for building sources it contributes
-Peripheral/src/ch32v30x_adc.o: D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_adc.c
-	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
+Peripheral/src/ch32v30x_adc.o: D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_adc.c
+	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
 	@	@
-Peripheral/src/ch32v30x_bkp.o: D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_bkp.c
-	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
+Peripheral/src/ch32v30x_bkp.o: D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_bkp.c
+	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
 	@	@
-Peripheral/src/ch32v30x_can.o: D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_can.c
-	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
+Peripheral/src/ch32v30x_can.o: D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_can.c
+	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
 	@	@
-Peripheral/src/ch32v30x_crc.o: D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_crc.c
-	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
+Peripheral/src/ch32v30x_crc.o: D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_crc.c
+	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
 	@	@
-Peripheral/src/ch32v30x_dac.o: D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_dac.c
-	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
+Peripheral/src/ch32v30x_dac.o: D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_dac.c
+	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
 	@	@
-Peripheral/src/ch32v30x_dbgmcu.o: D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_dbgmcu.c
-	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
+Peripheral/src/ch32v30x_dbgmcu.o: D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_dbgmcu.c
+	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
 	@	@
-Peripheral/src/ch32v30x_dma.o: D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_dma.c
-	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
+Peripheral/src/ch32v30x_dma.o: D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_dma.c
+	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
 	@	@
-Peripheral/src/ch32v30x_dvp.o: D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_dvp.c
-	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
+Peripheral/src/ch32v30x_dvp.o: D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_dvp.c
+	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
 	@	@
-Peripheral/src/ch32v30x_eth.o: D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_eth.c
-	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
+Peripheral/src/ch32v30x_eth.o: D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_eth.c
+	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
 	@	@
-Peripheral/src/ch32v30x_exti.o: D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_exti.c
-	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
+Peripheral/src/ch32v30x_exti.o: D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_exti.c
+	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
 	@	@
-Peripheral/src/ch32v30x_flash.o: D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_flash.c
-	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
+Peripheral/src/ch32v30x_flash.o: D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_flash.c
+	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
 	@	@
-Peripheral/src/ch32v30x_fsmc.o: D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_fsmc.c
-	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
+Peripheral/src/ch32v30x_fsmc.o: D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_fsmc.c
+	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
 	@	@
-Peripheral/src/ch32v30x_gpio.o: D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_gpio.c
-	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
+Peripheral/src/ch32v30x_gpio.o: D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_gpio.c
+	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
 	@	@
-Peripheral/src/ch32v30x_i2c.o: D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_i2c.c
-	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
+Peripheral/src/ch32v30x_i2c.o: D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_i2c.c
+	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
 	@	@
-Peripheral/src/ch32v30x_iwdg.o: D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_iwdg.c
-	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
+Peripheral/src/ch32v30x_iwdg.o: D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_iwdg.c
+	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
 	@	@
-Peripheral/src/ch32v30x_misc.o: D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_misc.c
-	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
+Peripheral/src/ch32v30x_misc.o: D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_misc.c
+	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
 	@	@
-Peripheral/src/ch32v30x_opa.o: D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_opa.c
-	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
+Peripheral/src/ch32v30x_opa.o: D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_opa.c
+	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
 	@	@
-Peripheral/src/ch32v30x_pwr.o: D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_pwr.c
-	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
+Peripheral/src/ch32v30x_pwr.o: D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_pwr.c
+	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
 	@	@
-Peripheral/src/ch32v30x_rcc.o: D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_rcc.c
-	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
+Peripheral/src/ch32v30x_rcc.o: D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_rcc.c
+	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
 	@	@
-Peripheral/src/ch32v30x_rng.o: D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_rng.c
-	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
+Peripheral/src/ch32v30x_rng.o: D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_rng.c
+	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
 	@	@
-Peripheral/src/ch32v30x_rtc.o: D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_rtc.c
-	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
+Peripheral/src/ch32v30x_rtc.o: D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_rtc.c
+	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
 	@	@
-Peripheral/src/ch32v30x_sdio.o: D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_sdio.c
-	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
+Peripheral/src/ch32v30x_sdio.o: D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_sdio.c
+	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
 	@	@
-Peripheral/src/ch32v30x_spi.o: D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_spi.c
-	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
+Peripheral/src/ch32v30x_spi.o: D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_spi.c
+	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
 	@	@
-Peripheral/src/ch32v30x_tim.o: D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_tim.c
-	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
+Peripheral/src/ch32v30x_tim.o: D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_tim.c
+	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
 	@	@
-Peripheral/src/ch32v30x_usart.o: D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_usart.c
-	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
+Peripheral/src/ch32v30x_usart.o: D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_usart.c
+	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
 	@	@
-Peripheral/src/ch32v30x_wwdg.o: D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_wwdg.c
-	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
+Peripheral/src/ch32v30x_wwdg.o: D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Peripheral/src/ch32v30x_wwdg.c
+	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
 	@	@
 

+ 3 - 3
EVT/EXAM/CodePro/YJD-CH32V30X/obj/Startup/subdir.mk

@@ -4,7 +4,7 @@
 
 # Add inputs and outputs from these tool invocations to the build variables 
 S_UPPER_SRCS += \
-D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Startup/startup_ch32v30x_D8C.S 
+D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Startup/startup_ch32v30x_D8C.S 
 
 OBJS += \
 ./Startup/startup_ch32v30x_D8C.o 
@@ -14,7 +14,7 @@ S_UPPER_DEPS += \
 
 
 # Each subdirectory must supply rules for building sources it contributes
-Startup/startup_ch32v30x_D8C.o: D:/Wingcool/WingCool/CH32V30X/EVT/EXAM/SRC/Startup/startup_ch32v30x_D8C.S
-	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -x assembler-with-cpp -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Startup" -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
+Startup/startup_ch32v30x_D8C.o: D:/Wingcool/WingCool/YJD-CH32V30X/EVT/EXAM/SRC/Startup/startup_ch32v30x_D8C.S
+	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -x assembler-with-cpp -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Startup" -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
 	@	@
 

Dosya farkı çok büyük olduğundan ihmal edildi
+ 253 - 295
EVT/EXAM/CodePro/YJD-CH32V30X/obj/YJD-CH32V30X.map


+ 3 - 1
EVT/EXAM/CodePro/YJD-CH32V30X/obj/makefile

@@ -9,6 +9,8 @@ RM := rm -rf
 # All of the sources participating in the build are defined here
 -include sources.mk
 -include src/src/uart_ht7315/subdir.mk
+-include src/src/uart5/subdir.mk
+-include src/src/sgm452_temperature/subdir.mk
 -include src/src/ms933x/subdir.mk
 -include src/src/IIC_hal/subdir.mk
 -include src/src/subdir.mk
@@ -55,7 +57,7 @@ all: YJD-CH32V30X.elf secondary-outputs
 
 # Tool invocations
 YJD-CH32V30X.elf: $(OBJS) $(USER_OBJS)
-	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -T "D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Ld\Link.ld" -nostartfiles -Xlinker --gc-sections -L"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -Wl,-Map,"YJD-CH32V30X.map" --specs=nano.specs --specs=nosys.specs -o "YJD-CH32V30X.elf" $(OBJS) $(USER_OBJS) $(LIBS)
+	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -T "D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Ld\Link.ld" -nostartfiles -Xlinker --gc-sections -L"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -Wl,-Map,"YJD-CH32V30X.map" --specs=nano.specs --specs=nosys.specs -o "YJD-CH32V30X.elf" $(OBJS) $(USER_OBJS) $(LIBS)
 	@	@
 YJD-CH32V30X.hex: YJD-CH32V30X.elf
 	@	riscv-none-embed-objcopy -O ihex "YJD-CH32V30X.elf"  "YJD-CH32V30X.hex"

+ 2 - 0
EVT/EXAM/CodePro/YJD-CH32V30X/obj/sources.mk

@@ -29,5 +29,7 @@ Startup \
 src/src \
 src/src/IIC_hal \
 src/src/ms933x \
+src/src/sgm452_temperature \
+src/src/uart5 \
 src/src/uart_ht7315 \
 

+ 1 - 1
EVT/EXAM/CodePro/YJD-CH32V30X/obj/src/src/IIC_hal/subdir.mk

@@ -24,6 +24,6 @@ C_DEPS += \
 
 # Each subdirectory must supply rules for building sources it contributes
 src/src/IIC_hal/%.o: ../src/src/IIC_hal/%.c
-	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
+	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
 	@	@
 

+ 1 - 1
EVT/EXAM/CodePro/YJD-CH32V30X/obj/src/src/ms933x/subdir.mk

@@ -15,6 +15,6 @@ C_DEPS += \
 
 # Each subdirectory must supply rules for building sources it contributes
 src/src/ms933x/%.o: ../src/src/ms933x/%.c
-	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
+	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
 	@	@
 

+ 20 - 0
EVT/EXAM/CodePro/YJD-CH32V30X/obj/src/src/sgm452_temperature/subdir.mk

@@ -0,0 +1,20 @@
+################################################################################
+# Automatically-generated file. Do not edit!
+################################################################################
+
+# Add inputs and outputs from these tool invocations to the build variables 
+C_SRCS += \
+../src/src/sgm452_temperature/sgm452.c 
+
+OBJS += \
+./src/src/sgm452_temperature/sgm452.o 
+
+C_DEPS += \
+./src/src/sgm452_temperature/sgm452.d 
+
+
+# Each subdirectory must supply rules for building sources it contributes
+src/src/sgm452_temperature/%.o: ../src/src/sgm452_temperature/%.c
+	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
+	@	@
+

+ 1 - 1
EVT/EXAM/CodePro/YJD-CH32V30X/obj/src/src/subdir.mk

@@ -36,6 +36,6 @@ C_DEPS += \
 
 # Each subdirectory must supply rules for building sources it contributes
 src/src/%.o: ../src/src/%.c
-	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
+	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
 	@	@
 

+ 20 - 0
EVT/EXAM/CodePro/YJD-CH32V30X/obj/src/src/uart5/subdir.mk

@@ -0,0 +1,20 @@
+################################################################################
+# Automatically-generated file. Do not edit!
+################################################################################
+
+# Add inputs and outputs from these tool invocations to the build variables 
+C_SRCS += \
+../src/src/uart5/uart5.c 
+
+OBJS += \
+./src/src/uart5/uart5.o 
+
+C_DEPS += \
+./src/src/uart5/uart5.d 
+
+
+# Each subdirectory must supply rules for building sources it contributes
+src/src/uart5/%.o: ../src/src/uart5/%.c
+	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
+	@	@
+

+ 1 - 1
EVT/EXAM/CodePro/YJD-CH32V30X/obj/src/src/uart_ht7315/subdir.mk

@@ -15,6 +15,6 @@ C_DEPS += \
 
 # Each subdirectory must supply rules for building sources it contributes
 src/src/uart_ht7315/%.o: ../src/src/uart_ht7315/%.c
-	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
+	@	@	riscv-none-embed-gcc -march=rv32imacxw -mabi=ilp32 -msmall-data-limit=8 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized  -g -D__STD_GCC__ -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Debug" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Core" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\SRC\Peripheral\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\src" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\src\inc" -I"D:\Wingcool\WingCool\YJD-CH32V30X\EVT\EXAM\CodePro\YJD-CH32V30X\lib" -std=gnu99 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -c -o "$@" "$<"
 	@	@
 

+ 0 - 5
EVT/EXAM/CodePro/YJD-CH32V30X/src/inc/BoardConfig.h

@@ -8,7 +8,6 @@ extern "C" {
 #include "ch32x035_usbpd.h"
 
 #define  IIC_ADDR_MS933X  0xB2
-#define  IIC_ADDR_MS1826  0xB6
 
 
 
@@ -70,10 +69,6 @@ extern "C" {
 #define  RESERVED_GPIO_A5      (GPIO_Pin_5)
 #define  RESERVED_GPIO_A4      (GPIO_Pin_4)
 
-
-void MS1826a_RST_GPIO_PP(void);
-void MS1826a_RST_GPIO_IPU(void);
-
 void MS933x_RST_GPIO_PP(void);
 void MS933x_RST_GPIO_IPU(void);
 

+ 0 - 3
EVT/EXAM/CodePro/YJD-CH32V30X/src/inc/IIC_Hardware.h

@@ -21,9 +21,6 @@ extern "C" {
 // #define   RST_PIN     (GPIO_Pin_0)   //PA0
 // #define   INT_PIN     (GPIO_Pin_1)   //PA1
 
-
-void MS1826A_IIC_Init(void);
-
 BOOL Check_I2C_Address(u8 Address);
 u8 IICReadOneByte(u32 ReadAddr);
 BOOL IICReadBytes(u32 ReadAddr, u8 *pBuffer, u16 Length);

+ 1 - 22
EVT/EXAM/CodePro/YJD-CH32V30X/src/inc/TaskProcessCom.h

@@ -26,10 +26,6 @@
 #define RESOLUTION_X  (16384-1)
 #define RESOLUTION_Y  (9600-1)
 
-#define DEVICE_MODE_MOUSE 0
-#define DEVICE_MODE_SIGLETOUCH 1
-#define DEVICE_MODE_MULTITOUCH  2
-
 typedef enum {
   CHIP_TYPE_UNKNOW,
   CHIP_TYPE_MS1826A, //0xB6-B7
@@ -45,30 +41,13 @@ typedef enum {
 #define   BIT6                    (0X40)
 #define   BIT7                    (0X80)
 
-
-extern uint8_t GT_CMD_WR;
-extern uint8_t GT_CMD_RD;
-
 extern CHIP_TYPE ChipType;
-
-
-extern uint8_t DeviceMode;
-extern volatile BOOL UsbReportPosEn;
-
-extern uint16_t wESDCheckTime;
-extern BOOL enable_INT_irq;
-extern BOOL enable_ESD_check;
-extern uint8_t IdleTimer;
 extern uint16_t UsbInitTimer;
 extern void (*TouchProc)(void);
-//extern UINT16 g_u16_timer_out;
 
 void CheckUsbStatus();
-void IICTouchInit();
+void ProcessEventInit();
 void InitChipStartTask();
 
-BOOL SearchAddress( uint8_t num );
-
-void USART4_SendData(PUINT8 txbuf, uint16_t length);
 void TIM3_Init( uint16_t arr, uint16_t psc );
 #endif

+ 1 - 1
EVT/EXAM/CodePro/YJD-CH32V30X/src/inc/mculib_common.h

@@ -20,7 +20,7 @@
 // #include "mculib_ir.h"
 // #include "mculib_flash.h"
 // #include "mculib_systick.h"
-#include "TaskProcessCom.h" //g_u16_timer_out
+#include "TaskProcessCom.h"
 
 #define _MS1826_LOG_ENABLE_  (1)
 

+ 18 - 0
EVT/EXAM/CodePro/YJD-CH32V30X/src/inc/sgm452.h

@@ -0,0 +1,18 @@
+#ifndef SGM452_H
+#define SGM452_H
+
+//#include "ch32x035.h"
+//#include "uart5.h"
+
+#include "IIC3_Software.h"
+//#include "IIC2_Software.h"
+
+//sgm452 I2C address
+//7bit: 1 0 0 1 A2 A1 A0 rw
+//      1 0 0 1  1  1  1 rw  ==> 0x9E
+#define  SGM452_I2C_ADDR  0x9E
+
+void sgm452_GPIO_I2cChannel_Init(void);
+void sgm452_Proc(void);
+
+#endif // SGM452_H

+ 35 - 0
EVT/EXAM/CodePro/YJD-CH32V30X/src/inc/uart5.h

@@ -0,0 +1,35 @@
+#ifndef UART5_H
+#define UART5_H
+
+// 在这里设置头文件的内容
+#include "ch32v30x.h"
+#include "ch32x035_usbpd.h"
+
+// 定义Uart5接口的波特率
+#define UART5_BAUDRATE          115200
+
+#define DATA_LEN  2
+
+//little endian
+// Head    lenth   cmd      data     crc     end
+// 2byte   1byte   1byte   2byte   2byte   1byte
+// 5A A5    09     01      01 02   00 00   FF
+#pragma pack(push, 1)  // 保存对齐状态,并设定对齐为 1  byte
+typedef struct
+{
+  u8    Head1;                 //frame head1  5A
+  u8    Head2;                 //frame head2  A5
+  u8    Len;                   //length
+  u8    Cmd;                   //cmd
+  u8    Data[DATA_LEN];        //data 2
+  u16   CRC16;                 //CRC check
+  u8    End;                   //frame end 0xFF
+}UART2_PACKAGE_TypeDef;
+#pragma pack(pop)  // 鎭㈠瀵归綈鐘舵��
+
+
+void Uart5_GPIO_Init(void);
+void SendUart5DataPacket(u8 cmd, u8* data, u8 len);
+
+
+#endif // UART5_H

+ 0 - 21
EVT/EXAM/CodePro/YJD-CH32V30X/src/src/BoardConfig.c

@@ -1,26 +1,5 @@
 #include "BoardConfig.h"
 
-void MS1826a_RST_GPIO_PP(void)
-{
-    GPIO_InitTypeDef GPIO_InitStructure = {0};
-
-    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);
-    GPIO_InitStructure.GPIO_Pin = MS1826_RST;
-    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
-    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
-    GPIO_Init(GPIOB, &GPIO_InitStructure);
-}
-
-void MS1826a_RST_GPIO_IPU(void)
-{
-    GPIO_InitTypeDef GPIO_InitStructure = {0};
-
-    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);
-    GPIO_InitStructure.GPIO_Pin = MS1826_RST;
-    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;
-    GPIO_Init(GPIOB, &GPIO_InitStructure);
-}
-
 void MS933x_RST_GPIO_PP(void)
 {
     GPIO_InitTypeDef GPIO_InitStructure = {0};

+ 35 - 35
EVT/EXAM/CodePro/YJD-CH32V30X/src/src/IIC_hal/IIC3_Software.c

@@ -17,10 +17,10 @@
 
 u8 iic3_speed_us = 0; //235kHz 默认
 
-//修改IIC速度:
+//修改 IIC speed
 void IIC3_Set_Speed(u8 i2c_speed)
 {
-    //修改iic延时时间
+    //修改 IIC 延时时间
     iic3_speed_us = i2c_speed;
 }
 
@@ -30,7 +30,7 @@ void IIC3_sf_Init(void)
     RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOB, ENABLE );
 
     GPIO_InitStructure.GPIO_Pin = SENSOR_SDA | SENSOR_SCL;
-    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;   //推挽输出
+    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;   //Push-pull output
     GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
     GPIO_Init(GPIOB, &GPIO_InitStructure);
 
@@ -48,37 +48,37 @@ void IIC3_Delay(u8 time)
     {__NOP();}
 }
 
-//产生IIC起始信号
+//产生 IIC start signal
 void IIC3_Start(void)
 {
-    SDA3_OUT();     //sda线输出
+    SDA3_OUT();     //SDA output
     IIC3_SDA(1);
     IIC3_SCL(1);
     IIC3_Delay(iic3_speed_us);
     IIC3_SDA(0);//START:when CLK is high,DATA change form high to low
     IIC3_Delay(iic3_speed_us);
-    IIC3_SCL(0);//钳住I2C总线,准备发送或接收数据
+    IIC3_SCL(0);//钳住 I2C 总线,准备发送或接收数据
 }
 
-//产生IIC停止信号
+//产生 IIC stop signal
 void IIC3_Stop(void)
 {
-    SDA3_OUT();//sda线输出
+    SDA3_OUT();//SDA output
     IIC3_SCL(0);
     IIC3_SDA(0);//STOP:when CLK is high DATA change form low to high
-    IIC3_Delay(iic3_speed_us); //至少4us 表示空闲
+    IIC3_Delay(iic3_speed_us); //至少 4us 表示空闲
     IIC3_SCL(1);
-    IIC3_SDA(1);//发送I2C总线结束信号
-    IIC3_Delay(iic3_speed_us); //至少4us 表示空闲
+    IIC3_SDA(1);//send IIC 总线 stop signal
+    IIC3_Delay(iic3_speed_us); //至少 4us 表示空闲
 }
 
-//等待应答信号到来
-//返回值:1,接收应答失败
-//        0接收应答成功
+//wait ACK signal
+//返回值: 1, 接收应答失败
+//        0, 接收应答成功
 u8 IIC3_Wait_Ack(void)
 {
     u8 ucErrTime=0;
-    SDA3_IN();      //SDA设置为输入
+    SDA3_IN();      //SDA input
     IIC3_SDA(1);IIC3_Delay(iic3_speed_us);
     IIC3_SCL(1);IIC3_Delay(iic3_speed_us);
     while(READ3_SDA)
@@ -86,15 +86,15 @@ u8 IIC3_Wait_Ack(void)
         ucErrTime++;
         if(ucErrTime>250)
         {
-            IIC3_Stop();//等待从机应答超时,发送stop
+            IIC3_Stop();//等待从机应答超时,send stop
             return 1;
         }
     }
-    IIC3_SCL(0);//时钟输出0
+    IIC3_SCL(0);//SCL output 0
     return 0;
 }
 
-//产生ACK应答
+//产生 ACK signal
 void IIC3_Ack(void)
 {
     IIC3_SCL(0);
@@ -106,7 +106,7 @@ void IIC3_Ack(void)
     IIC3_SCL(0);
 }
 
-//不产生ACK应答
+//不产生 ACK signal
 void IIC3_NAck(void)
 {
     IIC3_SCL(0);
@@ -118,14 +118,14 @@ void IIC3_NAck(void)
     IIC3_SCL(0);
 }
 
-//IIC发送一个字节
-//返回从机有无应答: 1,有应答 0,无应答
+//IIC send 1 byte
+//返回从机有无应答: 1, 有应答 0, 无应答
 #pragma GCC optimize(1)
 void IIC3_Send_Byte(u8 txd)
 {
     u8 t;
     SDA3_OUT();
-    IIC3_SCL(0);//拉低时钟开始数据传输
+    IIC3_SCL(0);//SCL output low, 开始数据传输
     for(t=0;t<8;t++)
     {
         if((txd<<t)&0x80)
@@ -151,11 +151,11 @@ void IIC3_Send_Byte(u8 txd)
     }
 }
 
-//读1个字节,ack=1时,发送ACK,ack=0,发送nACK
+//read 1 byte, ack = 1, send ACK, ack = 0, send NACK
 u8 IIC3_Read_Byte(unsigned char ack)
 {
     unsigned char i,receive=0;
-    SDA3_IN();//SDA设置为输入
+    SDA3_IN();//SDA input
     for(i=0;i<8;i++ )
     {
         IIC3_SCL(0);
@@ -174,13 +174,13 @@ u8 IIC3_Read_Byte(unsigned char ack)
         #endif
     }
     if (!ack)
-        IIC3_NAck();//发送nACK 1
+        IIC3_NAck();//send NACK 1
     else
-        IIC3_Ack(); //发送ACK 0
+        IIC3_Ack(); //Send ACK 0
     return receive;
 }
 
-//测试IIC地址: 1,成功 0,失败
+//check IIC address: 1, 成功, 0, 失败
 u8 IIC3_Check_Address(u8 Address)
 {
     IIC3_Start();
@@ -194,7 +194,7 @@ u8 IIC3_Check_Address(u8 Address)
     return (1);
 }
 
-//发送多个字节: 8bit address + 8bit register + n bytes data
+//send many bytes: 8bit address + 8bit register + n bytes data
 u8 IIC3_Send_8bitMultiBytes(u8 address, u8 reg, u8 *str, u8 num)
 {
     u8 i;
@@ -214,7 +214,7 @@ u8 IIC3_Send_8bitMultiBytes(u8 address, u8 reg, u8 *str, u8 num)
     return (1);
 }
 
-//读取多个字节: 8bit address + 8bit register + n bytes data
+//read many bytes: 8bit address + 8bit register + n bytes data
 u8 IIC3_Read_8bitMultiBytes(u8 address, u8 reg, u8 *str, u8 num)
 {
     u8 i;
@@ -237,7 +237,7 @@ u8 IIC3_Read_8bitMultiBytes(u8 address, u8 reg, u8 *str, u8 num)
     return (1);
 }
 
-//fix 读取多个字节: 8bit address + 8bit register + n bytes data
+//fix read many bytes: 8bit address + 8bit register + n bytes data
 u8 IIC3_Read_8bitMultiBytes_sgm832(u8 address, u8 reg, u16 *str, u8 num)
 {
     IIC3_Start();
@@ -262,7 +262,7 @@ u8 IIC3_Read_8bitMultiBytes_sgm832(u8 address, u8 reg, u16 *str, u8 num)
     IIC3_Stop();
     return (1);
 }
-// //fix 写取多个字节: 8bit address + 8bit register + n bytes data
+// //fix read many bytes: 8bit address + 8bit register + n bytes data
 // u8 IIC3_Read_8bitMultiBytes_sgm832(u8 address, u8 reg, u16 *str, u8 num)
 // {
 //     u8 i;
@@ -285,7 +285,7 @@ u8 IIC3_Read_8bitMultiBytes_sgm832(u8 address, u8 reg, u16 *str, u8 num)
 //     return (1);
 // }
 
-//发送多个字节(先发送低字节): 8bit address + 16bit register + n bytes data
+//send many bytes(send low byte first) 8bit address + 16bit register + n bytes data
 u8 IIC3_Send_16bit_LE_MultiBytes(u8 address, u16 reg, u8 *str, u16 num)
 {
     u8 i;
@@ -308,7 +308,7 @@ u8 IIC3_Send_16bit_LE_MultiBytes(u8 address, u16 reg, u8 *str, u16 num)
     return (1);
 }
 
-//读取多个字节(先发送低字节): 8bit address + 16bit register + n bytes data
+//read many bytes(send low byte first): 8bit address + 16bit register + n bytes data
 u8 IIC3_Read_16bit_LE_MultiBytes(u8 address, u16 reg, u8 *str, u8 num)
 {
     u8 i;
@@ -334,7 +334,7 @@ u8 IIC3_Read_16bit_LE_MultiBytes(u8 address, u16 reg, u8 *str, u8 num)
     return (1);
 }
 
-//发送多个字节(先发送高字节): 8bit address + 16bit register + n bytes data
+//send many bytes(send high byte first): 8bit address + 16bit register + n bytes data
 u8 IIC3_Send_16bit_BE_MultiBytes(u8 address, u16 reg, u8 *str, u8 num)
 {
     u8 i;
@@ -357,7 +357,7 @@ u8 IIC3_Send_16bit_BE_MultiBytes(u8 address, u16 reg, u8 *str, u8 num)
     return (1);
 }
 
-//读取多个字节(先发送高字节): 8bit address + 16bit register + n bytes data
+//read many bytes(send high byte first): 8bit address + 16bit register + n bytes data
 u8 IIC3_Read_16bit_BE_MultiBytes(u8 address, u16 reg, u8 *str, u8 num)
 {
     u8 i;

+ 6 - 8
EVT/EXAM/CodePro/YJD-CH32V30X/src/src/IIC_hal/IIC_Software.c

@@ -521,15 +521,13 @@ UINT8 _i2c_read_byte(BOOL lastByte)
 
 VOID mculib_i2c_init(VOID)
 {
-        GPIO_InitTypeDef GPIO_InitStructure={0};
-        RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOC, ENABLE );
-
-        GPIO_InitStructure.GPIO_Pin = MS933X_SDA | MS933X_SCL;
-        GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_OD;   //open drain output
-        GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
-        GPIO_Init(GPIOC, &GPIO_InitStructure);
-
+    GPIO_InitTypeDef GPIO_InitStructure={0};
+    RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOC, ENABLE );
 
+    GPIO_InitStructure.GPIO_Pin = MS933X_SDA | MS933X_SCL;
+    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_OD;   //open drain output
+    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
+    GPIO_Init(GPIOC, &GPIO_InitStructure);
 
     _i2c_stop();
 }

+ 14 - 213
EVT/EXAM/CodePro/YJD-CH32V30X/src/src/TaskProcessCom.c

@@ -4,7 +4,7 @@
 #include "IIC2_Software.h"
 #include "ch32x035_usbpd.h"
 #include "tmos.h"
-//#include "sgm452.h"
+#include "sgm452.h"
 //#include "sgm832.h"
 
 
@@ -22,41 +22,13 @@
 static UINT16 Task_ProcessEvent( UINT8 task_id, UINT16 events );
 static UINT8 TaskID = INVALID_TASK_ID;
 
-UINT8 GT_CMD_WR;
-UINT8 GT_CMD_RD;
-
 CHIP_TYPE ChipType;
-BOOL enable_INT_irq;
-BOOL enable_ESD_check;
-//UINT8 HearBeatCheckTimer;
-//BOOL GioInterruptFlag;
-UINT8 ShareBuf[10];
-//UINT8 NoTouchTimer = 0;
-UINT8 DeviceMode  = DEVICE_MODE_MOUSE;
-//UINT8 BleDeviceMode  = DEVICE_MODE_MULTITOUCH;
-//UINT16 Press_Flag,Press_Flag_Bak0, Press_Flag_Bak1, Press_Flag_Bak2,Press_Flag_Bak3;
-UINT8 Uart1IdleTime = 0;
-//BOOL BleReportFirst = FALSE;
-BOOL ReleaseFlag = 0;
-
-
-//adc key
-//extern u32 timems;
 
+UINT8 ShareBuf[10];
 
 void (*TouchProc)(void);
 
 
-#ifdef UART_ENABLE
-UINT8 TxBuff[16];
-UINT8 RxBuff[10];
-BOOL UartReportPosEn = TRUE;
-volatile BOOL UsbReportPosEn = FALSE;
-BOOL BleReportPosEn = TRUE;
-#endif
-
-
-
 void TIM4_Init( uint16_t arr, uint16_t psc )
 {
     TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure = { 0 };
@@ -89,8 +61,6 @@ void TIM4_IRQHandler( void )
 {
     if( TIM_GetITStatus( TIM4, TIM_IT_Update ) != RESET )
     {
-        //g_u16_timer_out++;
-        //video_process();
         TIM_ClearITPendingBit( TIM4, TIM_IT_Update );
     }
 }
@@ -131,28 +101,24 @@ void TIM3_IRQHandler( void )
     if( TIM_GetITStatus( TIM3, TIM_IT_Update ) != RESET )
     {
         //timems++;
-        //video_process(); //sea debug
         ms933x_media_service();
-        //key_service();
-        //AdcKeyScanAndProcess();
-        //osd_service();
+
         //printf("timems= %d\n",timems);
-        //g_u16_timer_out++; //sea
         TIM_ClearITPendingBit( TIM3, TIM_IT_Update );
     }
 }
 
 
-void IICTouchInit()
+void ProcessEventInit()
 {
-  //娉ㄥ唽浜嬩欢澶勭悊鍑芥暟
+  //注册事件处理函数
   TaskID = TMOS_ProcessEventRegister(Task_ProcessEvent);
-  //澶嶄綅鑺墖
+  //
   InitChipStartTask();
-  //GioInterruptFlag = FALSE;
+
   //TIM3_Init( 100-1, 9600-1 ); //10ms
 
-  //TIM3_Init( 500-1, 9600-1 ); //50ms
+  TIM3_Init( 500-1, 9600-1 ); //50ms
 
 //  TIM3_Init( 40, SystemCoreClock / 1018 - 1 );
 }
@@ -163,7 +129,6 @@ static UINT16 Task_ProcessEvent( UINT8 task_id, UINT16 events )
     {
       //USART1_ReceData();
       //printf("[EVENT]: HDMI_RX_DET\n");
-      //video_process();
       //ms933x_media_service();
       events ^= HDMI_RX_DET;
       tmos_start_task(task_id, HDMI_RX_DET, PERIO_10ms ); //sea
@@ -175,8 +140,7 @@ static UINT16 Task_ProcessEvent( UINT8 task_id, UINT16 events )
     if(events & TEMPTURE_DET)
     {
       //printf("[EVENT]: TEMPTURE_DET\n");
-      //sgm452_T6710_Proc();
-      //sgm452_T1826_Proc();
+      sgm452_Proc();
       events ^= TEMPTURE_DET;
       tmos_start_task(task_id, TEMPTURE_DET, PERIO_500ms );
       goto OUT_FUMC;
@@ -212,184 +176,21 @@ OUT_FUMC:
 
 void InitChipStartTask()
 {
-  enable_INT_irq = FALSE;
-  enable_ESD_check = FALSE;
-  //tmos_stop_task(TaskID, CHECK_TOUCH_INT_EVT);
-
-//ms1826a chip setting
-  //MS1826A_IIC_Init();
-  //printf("[task]: MS1826A iic start.\n");
-
 //ms933x chip setting
   //libs auto write iic address 0xB2, no need set it
   ms933x_init();
-  //tmos_start_task(TaskID, HDMI_RX_DET, PERIO_10ms );
-  //printf("[task]: ms933x start.\n");
+  tmos_start_task(TaskID, HDMI_RX_DET, PERIO_10ms );
+  printf("[task]: ms933x start.\n");
 
 //sgm452 chip setting
-  //sgm452_GPIO_I2cChannel_Init();
-  //tmos_start_task(TaskID, TEMPTURE_DET, PERIO_500ms );
-  //printf("[task]: SGM452 start.\n");
+  sgm452_GPIO_I2cChannel_Init();
+  tmos_start_task(TaskID, TEMPTURE_DET, PERIO_500ms );
+  printf("[task]: SGM452 start.\n");
 
 //sgm832 chip setting
   //sgm832_GPIO_I2cChannel_Init();
   //tmos_start_task(TaskID, POWER_DET, PERIO_800ms );
   //printf("[task]: SGM832 start.\n");
 
-//keyADC setting
-  //KeyADC_GPIO_Init();
-  //tmos_start_task(TaskID, KEY_ADC_DET, PERIO_50ms );
-  //printf("[GPIO]: KeyADC start.\n");
-
-//Led setting
-  //LED_GPIO_Init();
-//CH444G setting
-  //CH444G_GPIO_Init();
-  //printf("[GPIO]: LED & CH444G start.\n");
-
   Delay_Ms(80);
-
-  //(200);
-  {
-    ChipType = CHIP_TYPE_MS1826A;
-    //sea fix ms1826A_TaskStart();
-    //printf("[task]: Ms1826a start.\n");
-    //printf("[IICADDR]: IIC Address:%x\n", GT_CMD_WR);
-    //tmos_start_task(TaskID, CHECK_TOUCH_INT_EVT, 2 );
-  }
-
-  //EXTI_InitTypeDef EXTI_InitStructure = { 0 };
-
-  /* Enable GPIOB clock */
-  //RCC_APB2PeriphClockCmd( RCC_APB2Periph_AFIO, ENABLE );
-  //GPIO_EXTILineConfig( GPIO_PortSourceGPIOA, GPIO_PinSource1 );
-  //EXTI_InitStructure.EXTI_Line = EXTI_Line1;
-  //EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Event;
-  //EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Falling;
-  //EXTI_InitStructure.EXTI_LineCmd = ENABLE;
-  //EXTI_Init( &EXTI_InitStructure );
-
-  //EXTI->INTENR |= EXTI_INTENR_MR1;
-
-   //enable_INT_irq = TRUE;
-   //enable_ESD_check = TRUE;
 }
-
-//fix todo list:鏌ヨ鎵�鏈夌殑iic 璁惧鍦板潃
-BOOL SearchAddress( UINT8 num )
-{
-  u8 ret1=0;
-  u8 ret2=0;
-  while(--num)
-  {
-    //#define
-    u8 GT_CMD_WR = 0x78;
-    //if(Check_I2C_Address(GT_CMD_WR)) //fix
-    ret1 = IIC_Check_Address(GT_CMD_WR);
-    ret2 = IIC2_Check_Address(GT_CMD_WR);
-    if(ret1 && ret2)
-    {
-        //printf("[IICADDR]: IIC Address Success:%x\n", GT_CMD_WR);
-        return TRUE;
-    }
-    else
-    {
-      if(!ret1)
-      {
-        //printf("[IICADDR]: IIC Address fail !!!");
-      }
-      if(!ret2)
-      {
-        //printf("[IICADDR]: IIC2 Address fail !!!");
-      }
-      return FALSE;
-
-    }
-    // if(IIC2_Check_Address(GT_CMD_WR))
-    // {
-    //     printf("[IICADDR]: IIC2 Address Success:%x\n", GT_CMD_WR);
-    //     return TRUE;
-    // }
-  }
-  return FALSE;
-}
-
-// static void SetTouchEvent()
-// {
-//   if(ChipType == CHIP_TYPE_MS1826A)
-//   {
-//      ms1826A_SetIntEvent();
-//   }
-// }
-
-//void CheckTouchInt()
-//{
-//    if( (EXTI_GetFlagStatus( EXTI_Line1 ) != RESET) && (!DisableDigiterInterface))
-//    {
-//        if(enable_INT_irq)
-//        {
-//          // if(!IsUsbBusy())
-//          // {
-//          //   SetTouchEvent();
-//          // }
-//        }
-//
-//        EXTI_ClearFlag( EXTI_Line1 );
-//
-//        return;
-//    }
-//}
-
-#if 1//UART_ENABLE
-// void USART4_SendData(PUINT8 txbuf, UINT16 length)
-// {
-//     UINT8 TxCnt = 0;
-
-//     while(TxCnt < length)
-//     {
-//         //printf("TxCnt:%d\r\n", TxCnt);
-//         USART_SendData(USART2, txbuf[TxCnt++]);
-//         while(USART_GetFlagStatus(USART2, USART_FLAG_TXE) == RESET)
-//         {
-//             /* waiting for sending finish */
-//         }
-//     //        while(USART_GetFlagStatus(USART2, USART_FLAG_RXNE) == RESET)
-//     //        {
-//     //            /* waiting for receiving finish */
-//     //        }
-//     //        RxBuffer[RxCnt++] = (USART_ReceiveData(USART2));
-
-//         //printf("TxCnt:%d\r\n", TxCnt);
-//     }
-// }
-
-void CheckUsbStatus()
-{
-  // if(DeviceMode == DEVICE_MODE_MULTITOUCH)
-  // {
-  //     USBFS_EP1_Buf[0] = 0;
-  //     USBFSD->UEP1_TX_LEN  = 0;
-  //     USBFSD->UEP1_CTRL_H = (USBFSD->UEP1_CTRL_H & ~ USBFS_UEP_T_RES_MASK) | USBFS_UEP_T_RES_ACK;
-  // }
-  // else
-  // {
-  //     USBFSD->UEP3_TX_LEN  = 0;
-  //     USBFSD->UEP3_CTRL_H = (USBFSD->UEP3_CTRL_H & ~ USBFS_UEP_T_RES_MASK) | USBFS_UEP_T_RES_ACK;
-  // }
-  // fill_picture(0x0F);
-}
-
-__attribute__((section(".highcode")))
-UINT16 PosReverse(UINT16 pos, UINT16 res)
-{
-  if(pos < res)
-    pos = res - pos;
-  else
-    pos  = 0;
-
-  return pos;
-}
-
-
-
-#endif

+ 10 - 24
EVT/EXAM/CodePro/YJD-CH32V30X/src/src/main.c

@@ -14,6 +14,7 @@
 //#include "sgm452.h"
 //#include "sgm832.h"
 #include "uart_ht7315.h"
+#include "uart5.h"
 
 // void GPIOInit()
 // {
@@ -74,7 +75,7 @@ int main(void)
 {
     NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
     SystemCoreClockUpdate();
-    //tmos_init();
+    tmos_init();
 
     Delay_Init();
     //USART_Printf_Init(115200);
@@ -90,9 +91,9 @@ int main(void)
 #endif
     //CheckFlag();
 
-//**--[Uart2 Init]--//
-    //Uart2_Rs232_GPIO_Init();
-    //printf("1.[Uart2 Init]: Ok! \n");
+//**--[Uart5 Init]--//
+    Uart5_GPIO_Init();
+    printf("1.[Uart5 Init]: Ok! \n");
 
 //**--[Uart6710 Init]--//
     //Uart_u6710_GPIO_Init();
@@ -104,34 +105,21 @@ int main(void)
     //USB_Sleep_Wakeup_CFG( );
     //printf("2.[Usb Init]: Ok! \n");
 
-//**--[IIC Init]--//
-    IICTouchInit();
-    printf("3.[IIC Init]: Ok! \n");
-
-//**--[Display Init]--//
-    //OLED_Init();
-    //OLED_DisplayTest();
-    //printf("4.[Display Init]: Null! \n");
+//**--[Process Event Init]--//
+    ProcessEventInit();
+    printf("3.[Process Event Init]: Ok! \n");
 
 //**--[SGM452 Init]--//
     //sgm452_GPIO_I2cChannel_Init();
-    //sgm452_T6710_Proc();
-    //sgm452_T1826_Proc();
+    //sgm452_Proc();
     //printf("5.[SGM452 Init]: Ok! \n");
 
 //**--[sgm832 Init]--//
     //sgm832_GPIO_I2cChannel_Init();
     //printf("6.[SGM832 Init]: Ok! \n");
 
-//**--[Key Init]--//
-    //KeyADC_GPIO_Init();
-    //KeyLed_GPIO_Init();
-    //printf("7.[Key Init]: Ok! \n");
-
     //IWDG_Feed_Init( IWDG_Prescaler_16, 3000 );
 
-    //UINT8 InitFlag = 0xAA;
-    //USART4_SendData(&InitFlag, 1);
 //**--[GG]--//
 
     //printf("8.[IIC_Slave Init]: Ok! \n");
@@ -141,8 +129,6 @@ int main(void)
     while(1)
     {
         //IWDG_ReloadCounter();   //Feed dog
-        //TMOS_SystemProcess();
-        ms933x_media_service();
-        Delay_Ms(20);
+        TMOS_SystemProcess();
     }
 }

+ 0 - 96
EVT/EXAM/CodePro/YJD-CH32V30X/src/src/mculib_common.c

@@ -1,7 +1,5 @@
 #include "mculib_common.h"
 #include "ch32v30x.h"
-#include "IIC_Software.h"
-#include "IIC2_Software.h"
 
 void mculib_chip_reset(void)
 {
@@ -22,97 +20,3 @@ void mculib_delay_us(UINT8 u8_us)
 {
     Delay_Us(u8_us);
 }
-
-
-// 16-bit index for macrosilicon chip
-//UINT8 mculib_i2c_read_16bidx8bval(UINT8 u8_address, UINT16 u16_index)
-//{
-//    UINT8 rBuf = 0;
-//
-//    IIC_Read_16bit_LE_MultiBytes(u8_address, u16_index, &rBuf, 1);
-//
-//    return rBuf;
-//}
-
-//BOOL mculib_i2c_write_16bidx8bval(UINT8 u8_address, UINT16 u16_index, UINT8 u8_value)
-//{
-//  return IIC_Send_16bit_LE_MultiBytes(u8_address, u16_index, &u8_value, 1);
-//}
-
-//VOID mculib_i2c_burstread_16bidx8bval(UINT8 u8_address, UINT16 u16_index, UINT16 u16_length, UINT8 *pu8_value)
-//{
-//  IIC_Read_16bit_LE_MultiBytes(u8_address, u16_index, pu8_value, u16_length);
-//}
-
-//VOID mculib_i2c_burstwrite_16bidx8bval(UINT8 u8_address, UINT16 u16_index, UINT16 u16_length, UINT8 *pu8_value)
-//{
-//    if(u8_address == IIC_ADDR_MS1826)
-//        IIC2_Send_16bit_LE_MultiBytes(u8_address, u16_index, pu8_value, u16_length);
-//    else
-//        {
-//            IIC_Send_16bit_LE_MultiBytes(u8_address, u16_index, pu8_value, u16_length);
-//        }
-//}
-
-BOOL mculib_i2c_write_8bidx16bval(UINT8 u8_address, UINT8 u8_index, UINT16 u16_value)
-{
-    UINT8 rBuf = 0;
-    if(u8_address == IIC_ADDR_MS1826)
-        IIC2_Read_16bit_LE_MultiBytes(u8_address, u8_index, &rBuf, 1);
-    else
-        IIC_Read_16bit_LE_MultiBytes(u8_address, u8_index, &rBuf, 1);
-    return rBuf;
-}
-
-
-//********************************************************************************************
-//ms93xxx common function
-//********************************************************************************************
-// Set I2C Read/Write speed, it is best to set speed of HD DDC at about 20KHz, 否则可能会影响通信质量
-// u8_i2c_speed: I2C_SPEED_20K(0), I2C_SPEED_100K(1)
-//fix todo: need fix to set i2c speed
-//void  mculib_i2c_set_speed(UINT8 u8_i2c_speed)
-//{
-//  //need to set i2c speed
-//  if(u8_i2c_speed == 0)
-//  {
-//    u8_i2c_speed=0;
-//  }
-//  else if (u8_i2c_speed == 1)
-//  {
-//    u8_i2c_speed=1;
-//  }
-//}
-//8-bit index for HD EDID block 2-3 读取接口
-//如果用户无需过 HD CTS 认证,此函数实现可为空
-//BOOL mculib_i2c_write_blank(UINT8 u8_address, UINT8 u8_index)
-//{
-//  return 0;
-//}
-
-//void mculib_i2c_burstread_8bidx8bval(UINT8 u8_address, UINT8 u8_index, UINT8 u8_length, UINT8 *pu8_value)
-//{
-//    if(u8_address == IIC_ADDR_MS1826)
-//        IIC2_Read_8bitMultiBytes(u8_address, u8_index, pu8_value, u8_length);
-//    else
-//        IIC_Read_8bitMultiBytes(u8_address, u8_index, pu8_value, u8_length);
-//}
-
-//标准字节读写接口
-//UINT8 mculib_i2c_read_8bidx8bval(UINT8 u8_address, UINT8 u8_index)
-//{
-//  UINT8 rBuf = 0;
-//  if(u8_address == IIC_ADDR_MS1826)
-//    IIC2_Read_8bitMultiBytes(u8_address, u8_index, &rBuf, 1);
-//  else
-//    IIC_Read_8bitMultiBytes(u8_address, u8_index, &rBuf, 1);
-//  return rBuf;
-//}
-
-//BOOL  mculib_i2c_write_8bidx8bval(UINT8 u8_address, UINT8 u8_index, UINT8 u8_value)
-//{
-//  if(u8_address == IIC_ADDR_MS1826)
-//    return IIC2_Send_8bitMultiBytes(u8_address, u8_index, &u8_value, 1);
-//  else
-//    return IIC_Send_8bitMultiBytes(u8_address, u8_index, &u8_value, 1);
-//}

+ 6 - 6
EVT/EXAM/CodePro/YJD-CH32V30X/src/src/ms933x/ms933x_app.c

@@ -93,9 +93,6 @@ extern void mculib_i2c_init(void);
 
 #define DEBUG_EDID_FILE_SAVE    (0)
 
-//
-static VIDEOTIMING_T g_st_hdmi_in_timing;
-
 #define TMDS_CLK_VALID(clk)           (clk >= 500)  //5MHz
 #define TMDS_CLK_MARGIN(clk, clk_tmp) (xabs(clk, clk_tmp) > (clk / (100 / 5))) //5%
 
@@ -120,14 +117,17 @@ static UINT8 g_u8_hdcp_repeater_support = TRUE; //user_define must enable this f
 //for debug mode
 static UINT8 g_u8_tx_chn_enable_flag = SYS_HDMI_TX_CHN_EN;//bit0: chn0 enable, bit1: chn1 enable...
 static UINT8 g_u8_tx_hpd_test_flag = 0x00;//bit0: chn0 force output, bit1: chn1 force output...
-static UINT8 g_u8_rx_hpd_test_flag = TRUE;//FALSE; //fixed set RX HPD true and rx edid use default edid
+static UINT8 g_u8_rx_hpd_test_flag = FALSE; //fixed set RX HPD true and rx edid use default edid
 //static UINT8 g_u8_hdmi_rxpll_error_counter_test_flag = FALSE; //enable hdmi rxpll error counter serivce
 //static UINT8 g_u8_hdmi_tx_shell_timing_stable_test_flag = FALSE; //enable hdmi tx shell timing stable service
 
-#define MS933X_APP_LOG1_ENABLE              (1) //app detailed log printf enable
+#define MS933X_APP_LOG1_ENABLE              (0) //app detailed log printf enable
 
 static UINT8 g_u8_hdmi_in_timing_log_enable = MS933X_APP_LOG1_ENABLE; //enable hdmi input timing log printf.
 
+#if MS933X_APP_LOG1_ENABLE
+static VIDEOTIMING_T g_st_hdmi_in_timing;
+#endif
 
 #define RXPLL_ERROR_MAX (0x20)
 #define RXPLL_ERROR_MID (0x10)
@@ -4304,7 +4304,7 @@ void ms933x_media_service(void)
 
     sys_error_service();
 
-    printf_input_timing();
+    //printf_input_timing();
 }
 
 #if MS933X_HDMI_NET_CABLE_TX_ENABLE

+ 58 - 0
EVT/EXAM/CodePro/YJD-CH32V30X/src/src/sgm452_temperature/sgm452.c

@@ -0,0 +1,58 @@
+#include "sgm452.h"
+#include "uart5.h"
+
+/******************************************************************************************************/
+/******************************************************************************************************/
+/******************************************************************************************************/
+
+
+
+/******************************************************************************************************/
+// [2].software IIC1 to SGM452
+void SGM452_WriteCmd(u8 cmd)
+{
+    IIC3_Send_8bitMultiBytes(SGM452_I2C_ADDR, 0x00, &cmd, 1);
+}
+
+u16 SGM452_ReadTemperature(void)
+{
+    u16 rBuf = 0;
+    u8 ret = IIC3_Read_8bitMultiBytes(SGM452_I2C_ADDR, 0x00, (u8*)&rBuf, 2);
+
+    if(ret)
+    {
+        rBuf = rBuf << 4; // 12-bit * 0.0625
+        //printf("Read temperature HEX: 0x%04x\n", rBuf);
+        if (rBuf & 0x800) {
+            rBuf |= 0xF000; // Sign-extend for negative temperature
+            rBuf = ~rBuf + 1;
+            //float temperature = rBuf * 0.0625;
+            //printf("Temper: -%.1f C\n", temperature);
+        }
+        else {
+            //float temperature = rBuf / 16.0;
+            //float temperature = rBuf * 0.0625;
+            //printf("Temper: %.1f C\n", temperature);
+        }
+        return rBuf;
+    }
+    else
+    {
+        printf("Read SGM452 failed\n");
+        return (-1);
+    }
+}
+
+void sgm452_GPIO_I2cChannel_Init(void)
+{
+    IIC3_sf_Init();
+}
+
+/**********************************************************************************/
+void sgm452_Proc(void)
+{
+    u16 rBuf = 0;
+    rBuf = SGM452_ReadTemperature();
+    SendUart5DataPacket(0x11, (u8*)&rBuf, sizeof(rBuf));
+    //printf("SGM452_ReadTemperature:%d\n", rBuf);
+}

+ 148 - 0
EVT/EXAM/CodePro/YJD-CH32V30X/src/src/uart5/uart5.c

@@ -0,0 +1,148 @@
+#include <string.h>
+#include "uart5.h"
+
+#define UART_BUFF_SIZE  1024
+u8 RxBuffer[UART_BUFF_SIZE] = {0};
+volatile u8 RxCnt = 0;
+volatile u8 Rxfinish = 0;
+
+char *pbuf;
+uint16_t len;
+
+void Uart5_GPIO_Init()
+{
+    GPIO_InitTypeDef GPIO_InitStructure = { 0 };
+    USART_InitTypeDef USART_InitStructure = { 0 };
+    NVIC_InitTypeDef NVIC_InitStructure = { 0 };
+
+    RCC_APB1PeriphClockCmd( RCC_APB1Periph_UART5, ENABLE );
+    RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOC, ENABLE );
+    RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOD, ENABLE );
+
+    RCC_APB2PeriphClockCmd( RCC_APB2Periph_AFIO, ENABLE );
+
+    /* UART5 TX-->C.12   RX-->D.2 */
+    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_12;
+    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
+    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;
+    GPIO_Init( GPIOC, &GPIO_InitStructure );
+
+    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2;
+    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;
+    GPIO_Init( GPIOD, &GPIO_InitStructure );
+
+    USART_InitStructure.USART_BaudRate = UART5_BAUDRATE;
+    USART_InitStructure.USART_WordLength = USART_WordLength_8b;
+    USART_InitStructure.USART_StopBits = USART_StopBits_1;
+    USART_InitStructure.USART_Parity = USART_Parity_No;
+    USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None;
+    USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx;
+
+    USART_Init( UART5, &USART_InitStructure );
+    USART_ITConfig( UART5, USART_IT_RXNE, ENABLE );
+
+    NVIC_InitStructure.NVIC_IRQChannel = UART5_IRQn;
+    NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 3;
+    NVIC_InitStructure.NVIC_IRQChannelSubPriority = 3;
+    NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
+    NVIC_Init(&NVIC_InitStructure);
+
+    USART_Cmd( UART5, ENABLE );
+}
+
+void USART5_SendData(PUINT8 txbuf, UINT16 length)
+{
+    UINT8 TxCnt = 0;
+
+    while(TxCnt < length)
+    {
+        //printf("TxCnt:%d\r\n", TxCnt);
+        USART_SendData(UART5, txbuf[TxCnt++]);
+        while(USART_GetFlagStatus(UART5, USART_FLAG_TXE) == RESET)
+        {
+            /* waiting for sending finish */
+        }
+//        while(USART_GetFlagStatus(UART5, USART_FLAG_RXNE) == RESET)
+//        {
+//            /* waiting for receiving finish */
+//        }
+//        RxBuffer[RxCnt++] = (USART_ReceiveData(UART5));
+
+        //PRINT("TxCnt:%d\r\n", TxCnt);
+    }
+}
+
+u16 crc16(u8* data_p, u16 length){
+    u8 x;
+    u16 crc = 0xFFFF;
+
+    while (length--){
+        x = crc >> 8 ^ *data_p++;
+        x ^= x>>4;
+        crc = (crc << 8) ^ ((u16)(x << 12)) ^ ((u16)(x <<5)) ^ ((u16)x);
+    }
+    return crc;
+}
+
+void SendUart5DataPacket(u8 cmd, u8* data, u8 len)
+{
+    UART2_PACKAGE_TypeDef packet;
+
+    // 设置数据包内容
+    packet.Head1 = 0x5A;
+    packet.Head2 = 0xA5;
+    packet.Len = sizeof(packet);
+    packet.Cmd = cmd;
+    // set data
+    memset(packet.Data, 0, DATA_LEN);
+
+    for (int i = 0; i < len; i++) {
+        packet.Data[i] = data[i];
+    }
+
+    // 计算并设置 CRC16 校验值
+    packet.CRC16 = crc16((u8*)&packet, sizeof(packet)-(sizeof(packet.CRC16)+sizeof(packet.End)));
+    //printf("%04x\n", packet.CRC16);
+    packet.End = 0xFF;
+
+    // send data
+    USART5_SendData((PUINT8)&packet, sizeof(packet));
+}
+
+//获取接收到的data and length
+char *get_rebuff(uint16_t *len)
+{
+    *len = RxCnt;
+    return (char *)&RxBuffer;
+}
+
+//clean data buffer
+void clean_rebuff(void)
+{
+    uint16_t i = UART_BUFF_SIZE + 1;
+    RxCnt = 0;
+    while (i)
+        RxBuffer[--i]=0;
+}
+
+void USART5_IRQHandler(void) __attribute__((interrupt("WCH-Interrupt-fast")));
+void USART5_IRQHandler(void)
+{
+    if(RxCnt < 5)
+    {
+        if(USART_GetITStatus(UART5, USART_IT_RXNE) != RESET)
+        {
+            RxBuffer[RxCnt] = USART_ReceiveData(UART5);
+            RxCnt ++;
+
+            pbuf = get_rebuff(&len);
+            clean_rebuff();
+        }
+
+    }
+    else
+    {
+        RxCnt=0;
+        USART_ClearITPendingBit(UART5, USART_IT_RXNE);
+    }
+}

Bu fark içinde çok fazla dosya değişikliği olduğu için bazı dosyalar gösterilmiyor