123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105 |
- #ifndef _FUNC_H
- #define _FUNC_H
- #include "func_bt.h"
- #include "func_bt_hid.h"
- #include "func_clock.h"
- #include "func_idle.h"
- #include "func_music.h"
- #include "func_fmrx.h"
- #include "func_usbdev.h"
- #include "func_aux.h"
- #include "func_speaker.h"
- #include "sfunc_record.h"
- #include "sfunc_record_play.h"
- #include "func_lowpwr.h"
- #include "func_update.h"
- #include "func_i2s.h"
- #include "func_spdif.h"
- #include "func_hdmi.h"
- #include "func_bt_dut.h"
- #include "func_uart_upd.h"
- #include "func_tom_cat.h"
- //task number
- enum {
- FUNC_NULL = 0,
- FUNC_MUSIC,
- FUNC_FMRX,
- FUNC_CLOCK,
- FUNC_BT,
- FUNC_BTHID,
- FUNC_USBDEV,
- FUNC_AUX,
- FUNC_SPDIF,
- FUNC_SPEAKER,
- FUNC_TOM_CAT,
- FUNC_PWROFF,
- FUNC_SLEEPMODE,
- FUNC_EXSPIFLASH_MUSIC,
- FUNC_I2S,
- FUNC_HUART,
- FUNC_HDMI,
- FUNC_BT_DUT,
- FUNC_BT_FCC,
- FUNC_IDLE,
- };
- //task control block
- typedef struct {
- u8 sta; //cur working task number
- u8 last; //lask task number
- #if BT_BACKSTAGE_EN
- u8 sta_break; //被中断的任务
- #endif
- void (*mp3_res_play)(u32 addr, u32 len); //各任务的语音播报函数接口
- void (*set_vol_callback)(u8 dir); //设置音量的回调函数,用于各任务的音量事件处理。
- } func_cb_t;
- extern func_cb_t func_cb;
- extern const u8 func_sort_table[]; //任务切换排序table
- ALWAYS_INLINE void func_mp3_res_play(u32 addr, u32 len)
- {
- if (func_cb.mp3_res_play) {
- func_cb.mp3_res_play(addr, len);
- }
- }
- ALWAYS_INLINE void func_set_vol_callback(u8 dir)
- {
- if (func_cb.set_vol_callback) {
- func_cb.set_vol_callback(dir);
- }
- }
- u8 get_funcs_total(void);
- void func_process(void);
- void func_message(u16 msg);
- void func_run(void);
- void func_music(void);
- void func_idle(void);
- void func_clock(void);
- void func_fmrx(void);
- void func_bt(void);
- void func_bthid(void);
- void func_usbdev(void);
- void func_aux(void);
- void func_spdif(void);
- #if FUNC_SPEAKER_EN
- void func_speaker(void);
- #endif // FUNC_SPEAKER_EN
- #if FUNC_I2S_EN
- void func_i2s(void);
- #endif
- #if FUNC_HUART_EN
- void func_huart(void);
- #endif
- void func_exspifalsh_music(void);
- void func_tom_cat(void);
- void func_bt_warning(void);
- #endif // _FUNC_H
|