📄 fm_utile.lst
字号:
C51 COMPILER V7.50 FM_UTILE 08/18/2008 13:49:44 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE FM_UTILE
OBJECT MODULE PLACED IN ..\output\output_bin\output_fm\fm_utile.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE ..\..\code\ap_fm\src\fm_utile.c LARGE OPTIMIZE(9,SIZE) BROWSE INCDIR(..\..\
-..\bsp\include;..\..\code\ap_fm\src\include;..\..\code\global;..\..\code\include) DEFINE(CONFIG_ASIC,dynamic_load) DEBUG
- OBJECTEXTEND PRINT(..\output\output_bin\output_fm\fm_utile.lst) OBJECT(..\output\output_bin\output_fm\fm_utile.obj)
line level source
1 /****************************
2 * mp3_utile.c
3 ****************************/
4
5 #include <string.h>
6 #include "api.h"
7 #include "lcd.h"
8 #include "common.h"
9 #include "display.h"
10 #include "fm_display.h"
11 #include "fm_main.h"
12 #include "prefer.h"
13 #include "fm_tea5767.h"
14
15
16 void vSaveStationTabToFlash()
17 {
18 1 tUserPreference.Fm_StationTable[tUserPreference.Fm_StationCurrSaveOrder] = u16RadioFrequency;
19 1 tUserPreference.Fm_StationCurrSaveOrder++;
20 1 if (tUserPreference.Fm_StationTotalSaveNum < 20) //Fm_StationTotalNum为保存的电台总数,范围为0-20而不是0
--19
21 1 tUserPreference.Fm_StationTotalSaveNum = tUserPreference.Fm_StationCurrSaveOrder;
22 1 if (tUserPreference.Fm_StationCurrSaveOrder>19)
23 1 {
24 2 tUserPreference.Fm_StationCurrSaveOrder = 0;
25 2 tUserPreference.Fm_StationTotalSaveNum = 20;
26 2 }
27 1 api_bSavePreferenceData(&tUserPreference,sizeof(USER_PREFERENCE_T));
28 1 }
29
30 void vReadStationTabFromFlash()
31 {
32 1
33 1 INT8U i;
34 1 for(i = 0;i<tUserPreference.Fm_StationTotalSaveNum;i++)
35 1 {
36 2 if(tUserPreference.Fm_StationTable[i] > FM_FREQ_MAX)
37 2 tUserPreference.Fm_StationTable[i] = FM_FREQ_MIN;
38 2 if(tUserPreference.Fm_StationTable[i] < FM_FREQ_MIN)
39 2 tUserPreference.Fm_StationTable[i] = FM_FREQ_MAX;
40 2 }
41 1 u16RadioFrequency = tUserPreference.Fm_StationTable[tUserPreference.Fm_StationCurrPlayOrder];
42 1 if (tUserPreference.Fm_StationCurrPlayOrder >= tUserPreference.Fm_StationTotalSaveNum-1)
43 1 tUserPreference.Fm_StationCurrPlayOrder = 0;
44 1 else
45 1 tUserPreference.Fm_StationCurrPlayOrder++;
46 1
47 1 }
48
49 void vDeleteCurrStation()
50 {
51 1 INT8U i;
52 1
C51 COMPILER V7.50 FM_UTILE 08/18/2008 13:49:44 PAGE 2
53 1 if(tUserPreference.Fm_StationTotalSaveNum == 0)
54 1 {
55 2 tUserPreference.Fm_StationCurrSaveOrder = 0;
56 2 return;
57 2 }
58 1 for(i=tUserPreference.Fm_StationCurrPlayOrder;i<tUserPreference.Fm_StationTotalSaveNum;)
59 1 tUserPreference.Fm_StationTable[i] = tUserPreference.Fm_StationTable[++i];
60 1 tUserPreference.Fm_StationTotalSaveNum--;
61 1 }
62
63 void vDeleteAllStation()
64 {
65 1 tUserPreference.Fm_StationCurrPlayOrder = 0;
66 1 tUserPreference.Fm_StationCurrSaveOrder = 0;
67 1 tUserPreference.Fm_StationTotalSaveNum = 0;
68 1 }
69
70
71 #if 0// marco mark for fm auto search bug
void autosearch()
{
u16RadioFrequency = FM_FREQ_MIN;
vDeleteAllStation();//删除所有电台
close_volume();
ui_draw1();
while(u16RadioFrequency < FM_FREQ_MAX)
{
if(bFmAutoSearch(SEARCH_UP))
vSaveStationTabToFlash();
bFmFrequenceyDownNarrow();
gfx_radio_freq();
}
tUserPreference.Fm_StationCurrPlayOrder= 0;
vReadStationTabFromFlash();
bSetFmFrequency(u16RadioFrequency);
gfx_Disp_StationOrder();
gfx_radio_freq();
close_volume();
init_volume();
}
#else
94 void autosearch()
95 {
96 1 u16RadioFrequency = FM_FREQ_MIN;
97 1 vDeleteAllStation();//删除所有电台
98 1 close_volume();
99 1 ui_draw();
100 1
101 1 while(u16RadioFrequency < FM_FREQ_MAX)
102 1 {
103 2
104 2 if(bFmFrequencyUp())
105 2 {
106 3 bFmFrequenceyDownNarrow();
107 3 gfx_radio_freq();
108 3 }
109 2 if(bFmSearchRead())
110 2 {
111 3 vSaveStationTabToFlash();
112 3 //gfx_Disp_StationOrder_all();
113 3 }
114 2 bFmFrequenceyDownNarrow();
C51 COMPILER V7.50 FM_UTILE 08/18/2008 13:49:44 PAGE 3
115 2 gfx_radio_freq();
116 2 if(u16RadioFrequency == FM_FREQ_MIN)
117 2 break;
118 2 }
119 1
120 1
121 1 if(tUserPreference.Fm_StationTotalSaveNum != 0)
122 1 {
123 2 tUserPreference.Fm_StationCurrPlayOrder= 0;
124 2 vReadStationTabFromFlash();
125 2
126 2 }
127 1 else
128 1 {
129 2 u16RadioFrequency = FM_FREQ_MIN;
130 2 }
131 1 bSetFmFrequency(u16RadioFrequency);
132 1 gfx_Disp_StationOrder();
133 1 gfx_radio_freq();
134 1 // close_volume();
135 1 init_volume();
136 1 }
137
138
139
140 #endif
141
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 358 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -