📄 comm.h
字号:
void Read_Book(FileInfoStruct *FileName);//打开指定的txt/lrc文件
void Show_Str(u8 x,u16 y,u8*str,u8 mode);//显示一个字符串(中文支持) 1,叠加;0,覆盖
void Show_Str_Mid(u8 x,u16 y,u8*str,u8 mode,u8 len);//在指定长度中间显示字符串
extern u32 FONT16CLUSTER;
extern u32 FONT12CLUSTER;
//////////////////////////////////////////////////////////////////
//unicode部分外部使用的函数
void UniToGB(u8 *pbuf);
//////////////////////////////////////////////////////////////////
//JPEG解码部分外部用到的函数
extern u8 jpg_buffer[1024];
extern short MCUBuffer[10*64];//1280 BYTES 最多存储 426个TAG
//一下为歌词缓存区,最多存储6Kbytes的歌词
extern long iclip[1024];//4k BYTES
extern unsigned short code_value_table[4][256];//2K BYTES
//SD卡上歌词存放空间
extern short QtZzMCUBuffer[10*64];
extern u8 lrctagtype; //记录lrc的类型 0:[XX:XX] 1:[XX:XX.XX]
BOOL AI_LoadPicFile(FileInfoStruct *FileName,u8 sx,u16 sy,u8 ex,u16 ey);//智能的装载一副图片
//////////////////////////////////////////////////////////////////
//触摸屏处理部分外部用到的函数
u8 Touch_Key_Pro(u8 type);//按键处理函数
void touch_adjust(void);//触摸屏校准
void touch_init(void); //触摸屏初始化
u8 Touch_To_Num(u8 M_Type);//把得到的坐标转换为按键值
u8 Is_In_Area(u8 x1,u16 y1,u8 x2,u16 y2);//判断按下的按键是不是在给定区域内
u8 Get_KeyBoard_Val(void);//小键盘按键处理
//////////////////////////////////////////////////////////////////
//RGBLED驱动部分外部要用的东东
#define LED_R TIM4->CCR1
#define LED_G TIM4->CCR3
#define LED_B TIM4->CCR2
void ENRGB(u8 t);
void RGBLED_Init(void);
//////////////////////////////////////////////////////////////////
//RGBLED控制部分外部要用的东东
void RGBLED_Play(void);
#define MAX_Red 100//红色的最大值
//////////////////////////////////////////////////////////////////
//TEA5767部分外部要用的东东
#define JPS 0X32 //日本模式
#define USA 0X12 //美国模式
extern u8 RSIGNAL_STATUS;//信号状态 最高位:立体声标志,高三位:停止搜索的信号强度。低四位:信号强度
extern u8 JPUS;//欧美或者日本频段选择 0x12欧美 0x02日本
extern u8 sCh_Num; //搜索到的最大的电台个数
extern u8 sCh_Cho; //当前选择的电台号码 CHx
extern unsigned long Ch_Value[30]; //存储电台
extern unsigned long set_freq; //自己设定的 最终频率
extern unsigned long frequency_set;//Khz 从寄存器里面读出的 频率值
void Radio_Set(void);
void Radio_Play(void);
void set_frequency(unsigned long frequency);
void frequency_UP_DOWN(unsigned char mode);
unsigned char TEA5767_INTI(void); //初始化TWI
unsigned char set5767(void); //写TEA5767寄存器
void read5767(void); //读TEA5767寄存器
void auto_search(void); //自动搜索
///////////////////////////////////////////////////////////////////
//RADIO 部分外部调用的函数
void Radio_Freq_Show(u32 freq);//显示频率值
void Signal_CH_Show(void);//显示信号强度和频道值
////////////////////////////////////////////////////////////////////
//ALARM部分外部要用的东东
void Alarm_Init(void);
void Alarm_Viewer(void);
void Alarm_Process(void);
////////////////////////////////////////////////////////////////////
//PTGAME部分外部要用的东东
void Game_Play(void);
extern u32 *Pic_Addr;//图片地址保存区
///////////////////////////////////////////////////////////////////
//GUI部分外部调用的函数
void Load_Sys_ICO(void);//装载主界面GUI
void Select_Menu(u8 M_Type,u8 Cnt,u8 En);//选择
void Load_Gui_Bro(u8 * str);
void Load_Gui_Mp3(u16 funmark);//MP3界面
u16 File_Browse(u16 file_type);//文件浏览
u8 Load_Fun_Sel(const u8 * *list,const u8 *title,u8 *func,u8 len,u8 sel);
void Load_Gui_Radio(void);//加载收音机播放时的界面
void Load_Gui_Set_Alarm(void);//装载ALARM编辑主界面
void Load_KeyBoard(u8 load);//加载键盘
void Load_Sys_ICO(void);//加载主目录图标
void Load_Game_ICO(u8 level);//游戏界面
void Load_StratUp_Gui(void); //加载启动界面
void Load_Gui_RGBLED(void);//LED控制界面
void RGB_Bottom(u8 RGB,u8 pos);//按钮位置控制
void Load_Gui_Set_EQ(u8 kind); //装载音效管理时的界面
//GUI下面其他c文件的外部调用函数
void Set_Viewer(void); //设置功能
void Txt_Viewer(void); //文本浏览
void Time_Viewer(void);//时间显示
///////////////////////////////////////////////////////////////////
//picture.c部分外部要使用的函数
void Pic_Viewer(void); //图片浏览
//在setting.c里面被定义
extern u8 PIC_View_Status;//图片播放状态 bit6 7:模式;bit0~2 :播放间隔时间 列表
extern u8 MUS_RGB_Status; //音乐彩灯使能标志
extern const u8 PIC_Time_Table[6];
///////////////////////////////////////////////////////////////////
//MP3播放部分外部要使用的函数
void VOL_Data_Check(u8 volx,u8 *datax);
void Mus_Viewer(void); //音乐浏览
///////////////////////////////////////////////////////////////////
//RTC部分外部要使用的函数
extern const u8 mon_table[12]; //平年月份表
u8 rtc_set(u16 syear,u8 smon,u8 sday,u8 hour,u8 min,u8 sec); //重新设置RTC时间
u8 rtc_get(void); //得到RTC时间
void rtc_init(void);//初始化实时时钟
u8 GetChinaCalendar(u16 year,u8 month,u8 day,u8 *p); //得到农历日期
void GetChinaCalendarStr(u16 year,u8 month,u8 day,u8 *str); //得到甲子年农历日期字符串
void GetWeek(u16 year,u8 month,u8 day,u8 *p); //得到星期
u8 GetJieQi(u16 year,u8 month,u8 day,u8 *JQdate); //得到节气日
u8 GetJieQiStr(u16 year,u8 month,u8 day,u8 *str); //得到节气名
u8 Is_Leap_Year(u16 year); //是否闰年?
///////////////////////////////////////////////////////////////////
//温度检测部分外部要调用的函数
void init1820(void); //初始化IO口
short get1820data(void);//获得温度值
///////////////////////////////////////////////////////////////////
//共用delay.h中的函数
void delay_ms(u16);
void delay_us(u32);
///////////////////////////////////////////////////////////////////
//VS1003部分外部要用到的东西
#define MP3_DREQ (1<<9) //PC9
extern u8 vs1003ram[5];
void Vs1003_Init(void); //初始化VS1003
void Vs1003_DATA_Write(u8 data);//向vs1003写数据
void Mp3Reset(void); //硬复位
void Vs1003SoftReset(void); //软复位
void VsRamTest(void); //RAM测试
void VsSineTest(void); //正弦测试
void LoadPatch(void); //加载频谱分析代码
void GetSpec(u8 *p); //得到分析数据
u16 GetHeadInfo(void); //得到bitelv
u16 GetDecodeTime(void); //得到解码时间
void SPI1_RST(void);//spi复位
void set1003(void);
void Read_VS_Set(void);
void Save_VS_Set(void);
void TFT_ShowFFT(u8* curv,u8* topv,u8 *flyv,u32 *toppos1,u32 *toppos2);
void Drow_Line_FFT(u8 x,u16 y,u16 color);//指定行填充颜色
void Top_Delet_FFT(u8 *flyval,u32 *topstay1,u32 *topstay2);//顶点消减
////////////////////////////////////////////////////////////////////
//LRC部分外部要用的东东
u8 FindLrcFile(unsigned long dircluster,unsigned char *strName);
u8 ReadByteLrcBuf(u16 addr);//读取一格字节数据
void LyricDisplayCtrl(void);
void timer3_init(void);
void Lrc_Read_Init(void);//歌词读取初始化
////////////////////////////////////////////////////////////////////
//IIC部分外部要用的东东
void IIC_Init(void);//初始化IIC的IO口
////////////////////////////////////////////////////////////////////
//FM24C16部分外部要用的东东
u8 FM24C16_ReadOneByte(u16 ReadAddr);
void FM24C16_WriteOneByte(u16 WriteAddr,u8 DataToWrite);
void FM24C16_WriteLenByte(u16 WriteAddr,u32 DataToWrite,u8 Len);//从指定地址开始写入Len个字节
u32 FM24C16_ReadLenByte(u16 ReadAddr,u8 Len);//从指定地址开始读取Len个字节
////////////////////////////////////////////////////////////////////
//PT2314部分外部要用的东东
//音量数据缓存.0,主音量,1,高音,2,低音,3,左声道,4,右声道,5,超重低音
extern u8 voltemp[6];//声音寄存器,第一次刷机时的默认设置
extern u8 INITDSP; //0~4 eeprom级别 五种音效
extern u8 Audio_Ch; //当前播放的音源
#define FM_Audio 1 //FM音源
#define EXT_Audio 2 //外部音源
#define MP3_Audio 3 //MP3音源
#define NONE_Audio 4 //静音
void init_pt2314(u8 channal);//初始化cd3315
void save_dsp(void); //保存DSP音效
void read_dsp(void); //读取DSP音效
////////////////////////////////////////////////////////////////////
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -