📄 fm_main.c
字号:
/******************
* mp3_main.c
*****************/
#include <string.h>
#include "api.h"
#include "lcd.h"
#include "common.h"
#include "ap_common.h"
#include "display.h"
#include "fm_utile.h"
#include "fm_display.h"
#include "fm_sub_menu.h"
#include "prefer.h"
#include "ui_main.h"
#include "fm_tea5767.h"
extern INT8U record_start;
UINT8 long_release=0;
BOOLEAN fm_lock;
BOOLEAN fm_init = 1;
void screen_radio_init(void)
{
/* Stop any playing process */
api_bStop();
if(fm_init)
{
fm_init = 0;
api_vSetDSPclk(12);
if(!bRadioInit())
return;
//if(!api_bRecordInit("RECORD",32768))
// return;
close_volume();
init_volume();
api_vSetFMOnOFF(FM_TRUN_ON);
api_bSetADC10SignalSrc(ADC10_SOURCE_FROM_FM);
if(bSetFmFrequency(u16RadioFrequency) == FALSE)
return;
}
ui_draw();
if(record_start)
{
if(!api_bRecordInit("RECORD",32768))
return;
api_bSetRecordFreq(8000);
api_bSetADC10SignalSrc(ADC10_SOURCE_FROM_FM);
if(!api_bRecordStart())
return;
}
screen_level = SCREEN_LEVEL_RADIO_ON;
}
void screen_radio(UINT8 key)
{
switch(key) {
case KEY_PLAY:
if(tUserPreference.Fm_StationTotalSaveNum != 0)
{
vReadStationTabFromFlash();
bFmFrequenceyDownNarrow();
bSetFmFrequency(u16RadioFrequency);
gfx_Disp_StationOrder();
gfx_radio_freq();
}
break;
case KEY_MENU:
fm_sub_menu();
break;
case KEY_NEXT:
if(!vol_flag)
{
if(bFmFrequencyUp())
{
bFmFrequenceyDownNarrow();
gfx_radio_freq();
}
}
else
{
if(tUserPreference.u8Volume<31)
{
tUserPreference.u8Volume++;
api_bSetVolume(1);
ui_show_vol();
}
}
break;
case KEY_PREV:
if(!vol_flag)
{
if(bFmFrequencyDown())
{
bFmFrequenceyDownNarrow();
gfx_radio_freq();
}
}
else
{
if(tUserPreference.u8Volume>0)
{
tUserPreference.u8Volume--;
api_bSetVolume(-1);
ui_show_vol();
}
}
break;
case KEY_AB_REPEAT:
vol_flag = !vol_flag;
ui_show_vol();
break;
case KEY_FORWARD:
if(!vol_flag)
{
if(bFmAutoSearch(SEARCH_UP) && (!long_release)){
bFmFrequenceyDownNarrow();
gfx_radio_freq();
long_release = 1;
}
}
else
{
if(tUserPreference.u8Volume<31)
{
tUserPreference.u8Volume++;
api_bSetVolume(1);
ui_show_vol();
}
}
break;
case KEY_REWIND:
if(!vol_flag)
{
if(bFmAutoSearch(SEARCH_DOWN) && (!long_release))
{
bFmFrequenceyDownNarrow();
gfx_radio_freq();
long_release = 1;
}
}
else
{
if(tUserPreference.u8Volume>0)
{
tUserPreference.u8Volume--;
api_bSetVolume(-1);
ui_show_vol();
}
}
break;
case KEY_RELEASE:
long_release = 0;
break;
default:
break;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -