📄 tuner.lis
字号:
0132 4669 .byte 'F,'i
.area data(ram, con, rel)
0134 .dbfile E:\电视接收头\高频头项目\avr\SRC\tuner.c
0134 .blkb 1
.area idata
0134 03 .byte 3
.area data(ram, con, rel)
0135 .dbfile E:\电视接收头\高频头项目\avr\SRC\tuner.c
0135 .dbsym e channel_table _channel_table A[309:103:3]c
.area text(rom, con, rel)
0000 .dbfile E:\电视接收头\高频头项目\avr\SRC\tuner.c
0000 .dbfunc e write_RF _write_RF fV
0000 ; channel -> R10
.even
0000 _write_RF::
0000 AA92 st -y,R10
0002 A02E mov R10,R16
0004 .dbline -1
0004 .dbline 157
0004 ; #include "..\inc\main.h"
0004 ;
0004 ; //函数声明
0004 ; void write_RF(BYTE channel);
0004 ; BYTE read_RF(void);
0004 ;
0004 ; BYTE channel_table[][3]=
0004 ; {
0004 ; PLL_DATA(90100-6500), /* 经济台 (调频收音)*/
0004 ; PLL_DATA(91000-6500), /* 经济台 */
0004 ; PLL_DATA(91800-6500), /* 交通台 */
0004 ; PLL_DATA(97500-6500), /* 文艺台 */
0004 ; PLL_DATA(100300-6500), /* 交通台 */
0004 ; PLL_DATA(103200-6500), /* 新闻台 */
0004 ; PLL_DATA(105000-6500), /* 星沙之声 */
0004 ; PLL_DATA(106500-6500), /* 音乐台 */
0004 ;
0004 ; PLL_DATA(49750), /* 频道DS1 (VL)*/
0004 ; PLL_DATA(57750), /* 频道DS2*/
0004 ; PLL_DATA(65750), /* 频道DS3 */
0004 ; PLL_DATA(77250), /* 频道DS4 */
0004 ; PLL_DATA(85250), /* 频道DS5 */
0004 ; PLL_DATA(112250), /* 频道Z1 */
0004 ; PLL_DATA(120250), /* 频道Z2 */
0004 ; PLL_DATA(128250), /* 频道Z3 */
0004 ; PLL_DATA(136250), /* 频道Z4 */
0004 ; PLL_DATA(144250), /* 频道Z5 */
0004 ; PLL_DATA(152250), /* 频道Z6 */
0004 ; PLL_DATA(160250), /* 频道Z7 */
0004 ;
0004 ; PLL_DATA(168250), /* 频道DS6 (VH)*/
0004 ; PLL_DATA(176250), /* 频道DS7 */
0004 ; PLL_DATA(184250), /* 频道DS8 */
0004 ; PLL_DATA(192250), /* 频道DS9 */
0004 ; PLL_DATA(200250), /* 频道DS10 */
0004 ; PLL_DATA(208250), /* 频道DS11 */
0004 ; PLL_DATA(216250), /* 频道DS12 */
0004 ; PLL_DATA(224250), /* 频道Z8 */
0004 ; PLL_DATA(232250), /* 频道Z9 */
0004 ; PLL_DATA(240250), /* 频道Z10 */
0004 ; PLL_DATA(248250), /* 频道Z11 */
0004 ; PLL_DATA(256250), /* 频道Z12 */
0004 ; PLL_DATA(264250), /* 频道Z13 */
0004 ; PLL_DATA(272250), /* 频道Z14 */
0004 ; PLL_DATA(280250), /* 频道Z15 */
0004 ; PLL_DATA(288250), /* 频道Z16 */
0004 ; PLL_DATA(296250), /* 频道Z17 */
0004 ; PLL_DATA(304250), /* 频道Z18 */
0004 ; PLL_DATA(312250), /* 频道Z19 */
0004 ; PLL_DATA(320250), /* 频道Z20 */
0004 ; PLL_DATA(328250), /* 频道Z21 */
0004 ; PLL_DATA(336250), /* 频道Z22 */
0004 ; PLL_DATA(344250), /* 频道Z23 */
0004 ; PLL_DATA(352250), /* 频道Z24 */
0004 ; PLL_DATA(360250), /* 频道Z25 */
0004 ; PLL_DATA(368250), /* 频道Z26 */
0004 ; PLL_DATA(376250), /* 频道Z27 */
0004 ; PLL_DATA(384250), /* 频道Z28 */
0004 ; PLL_DATA(392250), /* 频道Z29 */
0004 ; PLL_DATA(400250), /* 频道Z30 */
0004 ; PLL_DATA(408250), /* 频道Z31 */
0004 ; PLL_DATA(416250), /* 频道Z32 */
0004 ; PLL_DATA(424250), /* 频道Z33 */
0004 ; PLL_DATA(432250), /* 频道Z34 */
0004 ; PLL_DATA(440250), /* 频道Z35 */
0004 ; PLL_DATA(448250), /* 频道Z36 */
0004 ;
0004 ; PLL_DATA(456250), /* 频道Z37 (UHF)*/
0004 ; PLL_DATA(464250), /* 频道Z38 */
0004 ; PLL_DATA(471250), /* 频道DS13 */
0004 ; PLL_DATA(479250), /* 频道DS14 */
0004 ; PLL_DATA(487250), /* 频道DS15 */
0004 ; PLL_DATA(495250), /* 频道DS16 */
0004 ; PLL_DATA(503250), /* 频道DS17 */
0004 ; PLL_DATA(511250), /* 频道DS18 */
0004 ; PLL_DATA(519250), /* 频道DS19 */
0004 ; PLL_DATA(527250), /* 频道DS20 */
0004 ; PLL_DATA(535250), /* 频道DS21 */
0004 ; PLL_DATA(543250), /* 频道DS22 */
0004 ; PLL_DATA(551250), /* 频道DS23 */
0004 ; PLL_DATA(559250), /* 频道DS24 */
0004 ; PLL_DATA(607250), /* 频道DS25 */
0004 ; PLL_DATA(615250), /* 频道DS26 */
0004 ; PLL_DATA(623250), /* 频道DS27 */
0004 ; PLL_DATA(631250), /* 频道DS28 */
0004 ; PLL_DATA(639250), /* 频道DS29 */
0004 ; PLL_DATA(647250), /* 频道DS30 */
0004 ; PLL_DATA(655250), /* 频道DS31 */
0004 ; PLL_DATA(663250), /* 频道DS32 */
0004 ; PLL_DATA(671250), /* 频道DS33 */
0004 ; PLL_DATA(679250), /* 频道DS34 */
0004 ; PLL_DATA(687250), /* 频道DS35 */
0004 ; PLL_DATA(695250), /* 频道DS36 */
0004 ; PLL_DATA(703250), /* 频道DS37 */
0004 ; PLL_DATA(711250), /* 频道DS38 */
0004 ; PLL_DATA(719250), /* 频道DS39 */
0004 ; PLL_DATA(727250), /* 频道DS40 */
0004 ; PLL_DATA(735250), /* 频道DS41 */
0004 ; PLL_DATA(743250), /* 频道DS42 */
0004 ; PLL_DATA(751250), /* 频道DS43 */
0004 ; PLL_DATA(759250), /* 频道DS44 */
0004 ; PLL_DATA(767250), /* 频道DS45 */
0004 ; PLL_DATA(775250), /* 频道DS46 */
0004 ; PLL_DATA(783250), /* 频道DS47 */
0004 ; PLL_DATA(791250), /* 频道DS48 */
0004 ; PLL_DATA(799250), /* 频道DS49 */
0004 ; PLL_DATA(807250), /* 频道DS50 */
0004 ; PLL_DATA(815250), /* 频道DS51 */
0004 ; PLL_DATA(823250), /* 频道DS52 */
0004 ; PLL_DATA(831250), /* 频道DS53 */
0004 ; PLL_DATA(839250), /* 频道DS54 */
0004 ; PLL_DATA(847250), /* 频道DS55 */
0004 ; PLL_DATA(855250), /* 频道DS56 */
0004 ; PLL_DATA(863250), /* 频道DS57 */
0004 ; };
0004 ;
0004 ; //把频道参数写入高频头的射频部分
0004 ; #if (n)
0004 ; void write_RF(BYTE channel)
0004 ; {
0004 ; while(1)
0004 ; {
0004 ; Start_I2C();
0004 ; if(SendByte(RF_ADDR_Write))
0004 ; {
0004 ; Stop_I2C();
0004 ; continue;
0004 ; }
0004 ; if(SendByte(channel_table[channel][0]))
0004 ; {
0004 ; Stop_I2C();
0004 ; continue;
0004 ; }
0004 ; if(SendByte(channel_table[channel][1]))
0004 ; {
0004 ; Stop_I2C();
0004 ; continue;
0004 ; }
0004 ; if(SendByte(CB))
0004 ; {
0004 ; Stop_I2C();
0004 ; continue;
0004 ; }
0004 ; if(SendByte(channel_table[channel][2]))
0004 ; {
0004 ; Stop_I2C();
0004 ; continue;
0004 ; }
0004 ; Stop_I2C();
0004 ; break;
0004 ; }
0004 ; }
0004 ; #endif
0004 ;
0004 ; #if (y)
0004 ; void write_RF(BYTE channel)
0004 ; {
0004 .dbline 158
0004 ; Start_I2C();
0004 0E940000 xcall _Start_I2C
0008 .dbline 159
0008 ; SendByte(RF_ADDR_Write);
0008 02EC ldi R16,194
000A 0E940000 xcall _SendByte
000E .dbline 160
000E ; SendByte(channel_table[channel][0]);
000E 83E0 ldi R24,3
0010 8A9D mul R24,R10
0012 F001 movw R30,R0
0014 80E0 ldi R24,<_channel_table
0016 90E0 ldi R25,>_channel_table
0018 E80F add R30,R24
001A F91F adc R31,R25
001C 0081 ldd R16,z+0
001E 0E940000 xcall _SendByte
0022 .dbline 161
0022 ; SendByte(channel_table[channel][1]);
0022 83E0 ldi R24,3
0024 8A9D mul R24,R10
0026 F001 movw R30,R0
0028 80E0 ldi R24,<_channel_table+1
002A 90E0 ldi R25,>_channel_table+1
002C E80F add R30,R24
002E F91F adc R31,R25
0030 0081 ldd R16,z+0
0032 0E940000 xcall _SendByte
0036 .dbline 162
0036 ; SendByte(CB);
0036 08E8 ldi R16,136
0038 0E940000 xcall _SendByte
003C .dbline 163
003C ; SendByte(channel_table[channel][2]);
003C 83E0 ldi R24,3
003E 8A9D mul R24,R10
0040 F001 movw R30,R0
0042 80E0 ldi R24,<_channel_table+2
0044 90E0 ldi R25,>_channel_table+2
0046 E80F add R30,R24
0048 F91F adc R31,R25
004A 0081 ldd R16,z+0
004C 0E940000 xcall _SendByte
0050 .dbline 164
0050 ; Stop_I2C();;
0050 0E940000 xcall _Stop_I2C
0054 .dbline 164
0054 .dbline -2
0054 L1:
0054 .dbline 0 ; func end
0054 A990 ld R10,y+
0056 0895 ret
0058 .dbsym r channel 10 c
0058 .dbend
0058 ; }
0058 ; #endif
0058 ;
0058 ; //从射频部分读取频道参数
0058 ; #if (n)
0058 ; BYTE read_RF(void)
0058 ; {
0058 ; BYTE state;
0058 ; while(1)
0058 ; {
0058 ; Start_I2C();
0058 ; if(SendByte(RF_ADDR_Read))
0058 ; {
0058 ; Stop_I2C();
0058 ; continue;
0058 ; }
0058 ; state=ReceiveByte();
0058 ; Ack_I2C(1);
0058 ; Stop_I2C();
0058 ; break;
0058 ; }
0058 ; return (state);
0058 ; }
0058 ; #endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -