From 02588f6411bf743e9cae179d5022441d74b79a40 Mon Sep 17 00:00:00 2001 From: bmy <2583236812@qq.com> Date: Tue, 16 Apr 2024 01:49:04 +0800 Subject: [PATCH] =?UTF-8?q?pref:=20=E4=BF=AE=E6=94=B9=E8=9C=82=E9=B8=A3?= =?UTF-8?q?=E5=99=A8=E4=B8=BA=E9=9D=9E=E9=98=BB=E5=A1=9E=E5=BD=A2=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/by_buzzer.c | 16 ++++++++++++---- app/isr.c | 2 +- app/main.c | 3 +-- libraries/zf_device/zf_device_k24c02.h | 4 ++-- 4 files changed, 16 insertions(+), 9 deletions(-) diff --git a/app/by_buzzer.c b/app/by_buzzer.c index 59ef66f..8fd4e05 100644 --- a/app/by_buzzer.c +++ b/app/by_buzzer.c @@ -3,8 +3,10 @@ #include #include "zf_common_headfile.h" -#define BUZZER_QUEUE_LENGTH 40 +#define BUZZER_TIME (100) // 蜂鸣器音节长度 +#define BUZZER_QUEUE_LENGTH (40) +uint32_t time_out = 0; uint16_t queue_long = 0; uint32_t a[40] = {0}; @@ -59,9 +61,15 @@ void by_buzzer_add(uint16_t tone) void by_buzzer_run(void) { if (queue_long != 0) { - pwm_init(BUZZER_PIN, a[0], 5000); - queue_pop_element(); - system_delay_ms(100); + + if (0 == time_out) { + pwm_init(BUZZER_PIN, a[0], 5000); + queue_pop_element(); + time_out = BUZZER_TIME; + } else { + time_out--; + } + } else { pwm_set_duty(BUZZER_PIN, 0); } } \ No newline at end of file diff --git a/app/isr.c b/app/isr.c index 5414c19..28aef48 100644 --- a/app/isr.c +++ b/app/isr.c @@ -275,7 +275,7 @@ void TIM1_UP_IRQHandler(void) { if (TIM_GetITStatus(TIM1, TIM_IT_Update) != RESET) { TIM_ClearITPendingBit(TIM1, TIM_IT_Update); - + by_buzzer_run(); sport_motion(); } } diff --git a/app/main.c b/app/main.c index 5559070..edd3f62 100644 --- a/app/main.c +++ b/app/main.c @@ -65,14 +65,13 @@ int main(void) // printf("pwm:%lu,%lu,%lu,%lu\r\n", pwm_duty_ls_g, pwm_duty_rs_g, pwm_duty_lb_g, pwm_duty_rb_g); Page_Run(); by_frame_parse(&test_data[0].u32); - by_buzzer_run(); jj_bt_run(); in_pos = test_data[1].f32; in_angle = test_data[0].f32; in_state = test_data[2].u8[0]; in_stop = test_data[2].u8[1]; if (last_state != in_state) { - bt_printf("changing to%u\r\n",in_state); + bt_printf("changing to%u\r\n", in_state); } last_state = in_state; } diff --git a/libraries/zf_device/zf_device_k24c02.h b/libraries/zf_device/zf_device_k24c02.h index 6d4a614..5746970 100644 --- a/libraries/zf_device/zf_device_k24c02.h +++ b/libraries/zf_device/zf_device_k24c02.h @@ -55,7 +55,7 @@ //====================================================Èí¼þ IIC Çý¶¯==================================================== #define K24C02_SOFT_IIC_DELAY (500) // Èí¼þ IIC µÄʱÖÓÑÓʱÖÜÆÚ ÊýֵԽС IIC ͨÐÅËÙÂÊÔ½¿ì #define K24C02_SCL_PIN (E3) // Èí¼þ IIC SCL Òý½Å Á¬½Ó K24C02 µÄ SCL Òý½Å -#define K24C02_SDA_PIN (E2 ) // Èí¼þ IIC SDA Òý½Å Á¬½Ó K24C02 µÄ SDA Òý½Å +#define K24C02_SDA_PIN (E2) // Èí¼þ IIC SDA Òý½Å Á¬½Ó K24C02 µÄ SDA Òý½Å //====================================================Èí¼þ IIC Çý¶¯==================================================== #else //====================================================Ó²¼þ IIC Çý¶¯==================================================== @@ -69,7 +69,7 @@ #define K24C02_TIMEOUT_COUNT (0x00FF) // K24C02 ³¬Ê±¼ÆÊý //================================================¶¨Òå K24C02 ÄÚ²¿µØÖ·================================================ -#define K24C02_DEV_ADDR (0xA0 >> 1) // IICдÈëʱµÄµØÖ·×Ö½ÚÊý¾Ý +1Ϊ¶ÁÈ¡ +#define K24C02_DEV_ADDR (0xA0 >> 1) // IIC дÈëʱµÄµØÖ·×Ö½ÚÊý¾Ý +1 Ϊ¶ÁÈ¡ //================================================¶¨Òå K24C02 ÄÚ²¿µØÖ·================================================ #define K24C02_SIZE (256) // 256 byte