diff --git a/.cproject b/.cproject
index b96cce2..b900dfb 100644
--- a/.cproject
+++ b/.cproject
@@ -23,7 +23,8 @@
-
+
+
@@ -97,10 +98,10 @@
-
-
+
+
@@ -128,7 +129,8 @@
-
+
+
diff --git a/.settings/stm32cubeide.project.prefs b/.settings/stm32cubeide.project.prefs
index 565d7fc..a9f6b79 100644
--- a/.settings/stm32cubeide.project.prefs
+++ b/.settings/stm32cubeide.project.prefs
@@ -1,3 +1,3 @@
-8DF89ED150041C4CBC7CB9A9CAA90856=970C2B927C46598E88F13155941494D3
-DC22A860405A8BF2F2C095E5B6529F12=0CD1751AC27020CB572731DEAAEBD8E6
+8DF89ED150041C4CBC7CB9A9CAA90856=763711B08F1ABC1A77FC8FA1A08B45FA
+DC22A860405A8BF2F2C095E5B6529F12=763711B08F1ABC1A77FC8FA1A08B45FA
eclipse.preferences.version=1
diff --git a/.vscode/c_cpp_properties.json b/.vscode/c_cpp_properties.json
new file mode 100644
index 0000000..6a8db16
--- /dev/null
+++ b/.vscode/c_cpp_properties.json
@@ -0,0 +1,92 @@
+{
+ "configurations": [
+ {
+ "name": "app",
+ "includePath": [
+ "Drivers/STM32F4xx_HAL_Driver/Inc",
+ "Drivers/CMSIS/Include",
+ "./",
+ "./Core/Inc",
+ "Drivers/CMSIS/Device/ST/STM32F4xx/Include/"
+ ],
+ "defines": [
+ "USE_HAL_DRIVER",
+ "STM32F407xx",
+ "__CC_ARM",
+ "__arm__",
+ "__align(x)=",
+ "__ALIGNOF__(x)=",
+ "__alignof__(x)=",
+ "__asm(x)=",
+ "__forceinline=",
+ "__restrict=",
+ "__global_reg(n)=",
+ "__inline=",
+ "__int64=long long",
+ "__INTADDR__(expr)=0",
+ "__irq=",
+ "__packed=",
+ "__pure=",
+ "__smc(n)=",
+ "__svc(n)=",
+ "__svc_indirect(n)=",
+ "__svc_indirect_r7(n)=",
+ "__value_in_regs=",
+ "__weak=",
+ "__writeonly=",
+ "__declspec(x)=",
+ "__attribute__(x)=",
+ "__nonnull__(x)=",
+ "__register=",
+ "__breakpoint(x)=",
+ "__cdp(x,y,z)=",
+ "__clrex()=",
+ "__clz(x)=0U",
+ "__current_pc()=0U",
+ "__current_sp()=0U",
+ "__disable_fiq()=",
+ "__disable_irq()=",
+ "__dmb(x)=",
+ "__dsb(x)=",
+ "__enable_fiq()=",
+ "__enable_irq()=",
+ "__fabs(x)=0.0",
+ "__fabsf(x)=0.0f",
+ "__force_loads()=",
+ "__force_stores()=",
+ "__isb(x)=",
+ "__ldrex(x)=0U",
+ "__ldrexd(x)=0U",
+ "__ldrt(x)=0U",
+ "__memory_changed()=",
+ "__nop()=",
+ "__pld(...)=",
+ "__pli(...)=",
+ "__qadd(x,y)=0",
+ "__qdbl(x)=0",
+ "__qsub(x,y)=0",
+ "__rbit(x)=0U",
+ "__rev(x)=0U",
+ "__return_address()=0U",
+ "__ror(x,y)=0U",
+ "__schedule_barrier()=",
+ "__semihost(x,y)=0",
+ "__sev()=",
+ "__sqrt(x)=0.0",
+ "__sqrtf(x)=0.0f",
+ "__ssat(x,y)=0",
+ "__strex(x,y)=0U",
+ "__strexd(x,y)=0",
+ "__strt(x,y)=",
+ "__swp(x,y)=0U",
+ "__usat(x,y)=0U",
+ "__wfe()=",
+ "__wfi()=",
+ "__yield()=",
+ "__vfp_status(x,y)=0"
+ ],
+ "intelliSenseMode": "${default}"
+ }
+ ],
+ "version": 4
+}
\ No newline at end of file
diff --git a/.vscode/settings.json b/.vscode/settings.json
index cdd1d6e..6d51097 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -17,6 +17,10 @@
"stm32f4xx_hal.h": "c",
"stm32f4xx_hal_conf.h": "c",
"marco.h": "c",
- "stdio.h": "c"
+ "stdio.h": "c",
+ "cstdint": "c",
+ "stm32f4xx_hal_rcc.h": "c",
+ "stm32f4xx_hal_def.h": "c",
+ "stm32_hal_legacy.h": "c"
}
}
\ No newline at end of file
diff --git a/STM32F407VETX_FLASH.ld b/STM32F407VETX_FLASH.ld
index 0df2e70..1280f6a 100644
--- a/STM32F407VETX_FLASH.ld
+++ b/STM32F407VETX_FLASH.ld
@@ -39,7 +39,7 @@ ENTRY(Reset_Handler)
/* Highest address of the user mode stack */
_estack = ORIGIN(RAM) + LENGTH(RAM); /* end of "RAM" Ram type memory */
-_Min_Heap_Size = 0x400; /* required amount of heap */
+_Min_Heap_Size = 0x2000; /* required amount of heap */
_Min_Stack_Size = 0x1000; /* required amount of stack */
/* Memories definition */
diff --git a/robotic_core_xy dap.cfg b/robotic_core_xy dap.cfg
index 7166ee8..b41d541 100644
--- a/robotic_core_xy dap.cfg
+++ b/robotic_core_xy dap.cfg
@@ -20,13 +20,12 @@ set ENABLE_LOW_POWER 1
set STOP_WATCHDOG 1
# STlink Debug clock frequency
-set CLOCK_FREQ 8000
+set CLOCK_FREQ 4000
# Reset configuration
-# use hardware reset, connect under reset
-# connect_assert_srst needed if low power mode application running (WFI...)
-reset_config srst_only srst_nogate connect_assert_srst
-set CONNECT_UNDER_RESET 1
+# use hardware reset
+reset_config srst_only srst_nogate
+set CONNECT_UNDER_RESET 0
set CORE_RESET 0
# ACCESS PORT NUMBER
diff --git a/robotic_core_xy.ioc b/robotic_core_xy.ioc
index 1793da7..3bd9f99 100644
--- a/robotic_core_xy.ioc
+++ b/robotic_core_xy.ioc
@@ -139,9 +139,9 @@ ProjectManager.DeviceId=STM32F407VETx
ProjectManager.FirmwarePackage=STM32Cube FW_F4 V1.27.1
ProjectManager.FreePins=true
ProjectManager.HalAssertFull=true
-ProjectManager.HeapSize=0x400
+ProjectManager.HeapSize=0x2000
ProjectManager.KeepUserCode=true
-ProjectManager.LastFirmware=false
+ProjectManager.LastFirmware=true
ProjectManager.LibraryCopy=1
ProjectManager.MainLocation=Core/Src
ProjectManager.NoMain=false
@@ -149,10 +149,13 @@ ProjectManager.PreviousToolchain=STM32CubeIDE
ProjectManager.ProjectBuild=false
ProjectManager.ProjectFileName=robotic_core_xy.ioc
ProjectManager.ProjectName=robotic_core_xy
+ProjectManager.ProjectStructure=
ProjectManager.RegisterCallBack=
ProjectManager.StackSize=0x1000
ProjectManager.TargetToolchain=STM32CubeIDE
ProjectManager.ToolChainLocation=
+ProjectManager.UAScriptAfterPath=
+ProjectManager.UAScriptBeforePath=
ProjectManager.UnderRoot=true
ProjectManager.functionlistsort=1-SystemClock_Config-RCC-false-HAL-false,2-MX_GPIO_Init-GPIO-false-HAL-true,3-MX_USART1_UART_Init-USART1-false-HAL-true,4-MX_TIM3_Init-TIM3-false-HAL-true,5-MX_CRC_Init-CRC-false-HAL-true,6-MX_RNG_Init-RNG-false-HAL-true,7-MX_TIM7_Init-TIM7-false-HAL-true,8-MX_SPI1_Init-SPI1-false-HAL-true,9-MX_TIM6_Init-TIM6-false-HAL-true,10-MX_TIM1_Init-TIM1-false-HAL-true,11-MX_CAN1_Init-CAN1-false-HAL-true,12-MX_USART2_UART_Init-USART2-false-HAL-true,13-MX_USART3_UART_Init-USART3-false-HAL-true
RCC.48MHZClocksFreq_Value=48000000
@@ -236,3 +239,4 @@ VP_TIM6_VS_ClockSourceINT.Signal=TIM6_VS_ClockSourceINT
VP_TIM7_VS_ClockSourceINT.Mode=Enable_Timer
VP_TIM7_VS_ClockSourceINT.Signal=TIM7_VS_ClockSourceINT
board=custom
+isbadioc=false
diff --git a/robotic_core_xy.launch b/robotic_core_xy.launch
index aea2d51..0027e0e 100644
--- a/robotic_core_xy.launch
+++ b/robotic_core_xy.launch
@@ -28,11 +28,11 @@
-
+
-
+
-
+
@@ -70,15 +70,15 @@
-
+
-
+
-
+
diff --git a/usrc/main.cpp b/usrc/main.cpp
index 366dca6..2353eab 100644
--- a/usrc/main.cpp
+++ b/usrc/main.cpp
@@ -5,22 +5,26 @@
#include "main.h"
#include "project.hpp"
-#include "sdk\chip\iflytop_no_os.h"
-#include "usart.h"
+//
+#include "sdk/hal/zhal.hpp"
namespace iflytop {
Main gmain;
};
using namespace iflytop;
void Main::run() {
- // for (size_t i = 0; i < 100; i++) {
- // uint8_t c = '1';
- // HAL_UART_Transmit(&DEBUG_UART, &c, 1, 100);
- // }
iflytop_no_os_cfg_t cfg = {
.delayhtim = &DELAY_US_TIMER,
.debuguart = &DEBUG_UART,
};
iflytop_no_os_init(&cfg);
printf("Hello World!\r\n");
+
+ DEBUG_LIGHT_GPIO.initAsOutput(true);
+
+ ZHAL_CORE_REG(300, { DEBUG_LIGHT_GPIO.toggleState(); });
+
+ while (1) {
+ ZHALCORE::getInstance()->loop();
+ }
}