From a64195a99ad6319909065e828422e45fe7d81953 Mon Sep 17 00:00:00 2001 From: SEEKFREE_BUDING <2289331269@qq.com> Date: Fri, 21 Jun 2024 17:24:15 +0800 Subject: [PATCH] =?UTF-8?q?V3.2.13=20=20=20=20=20=20=20=20=20=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=E4=B8=80=E4=B8=AA=E5=BE=AE=E7=A7=92=E5=BB=B6=E6=97=B6?= =?UTF-8?q?=E5=87=BD=E6=95=B0=20=E8=AF=A5=E5=BB=B6=E6=97=B6=E5=87=BD?= =?UTF-8?q?=E6=95=B0=E4=B8=BA=E6=99=AE=E9=80=9A=E5=BB=B6=E6=97=B6=20?= =?UTF-8?q?=E9=9D=9E=E4=B8=AD=E6=96=AD=E5=BB=B6=E6=97=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../E01_gpio_demo/libraries/doc/version.txt | 2 ++ .../libraries/zf_driver/zf_driver_delay.c | 18 +++++++++++++++++- .../libraries/zf_driver/zf_driver_delay.h | 1 + .../E02_uart_demo/libraries/doc/version.txt | 2 ++ .../libraries/zf_driver/zf_driver_delay.c | 18 +++++++++++++++++- .../libraries/zf_driver/zf_driver_delay.h | 1 + Example/E03_adc_demo/libraries/doc/version.txt | 2 ++ .../libraries/zf_driver/zf_driver_delay.c | 18 +++++++++++++++++- .../libraries/zf_driver/zf_driver_delay.h | 1 + Example/E04_pwm_demo/libraries/doc/version.txt | 2 ++ .../libraries/zf_driver/zf_driver_delay.c | 18 +++++++++++++++++- .../libraries/zf_driver/zf_driver_delay.h | 1 + Example/E05_pit_demo/libraries/doc/version.txt | 2 ++ .../libraries/zf_driver/zf_driver_delay.c | 18 +++++++++++++++++- .../libraries/zf_driver/zf_driver_delay.h | 1 + .../E06_exit_demo/libraries/doc/version.txt | 2 ++ .../libraries/zf_driver/zf_driver_delay.c | 18 +++++++++++++++++- .../libraries/zf_driver/zf_driver_delay.h | 1 + .../E07_encoder_demo/libraries/doc/version.txt | 2 ++ .../libraries/zf_driver/zf_driver_delay.c | 18 +++++++++++++++++- .../libraries/zf_driver/zf_driver_delay.h | 1 + .../E08_eeprom_demo/libraries/doc/version.txt | 2 ++ .../libraries/zf_driver/zf_driver_delay.c | 18 +++++++++++++++++- .../libraries/zf_driver/zf_driver_delay.h | 1 + .../E09_timer_demo/libraries/doc/version.txt | 2 ++ .../libraries/zf_driver/zf_driver_delay.c | 18 +++++++++++++++++- .../libraries/zf_driver/zf_driver_delay.h | 1 + .../libraries/doc/version.txt | 2 ++ .../libraries/zf_driver/zf_driver_delay.c | 18 +++++++++++++++++- .../libraries/zf_driver/zf_driver_delay.h | 1 + .../libraries/doc/version.txt | 2 ++ .../libraries/zf_driver/zf_driver_delay.c | 18 +++++++++++++++++- .../libraries/zf_driver/zf_driver_delay.h | 1 + .../libraries/doc/version.txt | 2 ++ .../libraries/zf_driver/zf_driver_delay.c | 18 +++++++++++++++++- .../libraries/zf_driver/zf_driver_delay.h | 1 + .../libraries/doc/version.txt | 2 ++ .../libraries/zf_driver/zf_driver_delay.c | 18 +++++++++++++++++- .../libraries/zf_driver/zf_driver_delay.h | 1 + .../libraries/doc/version.txt | 2 ++ .../libraries/zf_driver/zf_driver_delay.c | 18 +++++++++++++++++- .../libraries/zf_driver/zf_driver_delay.h | 1 + Example/E15_fft_demo/libraries/doc/version.txt | 2 ++ .../libraries/zf_driver/zf_driver_delay.c | 18 +++++++++++++++++- .../libraries/zf_driver/zf_driver_delay.h | 1 + .../libraries/doc/version.txt | 2 ++ .../libraries/zf_driver/zf_driver_delay.c | 18 +++++++++++++++++- .../libraries/zf_driver/zf_driver_delay.h | 1 + 48 files changed, 320 insertions(+), 16 deletions(-) diff --git a/Example/E01_gpio_demo/libraries/doc/version.txt b/Example/E01_gpio_demo/libraries/doc/version.txt index 0f25d7e..68afc86 100644 --- a/Example/E01_gpio_demo/libraries/doc/version.txt +++ b/Example/E01_gpio_demo/libraries/doc/version.txt @@ -1,3 +1,5 @@ +V3.2.13 + 新增一个微秒延时函数 该延时函数为普通延时 非中断延时 V3.2.12 修复核心1运行异常的问题 修复凌瞳亮度调节函数名称异常的bug diff --git a/Example/E01_gpio_demo/libraries/zf_driver/zf_driver_delay.c b/Example/E01_gpio_demo/libraries/zf_driver/zf_driver_delay.c index e6a35df..3667547 100644 --- a/Example/E01_gpio_demo/libraries/zf_driver/zf_driver_delay.c +++ b/Example/E01_gpio_demo/libraries/zf_driver/zf_driver_delay.c @@ -60,6 +60,8 @@ IFX_INTERRUPT(stm1_isr, 0, IFX_INTPRIO_STM1_SR0) IfxStm_clearCompareFlag(&MODULE_STM1, IfxStm_Comparator_0); stm1_isr_flag = 0; } + + //------------------------------------------------------------------------------------------------------------------- // 函数简介 system延时函数 // 参数说明 time 延时一轮的时间(单位为纳秒,可设置范围0-20000000) @@ -105,9 +107,23 @@ void system_delay_10ns (uint32 time) } } +//------------------------------------------------------------------------------------------------------------------- +// 函数简介 system 微秒 延时函数(访问寄存器) +// 参数说明 time 延时时间 单位:us +// 返回参数 void +// 使用示例 system_delay_us_register(100); // 延时100微秒 +//------------------------------------------------------------------------------------------------------------------- +void system_delay_us_register (uint32 time) +{ + IfxStm_Index stm_index; + + stm_index = (IfxStm_Index)IfxCpu_getCoreId(); + + IfxStm_waitTicks(IfxStm_getAddress(stm_index), time * 100); +} //------------------------------------------------------------------------------------------------------------------- -// 函数简介 system 微秒 延时函数 +// 函数简介 system 微秒 延时函数(定时器中断) // 参数说明 time 延时时间 单位:us // 返回参数 void // 使用示例 system_delay_us(100); // 延时100微秒 diff --git a/Example/E01_gpio_demo/libraries/zf_driver/zf_driver_delay.h b/Example/E01_gpio_demo/libraries/zf_driver/zf_driver_delay.h index 7b8b475..a489d25 100644 --- a/Example/E01_gpio_demo/libraries/zf_driver/zf_driver_delay.h +++ b/Example/E01_gpio_demo/libraries/zf_driver/zf_driver_delay.h @@ -41,6 +41,7 @@ //====================================================延时 基础函数==================================================== void system_delay (uint32 time, uint32 num); +void system_delay_us_register (uint32 time); void system_delay_us (uint32 time); void system_delay_ms (uint32 time); void system_delay_init (void); diff --git a/Example/E02_uart_demo/libraries/doc/version.txt b/Example/E02_uart_demo/libraries/doc/version.txt index 0f25d7e..68afc86 100644 --- a/Example/E02_uart_demo/libraries/doc/version.txt +++ b/Example/E02_uart_demo/libraries/doc/version.txt @@ -1,3 +1,5 @@ +V3.2.13 + 新增一个微秒延时函数 该延时函数为普通延时 非中断延时 V3.2.12 修复核心1运行异常的问题 修复凌瞳亮度调节函数名称异常的bug diff --git a/Example/E02_uart_demo/libraries/zf_driver/zf_driver_delay.c b/Example/E02_uart_demo/libraries/zf_driver/zf_driver_delay.c index e6a35df..3667547 100644 --- a/Example/E02_uart_demo/libraries/zf_driver/zf_driver_delay.c +++ b/Example/E02_uart_demo/libraries/zf_driver/zf_driver_delay.c @@ -60,6 +60,8 @@ IFX_INTERRUPT(stm1_isr, 0, IFX_INTPRIO_STM1_SR0) IfxStm_clearCompareFlag(&MODULE_STM1, IfxStm_Comparator_0); stm1_isr_flag = 0; } + + //------------------------------------------------------------------------------------------------------------------- // 函数简介 system延时函数 // 参数说明 time 延时一轮的时间(单位为纳秒,可设置范围0-20000000) @@ -105,9 +107,23 @@ void system_delay_10ns (uint32 time) } } +//------------------------------------------------------------------------------------------------------------------- +// 函数简介 system 微秒 延时函数(访问寄存器) +// 参数说明 time 延时时间 单位:us +// 返回参数 void +// 使用示例 system_delay_us_register(100); // 延时100微秒 +//------------------------------------------------------------------------------------------------------------------- +void system_delay_us_register (uint32 time) +{ + IfxStm_Index stm_index; + + stm_index = (IfxStm_Index)IfxCpu_getCoreId(); + + IfxStm_waitTicks(IfxStm_getAddress(stm_index), time * 100); +} //------------------------------------------------------------------------------------------------------------------- -// 函数简介 system 微秒 延时函数 +// 函数简介 system 微秒 延时函数(定时器中断) // 参数说明 time 延时时间 单位:us // 返回参数 void // 使用示例 system_delay_us(100); // 延时100微秒 diff --git a/Example/E02_uart_demo/libraries/zf_driver/zf_driver_delay.h b/Example/E02_uart_demo/libraries/zf_driver/zf_driver_delay.h index 7b8b475..a489d25 100644 --- a/Example/E02_uart_demo/libraries/zf_driver/zf_driver_delay.h +++ b/Example/E02_uart_demo/libraries/zf_driver/zf_driver_delay.h @@ -41,6 +41,7 @@ //====================================================延时 基础函数==================================================== void system_delay (uint32 time, uint32 num); +void system_delay_us_register (uint32 time); void system_delay_us (uint32 time); void system_delay_ms (uint32 time); void system_delay_init (void); diff --git a/Example/E03_adc_demo/libraries/doc/version.txt b/Example/E03_adc_demo/libraries/doc/version.txt index 0f25d7e..68afc86 100644 --- a/Example/E03_adc_demo/libraries/doc/version.txt +++ b/Example/E03_adc_demo/libraries/doc/version.txt @@ -1,3 +1,5 @@ +V3.2.13 + 新增一个微秒延时函数 该延时函数为普通延时 非中断延时 V3.2.12 修复核心1运行异常的问题 修复凌瞳亮度调节函数名称异常的bug diff --git a/Example/E03_adc_demo/libraries/zf_driver/zf_driver_delay.c b/Example/E03_adc_demo/libraries/zf_driver/zf_driver_delay.c index e6a35df..3667547 100644 --- a/Example/E03_adc_demo/libraries/zf_driver/zf_driver_delay.c +++ b/Example/E03_adc_demo/libraries/zf_driver/zf_driver_delay.c @@ -60,6 +60,8 @@ IFX_INTERRUPT(stm1_isr, 0, IFX_INTPRIO_STM1_SR0) IfxStm_clearCompareFlag(&MODULE_STM1, IfxStm_Comparator_0); stm1_isr_flag = 0; } + + //------------------------------------------------------------------------------------------------------------------- // 函数简介 system延时函数 // 参数说明 time 延时一轮的时间(单位为纳秒,可设置范围0-20000000) @@ -105,9 +107,23 @@ void system_delay_10ns (uint32 time) } } +//------------------------------------------------------------------------------------------------------------------- +// 函数简介 system 微秒 延时函数(访问寄存器) +// 参数说明 time 延时时间 单位:us +// 返回参数 void +// 使用示例 system_delay_us_register(100); // 延时100微秒 +//------------------------------------------------------------------------------------------------------------------- +void system_delay_us_register (uint32 time) +{ + IfxStm_Index stm_index; + + stm_index = (IfxStm_Index)IfxCpu_getCoreId(); + + IfxStm_waitTicks(IfxStm_getAddress(stm_index), time * 100); +} //------------------------------------------------------------------------------------------------------------------- -// 函数简介 system 微秒 延时函数 +// 函数简介 system 微秒 延时函数(定时器中断) // 参数说明 time 延时时间 单位:us // 返回参数 void // 使用示例 system_delay_us(100); // 延时100微秒 diff --git a/Example/E03_adc_demo/libraries/zf_driver/zf_driver_delay.h b/Example/E03_adc_demo/libraries/zf_driver/zf_driver_delay.h index 7b8b475..a489d25 100644 --- a/Example/E03_adc_demo/libraries/zf_driver/zf_driver_delay.h +++ b/Example/E03_adc_demo/libraries/zf_driver/zf_driver_delay.h @@ -41,6 +41,7 @@ //====================================================延时 基础函数==================================================== void system_delay (uint32 time, uint32 num); +void system_delay_us_register (uint32 time); void system_delay_us (uint32 time); void system_delay_ms (uint32 time); void system_delay_init (void); diff --git a/Example/E04_pwm_demo/libraries/doc/version.txt b/Example/E04_pwm_demo/libraries/doc/version.txt index 0f25d7e..68afc86 100644 --- a/Example/E04_pwm_demo/libraries/doc/version.txt +++ b/Example/E04_pwm_demo/libraries/doc/version.txt @@ -1,3 +1,5 @@ +V3.2.13 + 新增一个微秒延时函数 该延时函数为普通延时 非中断延时 V3.2.12 修复核心1运行异常的问题 修复凌瞳亮度调节函数名称异常的bug diff --git a/Example/E04_pwm_demo/libraries/zf_driver/zf_driver_delay.c b/Example/E04_pwm_demo/libraries/zf_driver/zf_driver_delay.c index e6a35df..3667547 100644 --- a/Example/E04_pwm_demo/libraries/zf_driver/zf_driver_delay.c +++ b/Example/E04_pwm_demo/libraries/zf_driver/zf_driver_delay.c @@ -60,6 +60,8 @@ IFX_INTERRUPT(stm1_isr, 0, IFX_INTPRIO_STM1_SR0) IfxStm_clearCompareFlag(&MODULE_STM1, IfxStm_Comparator_0); stm1_isr_flag = 0; } + + //------------------------------------------------------------------------------------------------------------------- // 函数简介 system延时函数 // 参数说明 time 延时一轮的时间(单位为纳秒,可设置范围0-20000000) @@ -105,9 +107,23 @@ void system_delay_10ns (uint32 time) } } +//------------------------------------------------------------------------------------------------------------------- +// 函数简介 system 微秒 延时函数(访问寄存器) +// 参数说明 time 延时时间 单位:us +// 返回参数 void +// 使用示例 system_delay_us_register(100); // 延时100微秒 +//------------------------------------------------------------------------------------------------------------------- +void system_delay_us_register (uint32 time) +{ + IfxStm_Index stm_index; + + stm_index = (IfxStm_Index)IfxCpu_getCoreId(); + + IfxStm_waitTicks(IfxStm_getAddress(stm_index), time * 100); +} //------------------------------------------------------------------------------------------------------------------- -// 函数简介 system 微秒 延时函数 +// 函数简介 system 微秒 延时函数(定时器中断) // 参数说明 time 延时时间 单位:us // 返回参数 void // 使用示例 system_delay_us(100); // 延时100微秒 diff --git a/Example/E04_pwm_demo/libraries/zf_driver/zf_driver_delay.h b/Example/E04_pwm_demo/libraries/zf_driver/zf_driver_delay.h index 7b8b475..a489d25 100644 --- a/Example/E04_pwm_demo/libraries/zf_driver/zf_driver_delay.h +++ b/Example/E04_pwm_demo/libraries/zf_driver/zf_driver_delay.h @@ -41,6 +41,7 @@ //====================================================延时 基础函数==================================================== void system_delay (uint32 time, uint32 num); +void system_delay_us_register (uint32 time); void system_delay_us (uint32 time); void system_delay_ms (uint32 time); void system_delay_init (void); diff --git a/Example/E05_pit_demo/libraries/doc/version.txt b/Example/E05_pit_demo/libraries/doc/version.txt index 0f25d7e..68afc86 100644 --- a/Example/E05_pit_demo/libraries/doc/version.txt +++ b/Example/E05_pit_demo/libraries/doc/version.txt @@ -1,3 +1,5 @@ +V3.2.13 + 新增一个微秒延时函数 该延时函数为普通延时 非中断延时 V3.2.12 修复核心1运行异常的问题 修复凌瞳亮度调节函数名称异常的bug diff --git a/Example/E05_pit_demo/libraries/zf_driver/zf_driver_delay.c b/Example/E05_pit_demo/libraries/zf_driver/zf_driver_delay.c index e6a35df..3667547 100644 --- a/Example/E05_pit_demo/libraries/zf_driver/zf_driver_delay.c +++ b/Example/E05_pit_demo/libraries/zf_driver/zf_driver_delay.c @@ -60,6 +60,8 @@ IFX_INTERRUPT(stm1_isr, 0, IFX_INTPRIO_STM1_SR0) IfxStm_clearCompareFlag(&MODULE_STM1, IfxStm_Comparator_0); stm1_isr_flag = 0; } + + //------------------------------------------------------------------------------------------------------------------- // 函数简介 system延时函数 // 参数说明 time 延时一轮的时间(单位为纳秒,可设置范围0-20000000) @@ -105,9 +107,23 @@ void system_delay_10ns (uint32 time) } } +//------------------------------------------------------------------------------------------------------------------- +// 函数简介 system 微秒 延时函数(访问寄存器) +// 参数说明 time 延时时间 单位:us +// 返回参数 void +// 使用示例 system_delay_us_register(100); // 延时100微秒 +//------------------------------------------------------------------------------------------------------------------- +void system_delay_us_register (uint32 time) +{ + IfxStm_Index stm_index; + + stm_index = (IfxStm_Index)IfxCpu_getCoreId(); + + IfxStm_waitTicks(IfxStm_getAddress(stm_index), time * 100); +} //------------------------------------------------------------------------------------------------------------------- -// 函数简介 system 微秒 延时函数 +// 函数简介 system 微秒 延时函数(定时器中断) // 参数说明 time 延时时间 单位:us // 返回参数 void // 使用示例 system_delay_us(100); // 延时100微秒 diff --git a/Example/E05_pit_demo/libraries/zf_driver/zf_driver_delay.h b/Example/E05_pit_demo/libraries/zf_driver/zf_driver_delay.h index 7b8b475..a489d25 100644 --- a/Example/E05_pit_demo/libraries/zf_driver/zf_driver_delay.h +++ b/Example/E05_pit_demo/libraries/zf_driver/zf_driver_delay.h @@ -41,6 +41,7 @@ //====================================================延时 基础函数==================================================== void system_delay (uint32 time, uint32 num); +void system_delay_us_register (uint32 time); void system_delay_us (uint32 time); void system_delay_ms (uint32 time); void system_delay_init (void); diff --git a/Example/E06_exit_demo/libraries/doc/version.txt b/Example/E06_exit_demo/libraries/doc/version.txt index 0f25d7e..68afc86 100644 --- a/Example/E06_exit_demo/libraries/doc/version.txt +++ b/Example/E06_exit_demo/libraries/doc/version.txt @@ -1,3 +1,5 @@ +V3.2.13 + 新增一个微秒延时函数 该延时函数为普通延时 非中断延时 V3.2.12 修复核心1运行异常的问题 修复凌瞳亮度调节函数名称异常的bug diff --git a/Example/E06_exit_demo/libraries/zf_driver/zf_driver_delay.c b/Example/E06_exit_demo/libraries/zf_driver/zf_driver_delay.c index e6a35df..3667547 100644 --- a/Example/E06_exit_demo/libraries/zf_driver/zf_driver_delay.c +++ b/Example/E06_exit_demo/libraries/zf_driver/zf_driver_delay.c @@ -60,6 +60,8 @@ IFX_INTERRUPT(stm1_isr, 0, IFX_INTPRIO_STM1_SR0) IfxStm_clearCompareFlag(&MODULE_STM1, IfxStm_Comparator_0); stm1_isr_flag = 0; } + + //------------------------------------------------------------------------------------------------------------------- // 函数简介 system延时函数 // 参数说明 time 延时一轮的时间(单位为纳秒,可设置范围0-20000000) @@ -105,9 +107,23 @@ void system_delay_10ns (uint32 time) } } +//------------------------------------------------------------------------------------------------------------------- +// 函数简介 system 微秒 延时函数(访问寄存器) +// 参数说明 time 延时时间 单位:us +// 返回参数 void +// 使用示例 system_delay_us_register(100); // 延时100微秒 +//------------------------------------------------------------------------------------------------------------------- +void system_delay_us_register (uint32 time) +{ + IfxStm_Index stm_index; + + stm_index = (IfxStm_Index)IfxCpu_getCoreId(); + + IfxStm_waitTicks(IfxStm_getAddress(stm_index), time * 100); +} //------------------------------------------------------------------------------------------------------------------- -// 函数简介 system 微秒 延时函数 +// 函数简介 system 微秒 延时函数(定时器中断) // 参数说明 time 延时时间 单位:us // 返回参数 void // 使用示例 system_delay_us(100); // 延时100微秒 diff --git a/Example/E06_exit_demo/libraries/zf_driver/zf_driver_delay.h b/Example/E06_exit_demo/libraries/zf_driver/zf_driver_delay.h index 7b8b475..a489d25 100644 --- a/Example/E06_exit_demo/libraries/zf_driver/zf_driver_delay.h +++ b/Example/E06_exit_demo/libraries/zf_driver/zf_driver_delay.h @@ -41,6 +41,7 @@ //====================================================延时 基础函数==================================================== void system_delay (uint32 time, uint32 num); +void system_delay_us_register (uint32 time); void system_delay_us (uint32 time); void system_delay_ms (uint32 time); void system_delay_init (void); diff --git a/Example/E07_encoder_demo/libraries/doc/version.txt b/Example/E07_encoder_demo/libraries/doc/version.txt index 0f25d7e..68afc86 100644 --- a/Example/E07_encoder_demo/libraries/doc/version.txt +++ b/Example/E07_encoder_demo/libraries/doc/version.txt @@ -1,3 +1,5 @@ +V3.2.13 + 新增一个微秒延时函数 该延时函数为普通延时 非中断延时 V3.2.12 修复核心1运行异常的问题 修复凌瞳亮度调节函数名称异常的bug diff --git a/Example/E07_encoder_demo/libraries/zf_driver/zf_driver_delay.c b/Example/E07_encoder_demo/libraries/zf_driver/zf_driver_delay.c index e6a35df..3667547 100644 --- a/Example/E07_encoder_demo/libraries/zf_driver/zf_driver_delay.c +++ b/Example/E07_encoder_demo/libraries/zf_driver/zf_driver_delay.c @@ -60,6 +60,8 @@ IFX_INTERRUPT(stm1_isr, 0, IFX_INTPRIO_STM1_SR0) IfxStm_clearCompareFlag(&MODULE_STM1, IfxStm_Comparator_0); stm1_isr_flag = 0; } + + //------------------------------------------------------------------------------------------------------------------- // 函数简介 system延时函数 // 参数说明 time 延时一轮的时间(单位为纳秒,可设置范围0-20000000) @@ -105,9 +107,23 @@ void system_delay_10ns (uint32 time) } } +//------------------------------------------------------------------------------------------------------------------- +// 函数简介 system 微秒 延时函数(访问寄存器) +// 参数说明 time 延时时间 单位:us +// 返回参数 void +// 使用示例 system_delay_us_register(100); // 延时100微秒 +//------------------------------------------------------------------------------------------------------------------- +void system_delay_us_register (uint32 time) +{ + IfxStm_Index stm_index; + + stm_index = (IfxStm_Index)IfxCpu_getCoreId(); + + IfxStm_waitTicks(IfxStm_getAddress(stm_index), time * 100); +} //------------------------------------------------------------------------------------------------------------------- -// 函数简介 system 微秒 延时函数 +// 函数简介 system 微秒 延时函数(定时器中断) // 参数说明 time 延时时间 单位:us // 返回参数 void // 使用示例 system_delay_us(100); // 延时100微秒 diff --git a/Example/E07_encoder_demo/libraries/zf_driver/zf_driver_delay.h b/Example/E07_encoder_demo/libraries/zf_driver/zf_driver_delay.h index 7b8b475..a489d25 100644 --- a/Example/E07_encoder_demo/libraries/zf_driver/zf_driver_delay.h +++ b/Example/E07_encoder_demo/libraries/zf_driver/zf_driver_delay.h @@ -41,6 +41,7 @@ //====================================================延时 基础函数==================================================== void system_delay (uint32 time, uint32 num); +void system_delay_us_register (uint32 time); void system_delay_us (uint32 time); void system_delay_ms (uint32 time); void system_delay_init (void); diff --git a/Example/E08_eeprom_demo/libraries/doc/version.txt b/Example/E08_eeprom_demo/libraries/doc/version.txt index 0f25d7e..68afc86 100644 --- a/Example/E08_eeprom_demo/libraries/doc/version.txt +++ b/Example/E08_eeprom_demo/libraries/doc/version.txt @@ -1,3 +1,5 @@ +V3.2.13 + 新增一个微秒延时函数 该延时函数为普通延时 非中断延时 V3.2.12 修复核心1运行异常的问题 修复凌瞳亮度调节函数名称异常的bug diff --git a/Example/E08_eeprom_demo/libraries/zf_driver/zf_driver_delay.c b/Example/E08_eeprom_demo/libraries/zf_driver/zf_driver_delay.c index e6a35df..3667547 100644 --- a/Example/E08_eeprom_demo/libraries/zf_driver/zf_driver_delay.c +++ b/Example/E08_eeprom_demo/libraries/zf_driver/zf_driver_delay.c @@ -60,6 +60,8 @@ IFX_INTERRUPT(stm1_isr, 0, IFX_INTPRIO_STM1_SR0) IfxStm_clearCompareFlag(&MODULE_STM1, IfxStm_Comparator_0); stm1_isr_flag = 0; } + + //------------------------------------------------------------------------------------------------------------------- // 函数简介 system延时函数 // 参数说明 time 延时一轮的时间(单位为纳秒,可设置范围0-20000000) @@ -105,9 +107,23 @@ void system_delay_10ns (uint32 time) } } +//------------------------------------------------------------------------------------------------------------------- +// 函数简介 system 微秒 延时函数(访问寄存器) +// 参数说明 time 延时时间 单位:us +// 返回参数 void +// 使用示例 system_delay_us_register(100); // 延时100微秒 +//------------------------------------------------------------------------------------------------------------------- +void system_delay_us_register (uint32 time) +{ + IfxStm_Index stm_index; + + stm_index = (IfxStm_Index)IfxCpu_getCoreId(); + + IfxStm_waitTicks(IfxStm_getAddress(stm_index), time * 100); +} //------------------------------------------------------------------------------------------------------------------- -// 函数简介 system 微秒 延时函数 +// 函数简介 system 微秒 延时函数(定时器中断) // 参数说明 time 延时时间 单位:us // 返回参数 void // 使用示例 system_delay_us(100); // 延时100微秒 diff --git a/Example/E08_eeprom_demo/libraries/zf_driver/zf_driver_delay.h b/Example/E08_eeprom_demo/libraries/zf_driver/zf_driver_delay.h index 7b8b475..a489d25 100644 --- a/Example/E08_eeprom_demo/libraries/zf_driver/zf_driver_delay.h +++ b/Example/E08_eeprom_demo/libraries/zf_driver/zf_driver_delay.h @@ -41,6 +41,7 @@ //====================================================延时 基础函数==================================================== void system_delay (uint32 time, uint32 num); +void system_delay_us_register (uint32 time); void system_delay_us (uint32 time); void system_delay_ms (uint32 time); void system_delay_init (void); diff --git a/Example/E09_timer_demo/libraries/doc/version.txt b/Example/E09_timer_demo/libraries/doc/version.txt index 0f25d7e..68afc86 100644 --- a/Example/E09_timer_demo/libraries/doc/version.txt +++ b/Example/E09_timer_demo/libraries/doc/version.txt @@ -1,3 +1,5 @@ +V3.2.13 + 新增一个微秒延时函数 该延时函数为普通延时 非中断延时 V3.2.12 修复核心1运行异常的问题 修复凌瞳亮度调节函数名称异常的bug diff --git a/Example/E09_timer_demo/libraries/zf_driver/zf_driver_delay.c b/Example/E09_timer_demo/libraries/zf_driver/zf_driver_delay.c index e6a35df..3667547 100644 --- a/Example/E09_timer_demo/libraries/zf_driver/zf_driver_delay.c +++ b/Example/E09_timer_demo/libraries/zf_driver/zf_driver_delay.c @@ -60,6 +60,8 @@ IFX_INTERRUPT(stm1_isr, 0, IFX_INTPRIO_STM1_SR0) IfxStm_clearCompareFlag(&MODULE_STM1, IfxStm_Comparator_0); stm1_isr_flag = 0; } + + //------------------------------------------------------------------------------------------------------------------- // 函数简介 system延时函数 // 参数说明 time 延时一轮的时间(单位为纳秒,可设置范围0-20000000) @@ -105,9 +107,23 @@ void system_delay_10ns (uint32 time) } } +//------------------------------------------------------------------------------------------------------------------- +// 函数简介 system 微秒 延时函数(访问寄存器) +// 参数说明 time 延时时间 单位:us +// 返回参数 void +// 使用示例 system_delay_us_register(100); // 延时100微秒 +//------------------------------------------------------------------------------------------------------------------- +void system_delay_us_register (uint32 time) +{ + IfxStm_Index stm_index; + + stm_index = (IfxStm_Index)IfxCpu_getCoreId(); + + IfxStm_waitTicks(IfxStm_getAddress(stm_index), time * 100); +} //------------------------------------------------------------------------------------------------------------------- -// 函数简介 system 微秒 延时函数 +// 函数简介 system 微秒 延时函数(定时器中断) // 参数说明 time 延时时间 单位:us // 返回参数 void // 使用示例 system_delay_us(100); // 延时100微秒 diff --git a/Example/E09_timer_demo/libraries/zf_driver/zf_driver_delay.h b/Example/E09_timer_demo/libraries/zf_driver/zf_driver_delay.h index 7b8b475..a489d25 100644 --- a/Example/E09_timer_demo/libraries/zf_driver/zf_driver_delay.h +++ b/Example/E09_timer_demo/libraries/zf_driver/zf_driver_delay.h @@ -41,6 +41,7 @@ //====================================================延时 基础函数==================================================== void system_delay (uint32 time, uint32 num); +void system_delay_us_register (uint32 time); void system_delay_us (uint32 time); void system_delay_ms (uint32 time); void system_delay_init (void); diff --git a/Example/E10_printf_debug_log_demo/libraries/doc/version.txt b/Example/E10_printf_debug_log_demo/libraries/doc/version.txt index 0f25d7e..68afc86 100644 --- a/Example/E10_printf_debug_log_demo/libraries/doc/version.txt +++ b/Example/E10_printf_debug_log_demo/libraries/doc/version.txt @@ -1,3 +1,5 @@ +V3.2.13 + 新增一个微秒延时函数 该延时函数为普通延时 非中断延时 V3.2.12 修复核心1运行异常的问题 修复凌瞳亮度调节函数名称异常的bug diff --git a/Example/E10_printf_debug_log_demo/libraries/zf_driver/zf_driver_delay.c b/Example/E10_printf_debug_log_demo/libraries/zf_driver/zf_driver_delay.c index e6a35df..3667547 100644 --- a/Example/E10_printf_debug_log_demo/libraries/zf_driver/zf_driver_delay.c +++ b/Example/E10_printf_debug_log_demo/libraries/zf_driver/zf_driver_delay.c @@ -60,6 +60,8 @@ IFX_INTERRUPT(stm1_isr, 0, IFX_INTPRIO_STM1_SR0) IfxStm_clearCompareFlag(&MODULE_STM1, IfxStm_Comparator_0); stm1_isr_flag = 0; } + + //------------------------------------------------------------------------------------------------------------------- // 函数简介 system延时函数 // 参数说明 time 延时一轮的时间(单位为纳秒,可设置范围0-20000000) @@ -105,9 +107,23 @@ void system_delay_10ns (uint32 time) } } +//------------------------------------------------------------------------------------------------------------------- +// 函数简介 system 微秒 延时函数(访问寄存器) +// 参数说明 time 延时时间 单位:us +// 返回参数 void +// 使用示例 system_delay_us_register(100); // 延时100微秒 +//------------------------------------------------------------------------------------------------------------------- +void system_delay_us_register (uint32 time) +{ + IfxStm_Index stm_index; + + stm_index = (IfxStm_Index)IfxCpu_getCoreId(); + + IfxStm_waitTicks(IfxStm_getAddress(stm_index), time * 100); +} //------------------------------------------------------------------------------------------------------------------- -// 函数简介 system 微秒 延时函数 +// 函数简介 system 微秒 延时函数(定时器中断) // 参数说明 time 延时时间 单位:us // 返回参数 void // 使用示例 system_delay_us(100); // 延时100微秒 diff --git a/Example/E10_printf_debug_log_demo/libraries/zf_driver/zf_driver_delay.h b/Example/E10_printf_debug_log_demo/libraries/zf_driver/zf_driver_delay.h index 7b8b475..a489d25 100644 --- a/Example/E10_printf_debug_log_demo/libraries/zf_driver/zf_driver_delay.h +++ b/Example/E10_printf_debug_log_demo/libraries/zf_driver/zf_driver_delay.h @@ -41,6 +41,7 @@ //====================================================延时 基础函数==================================================== void system_delay (uint32 time, uint32 num); +void system_delay_us_register (uint32 time); void system_delay_us (uint32 time); void system_delay_ms (uint32 time); void system_delay_init (void); diff --git a/Example/E11_interrupt_priority_set_demo/libraries/doc/version.txt b/Example/E11_interrupt_priority_set_demo/libraries/doc/version.txt index 0f25d7e..68afc86 100644 --- a/Example/E11_interrupt_priority_set_demo/libraries/doc/version.txt +++ b/Example/E11_interrupt_priority_set_demo/libraries/doc/version.txt @@ -1,3 +1,5 @@ +V3.2.13 + 新增一个微秒延时函数 该延时函数为普通延时 非中断延时 V3.2.12 修复核心1运行异常的问题 修复凌瞳亮度调节函数名称异常的bug diff --git a/Example/E11_interrupt_priority_set_demo/libraries/zf_driver/zf_driver_delay.c b/Example/E11_interrupt_priority_set_demo/libraries/zf_driver/zf_driver_delay.c index e6a35df..3667547 100644 --- a/Example/E11_interrupt_priority_set_demo/libraries/zf_driver/zf_driver_delay.c +++ b/Example/E11_interrupt_priority_set_demo/libraries/zf_driver/zf_driver_delay.c @@ -60,6 +60,8 @@ IFX_INTERRUPT(stm1_isr, 0, IFX_INTPRIO_STM1_SR0) IfxStm_clearCompareFlag(&MODULE_STM1, IfxStm_Comparator_0); stm1_isr_flag = 0; } + + //------------------------------------------------------------------------------------------------------------------- // 函数简介 system延时函数 // 参数说明 time 延时一轮的时间(单位为纳秒,可设置范围0-20000000) @@ -105,9 +107,23 @@ void system_delay_10ns (uint32 time) } } +//------------------------------------------------------------------------------------------------------------------- +// 函数简介 system 微秒 延时函数(访问寄存器) +// 参数说明 time 延时时间 单位:us +// 返回参数 void +// 使用示例 system_delay_us_register(100); // 延时100微秒 +//------------------------------------------------------------------------------------------------------------------- +void system_delay_us_register (uint32 time) +{ + IfxStm_Index stm_index; + + stm_index = (IfxStm_Index)IfxCpu_getCoreId(); + + IfxStm_waitTicks(IfxStm_getAddress(stm_index), time * 100); +} //------------------------------------------------------------------------------------------------------------------- -// 函数简介 system 微秒 延时函数 +// 函数简介 system 微秒 延时函数(定时器中断) // 参数说明 time 延时时间 单位:us // 返回参数 void // 使用示例 system_delay_us(100); // 延时100微秒 diff --git a/Example/E11_interrupt_priority_set_demo/libraries/zf_driver/zf_driver_delay.h b/Example/E11_interrupt_priority_set_demo/libraries/zf_driver/zf_driver_delay.h index 7b8b475..a489d25 100644 --- a/Example/E11_interrupt_priority_set_demo/libraries/zf_driver/zf_driver_delay.h +++ b/Example/E11_interrupt_priority_set_demo/libraries/zf_driver/zf_driver_delay.h @@ -41,6 +41,7 @@ //====================================================延时 基础函数==================================================== void system_delay (uint32 time, uint32 num); +void system_delay_us_register (uint32 time); void system_delay_us (uint32 time); void system_delay_ms (uint32 time); void system_delay_init (void); diff --git a/Example/E12_cpu1_handles_interrupts_demo/libraries/doc/version.txt b/Example/E12_cpu1_handles_interrupts_demo/libraries/doc/version.txt index 0f25d7e..68afc86 100644 --- a/Example/E12_cpu1_handles_interrupts_demo/libraries/doc/version.txt +++ b/Example/E12_cpu1_handles_interrupts_demo/libraries/doc/version.txt @@ -1,3 +1,5 @@ +V3.2.13 + 新增一个微秒延时函数 该延时函数为普通延时 非中断延时 V3.2.12 修复核心1运行异常的问题 修复凌瞳亮度调节函数名称异常的bug diff --git a/Example/E12_cpu1_handles_interrupts_demo/libraries/zf_driver/zf_driver_delay.c b/Example/E12_cpu1_handles_interrupts_demo/libraries/zf_driver/zf_driver_delay.c index e6a35df..3667547 100644 --- a/Example/E12_cpu1_handles_interrupts_demo/libraries/zf_driver/zf_driver_delay.c +++ b/Example/E12_cpu1_handles_interrupts_demo/libraries/zf_driver/zf_driver_delay.c @@ -60,6 +60,8 @@ IFX_INTERRUPT(stm1_isr, 0, IFX_INTPRIO_STM1_SR0) IfxStm_clearCompareFlag(&MODULE_STM1, IfxStm_Comparator_0); stm1_isr_flag = 0; } + + //------------------------------------------------------------------------------------------------------------------- // 函数简介 system延时函数 // 参数说明 time 延时一轮的时间(单位为纳秒,可设置范围0-20000000) @@ -105,9 +107,23 @@ void system_delay_10ns (uint32 time) } } +//------------------------------------------------------------------------------------------------------------------- +// 函数简介 system 微秒 延时函数(访问寄存器) +// 参数说明 time 延时时间 单位:us +// 返回参数 void +// 使用示例 system_delay_us_register(100); // 延时100微秒 +//------------------------------------------------------------------------------------------------------------------- +void system_delay_us_register (uint32 time) +{ + IfxStm_Index stm_index; + + stm_index = (IfxStm_Index)IfxCpu_getCoreId(); + + IfxStm_waitTicks(IfxStm_getAddress(stm_index), time * 100); +} //------------------------------------------------------------------------------------------------------------------- -// 函数简介 system 微秒 延时函数 +// 函数简介 system 微秒 延时函数(定时器中断) // 参数说明 time 延时时间 单位:us // 返回参数 void // 使用示例 system_delay_us(100); // 延时100微秒 diff --git a/Example/E12_cpu1_handles_interrupts_demo/libraries/zf_driver/zf_driver_delay.h b/Example/E12_cpu1_handles_interrupts_demo/libraries/zf_driver/zf_driver_delay.h index 7b8b475..a489d25 100644 --- a/Example/E12_cpu1_handles_interrupts_demo/libraries/zf_driver/zf_driver_delay.h +++ b/Example/E12_cpu1_handles_interrupts_demo/libraries/zf_driver/zf_driver_delay.h @@ -41,6 +41,7 @@ //====================================================延时 基础函数==================================================== void system_delay (uint32 time, uint32 num); +void system_delay_us_register (uint32 time); void system_delay_us (uint32 time); void system_delay_ms (uint32 time); void system_delay_init (void); diff --git a/Example/E13_dual_core_demo/libraries/doc/version.txt b/Example/E13_dual_core_demo/libraries/doc/version.txt index 0f25d7e..68afc86 100644 --- a/Example/E13_dual_core_demo/libraries/doc/version.txt +++ b/Example/E13_dual_core_demo/libraries/doc/version.txt @@ -1,3 +1,5 @@ +V3.2.13 + 新增一个微秒延时函数 该延时函数为普通延时 非中断延时 V3.2.12 修复核心1运行异常的问题 修复凌瞳亮度调节函数名称异常的bug diff --git a/Example/E13_dual_core_demo/libraries/zf_driver/zf_driver_delay.c b/Example/E13_dual_core_demo/libraries/zf_driver/zf_driver_delay.c index e6a35df..3667547 100644 --- a/Example/E13_dual_core_demo/libraries/zf_driver/zf_driver_delay.c +++ b/Example/E13_dual_core_demo/libraries/zf_driver/zf_driver_delay.c @@ -60,6 +60,8 @@ IFX_INTERRUPT(stm1_isr, 0, IFX_INTPRIO_STM1_SR0) IfxStm_clearCompareFlag(&MODULE_STM1, IfxStm_Comparator_0); stm1_isr_flag = 0; } + + //------------------------------------------------------------------------------------------------------------------- // 函数简介 system延时函数 // 参数说明 time 延时一轮的时间(单位为纳秒,可设置范围0-20000000) @@ -105,9 +107,23 @@ void system_delay_10ns (uint32 time) } } +//------------------------------------------------------------------------------------------------------------------- +// 函数简介 system 微秒 延时函数(访问寄存器) +// 参数说明 time 延时时间 单位:us +// 返回参数 void +// 使用示例 system_delay_us_register(100); // 延时100微秒 +//------------------------------------------------------------------------------------------------------------------- +void system_delay_us_register (uint32 time) +{ + IfxStm_Index stm_index; + + stm_index = (IfxStm_Index)IfxCpu_getCoreId(); + + IfxStm_waitTicks(IfxStm_getAddress(stm_index), time * 100); +} //------------------------------------------------------------------------------------------------------------------- -// 函数简介 system 微秒 延时函数 +// 函数简介 system 微秒 延时函数(定时器中断) // 参数说明 time 延时时间 单位:us // 返回参数 void // 使用示例 system_delay_us(100); // 延时100微秒 diff --git a/Example/E13_dual_core_demo/libraries/zf_driver/zf_driver_delay.h b/Example/E13_dual_core_demo/libraries/zf_driver/zf_driver_delay.h index 7b8b475..a489d25 100644 --- a/Example/E13_dual_core_demo/libraries/zf_driver/zf_driver_delay.h +++ b/Example/E13_dual_core_demo/libraries/zf_driver/zf_driver_delay.h @@ -41,6 +41,7 @@ //====================================================延时 基础函数==================================================== void system_delay (uint32 time, uint32 num); +void system_delay_us_register (uint32 time); void system_delay_us (uint32 time); void system_delay_ms (uint32 time); void system_delay_init (void); diff --git a/Example/E14_specifies_variable_or_code_location_demo/libraries/doc/version.txt b/Example/E14_specifies_variable_or_code_location_demo/libraries/doc/version.txt index 0f25d7e..68afc86 100644 --- a/Example/E14_specifies_variable_or_code_location_demo/libraries/doc/version.txt +++ b/Example/E14_specifies_variable_or_code_location_demo/libraries/doc/version.txt @@ -1,3 +1,5 @@ +V3.2.13 + 新增一个微秒延时函数 该延时函数为普通延时 非中断延时 V3.2.12 修复核心1运行异常的问题 修复凌瞳亮度调节函数名称异常的bug diff --git a/Example/E14_specifies_variable_or_code_location_demo/libraries/zf_driver/zf_driver_delay.c b/Example/E14_specifies_variable_or_code_location_demo/libraries/zf_driver/zf_driver_delay.c index e6a35df..3667547 100644 --- a/Example/E14_specifies_variable_or_code_location_demo/libraries/zf_driver/zf_driver_delay.c +++ b/Example/E14_specifies_variable_or_code_location_demo/libraries/zf_driver/zf_driver_delay.c @@ -60,6 +60,8 @@ IFX_INTERRUPT(stm1_isr, 0, IFX_INTPRIO_STM1_SR0) IfxStm_clearCompareFlag(&MODULE_STM1, IfxStm_Comparator_0); stm1_isr_flag = 0; } + + //------------------------------------------------------------------------------------------------------------------- // 函数简介 system延时函数 // 参数说明 time 延时一轮的时间(单位为纳秒,可设置范围0-20000000) @@ -105,9 +107,23 @@ void system_delay_10ns (uint32 time) } } +//------------------------------------------------------------------------------------------------------------------- +// 函数简介 system 微秒 延时函数(访问寄存器) +// 参数说明 time 延时时间 单位:us +// 返回参数 void +// 使用示例 system_delay_us_register(100); // 延时100微秒 +//------------------------------------------------------------------------------------------------------------------- +void system_delay_us_register (uint32 time) +{ + IfxStm_Index stm_index; + + stm_index = (IfxStm_Index)IfxCpu_getCoreId(); + + IfxStm_waitTicks(IfxStm_getAddress(stm_index), time * 100); +} //------------------------------------------------------------------------------------------------------------------- -// 函数简介 system 微秒 延时函数 +// 函数简介 system 微秒 延时函数(定时器中断) // 参数说明 time 延时时间 单位:us // 返回参数 void // 使用示例 system_delay_us(100); // 延时100微秒 diff --git a/Example/E14_specifies_variable_or_code_location_demo/libraries/zf_driver/zf_driver_delay.h b/Example/E14_specifies_variable_or_code_location_demo/libraries/zf_driver/zf_driver_delay.h index 7b8b475..a489d25 100644 --- a/Example/E14_specifies_variable_or_code_location_demo/libraries/zf_driver/zf_driver_delay.h +++ b/Example/E14_specifies_variable_or_code_location_demo/libraries/zf_driver/zf_driver_delay.h @@ -41,6 +41,7 @@ //====================================================延时 基础函数==================================================== void system_delay (uint32 time, uint32 num); +void system_delay_us_register (uint32 time); void system_delay_us (uint32 time); void system_delay_ms (uint32 time); void system_delay_init (void); diff --git a/Example/E15_fft_demo/libraries/doc/version.txt b/Example/E15_fft_demo/libraries/doc/version.txt index 0f25d7e..68afc86 100644 --- a/Example/E15_fft_demo/libraries/doc/version.txt +++ b/Example/E15_fft_demo/libraries/doc/version.txt @@ -1,3 +1,5 @@ +V3.2.13 + 新增一个微秒延时函数 该延时函数为普通延时 非中断延时 V3.2.12 修复核心1运行异常的问题 修复凌瞳亮度调节函数名称异常的bug diff --git a/Example/E15_fft_demo/libraries/zf_driver/zf_driver_delay.c b/Example/E15_fft_demo/libraries/zf_driver/zf_driver_delay.c index e6a35df..3667547 100644 --- a/Example/E15_fft_demo/libraries/zf_driver/zf_driver_delay.c +++ b/Example/E15_fft_demo/libraries/zf_driver/zf_driver_delay.c @@ -60,6 +60,8 @@ IFX_INTERRUPT(stm1_isr, 0, IFX_INTPRIO_STM1_SR0) IfxStm_clearCompareFlag(&MODULE_STM1, IfxStm_Comparator_0); stm1_isr_flag = 0; } + + //------------------------------------------------------------------------------------------------------------------- // 函数简介 system延时函数 // 参数说明 time 延时一轮的时间(单位为纳秒,可设置范围0-20000000) @@ -105,9 +107,23 @@ void system_delay_10ns (uint32 time) } } +//------------------------------------------------------------------------------------------------------------------- +// 函数简介 system 微秒 延时函数(访问寄存器) +// 参数说明 time 延时时间 单位:us +// 返回参数 void +// 使用示例 system_delay_us_register(100); // 延时100微秒 +//------------------------------------------------------------------------------------------------------------------- +void system_delay_us_register (uint32 time) +{ + IfxStm_Index stm_index; + + stm_index = (IfxStm_Index)IfxCpu_getCoreId(); + + IfxStm_waitTicks(IfxStm_getAddress(stm_index), time * 100); +} //------------------------------------------------------------------------------------------------------------------- -// 函数简介 system 微秒 延时函数 +// 函数简介 system 微秒 延时函数(定时器中断) // 参数说明 time 延时时间 单位:us // 返回参数 void // 使用示例 system_delay_us(100); // 延时100微秒 diff --git a/Example/E15_fft_demo/libraries/zf_driver/zf_driver_delay.h b/Example/E15_fft_demo/libraries/zf_driver/zf_driver_delay.h index 7b8b475..a489d25 100644 --- a/Example/E15_fft_demo/libraries/zf_driver/zf_driver_delay.h +++ b/Example/E15_fft_demo/libraries/zf_driver/zf_driver_delay.h @@ -41,6 +41,7 @@ //====================================================延时 基础函数==================================================== void system_delay (uint32 time, uint32 num); +void system_delay_us_register (uint32 time); void system_delay_us (uint32 time); void system_delay_ms (uint32 time); void system_delay_init (void); diff --git a/Seekfree_TC264_Opensource_Library/libraries/doc/version.txt b/Seekfree_TC264_Opensource_Library/libraries/doc/version.txt index 0f25d7e..68afc86 100644 --- a/Seekfree_TC264_Opensource_Library/libraries/doc/version.txt +++ b/Seekfree_TC264_Opensource_Library/libraries/doc/version.txt @@ -1,3 +1,5 @@ +V3.2.13 + 新增一个微秒延时函数 该延时函数为普通延时 非中断延时 V3.2.12 修复核心1运行异常的问题 修复凌瞳亮度调节函数名称异常的bug diff --git a/Seekfree_TC264_Opensource_Library/libraries/zf_driver/zf_driver_delay.c b/Seekfree_TC264_Opensource_Library/libraries/zf_driver/zf_driver_delay.c index e6a35df..3667547 100644 --- a/Seekfree_TC264_Opensource_Library/libraries/zf_driver/zf_driver_delay.c +++ b/Seekfree_TC264_Opensource_Library/libraries/zf_driver/zf_driver_delay.c @@ -60,6 +60,8 @@ IFX_INTERRUPT(stm1_isr, 0, IFX_INTPRIO_STM1_SR0) IfxStm_clearCompareFlag(&MODULE_STM1, IfxStm_Comparator_0); stm1_isr_flag = 0; } + + //------------------------------------------------------------------------------------------------------------------- // 函数简介 system延时函数 // 参数说明 time 延时一轮的时间(单位为纳秒,可设置范围0-20000000) @@ -105,9 +107,23 @@ void system_delay_10ns (uint32 time) } } +//------------------------------------------------------------------------------------------------------------------- +// 函数简介 system 微秒 延时函数(访问寄存器) +// 参数说明 time 延时时间 单位:us +// 返回参数 void +// 使用示例 system_delay_us_register(100); // 延时100微秒 +//------------------------------------------------------------------------------------------------------------------- +void system_delay_us_register (uint32 time) +{ + IfxStm_Index stm_index; + + stm_index = (IfxStm_Index)IfxCpu_getCoreId(); + + IfxStm_waitTicks(IfxStm_getAddress(stm_index), time * 100); +} //------------------------------------------------------------------------------------------------------------------- -// 函数简介 system 微秒 延时函数 +// 函数简介 system 微秒 延时函数(定时器中断) // 参数说明 time 延时时间 单位:us // 返回参数 void // 使用示例 system_delay_us(100); // 延时100微秒 diff --git a/Seekfree_TC264_Opensource_Library/libraries/zf_driver/zf_driver_delay.h b/Seekfree_TC264_Opensource_Library/libraries/zf_driver/zf_driver_delay.h index 7b8b475..a489d25 100644 --- a/Seekfree_TC264_Opensource_Library/libraries/zf_driver/zf_driver_delay.h +++ b/Seekfree_TC264_Opensource_Library/libraries/zf_driver/zf_driver_delay.h @@ -41,6 +41,7 @@ //====================================================延时 基础函数==================================================== void system_delay (uint32 time, uint32 num); +void system_delay_us_register (uint32 time); void system_delay_us (uint32 time); void system_delay_ms (uint32 time); void system_delay_init (void);