⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 nec_fp.lis

📁 sunplus spca514 cdmp3 源码
💻 LIS
📖 第 1 页 / 共 2 页
字号:
                         .module nec_fp.c
                         .area text(rom, con, rel)
 0000                   .dbfile D:\avrmcu\AT980\nec_fp.c
 0000                   .dbfunc s VFD_LL_WriteByte _VFD_LL_WriteByte fI
                       ;              i -> R20
                       ;           byte -> R16
                         .even
 0000                 _VFD_LL_WriteByte:
 0000 0E940000          xcall push_gset1
 0004                   .dbline -1
 0004                   .dbline 8
                       ; #include "main.h"
                       ; #include "nec_fp.h"
                       ; #include <iom163.h>
                       ; #include "io.h"
                       ; unsigned char p_keycode[BYTES_USED_TO_SCANKEY];
                       ; 
                       ; static void VFD_LL_WriteByte( unsigned char byte )
                       ; {
 0004                   .dbline 11
                       ;     register unsigned char i;
                       ; 
                       ;     for( i=0x01;  i!=0; i<<=1 )  
 0004 41E0              ldi R20,1
 0006 0AC0              xjmp L5
 0008                 L2:
 0008                   .dbline 12
                       ;     {
 0008                   .dbline 13
                       ;       Set_Fp_CLK_L();
 0008 AF98              CBI 0x15,7
 000A                   .dbline 15
                       ;      
                       ;       if(byte&i)
 000A 202E              mov R2,R16
 000C 2422              and R2,R20
 000E 2220              tst R2
 0010 11F0              breq L6
 0012                   .dbline 16
                       ;         Set_Fp_DOUT_H();
 0012 AD9A              SBI 0x15,5
 0014 01C0              xjmp L7
 0016                 L6:
 0016                   .dbline 18
                       ;       else
                       ;         Set_Fp_DOUT_L();
 0016 AD98              CBI 0x15,5
 0018                 L7:
 0018                   .dbline 20
 0018 AF9A              SBI 0x15,7
 001A                   .dbline 21
 001A                 L3:
 001A                   .dbline 11
 001A 440F              lsl R20
 001C                 L5:
 001C                   .dbline 11
 001C 4423              tst R20
 001E A1F7              brne L2
 0020                   .dbline -2
 0020                   .dbline 22
                       ;     
                       ;       Set_Fp_CLK_H();
                       ;     }
                       ; }
 0020                 L1:
 0020 0E940000          xcall pop_gset1
 0024                   .dbline 0 ; func end
 0024 0895              ret
 0026                   .dbsym r i 20 c
 0026                   .dbsym r byte 16 c
 0026                   .dbfunc s VFD_LL_ReadByte _VFD_LL_ReadByte fI
                       ;          value -> R20
                       ;              i -> R22
                       ;           byte -> R10,R11
                         .even
 0026                 _VFD_LL_ReadByte:
 0026 0E940000          xcall push_gset3
 002A 5801              movw R10,R16
 002C                   .dbline -1
 002C                   .dbline 24
                       ; static void VFD_LL_ReadByte( unsigned char *byte )
                       ; {
 002C                   .dbline 31
                       ;     unsigned char value;
                       ;     register unsigned char i;
                       ;     // unsigned char value; 
                       ; 
                       ;     //Set_Fp_CLK_H();
                       ;     //*byte = 0;   //FW 0117 Clear byte first
                       ;     value = 0;
 002C 4427              clr R20
 002E                   .dbline 32
                       ;     for( i=0; i<8; i++ )
 002E 6627              clr R22
 0030 0BC0              xjmp L12
 0032                 L9:
 0032                   .dbline 33
                       ;     {
 0032                   .dbline 34
                       ;       Set_Fp_CLK_L();
 0032 AF98              CBI 0x15,7
 0034                   .dbline 36
                       ;      // *byte >>=1;
                       ;       value >>=1;
 0034 4695              lsr R20
 0036                   .dbline 37
                       ;       soft_delay();
 0036 0E940000          xcall _soft_delay
 003A                   .dbline 38
                       ;       if(Get_Fp_DIN())
 003A 9D9B              sbis 0x13,5
 003C 01C0              rjmp L13
 003E                   .dbline 40
                       ;         //*byte |= 0x80;
                       ;         value |= 0x80;
 003E 4068              ori R20,128
 0040                 L13:
 0040                   .dbline 41
 0040 AF9A              SBI 0x15,7
 0042                   .dbline 42
 0042 0E940000          xcall _soft_delay
 0046                   .dbline 43
 0046                 L10:
 0046                   .dbline 32
 0046 6395              inc R22
 0048                 L12:
 0048                   .dbline 32
 0048 6830              cpi R22,8
 004A 98F3              brlo L9
 004C                   .dbline 44
                       ;       Set_Fp_CLK_H();
                       ;      soft_delay();
                       ;     }
                       ;     *byte = value;
 004C F501              movw R30,R10
 004E 4083              std z+0,R20
 0050                   .dbline -2
 0050                   .dbline 49
                       ;      //Set_Fp_CLK_L();
                       ;      //if(Get_Fp_DIN())
                       ;       //*byte |= 0x80;
                       ;      //Set_Fp_CLK_H();
                       ; }
 0050                 L8:
 0050 0E940000          xcall pop_gset3
 0054                   .dbline 0 ; func end
 0054 0895              ret
 0056                   .dbsym r value 20 c
 0056                   .dbsym r i 22 c
 0056                   .dbsym r byte 10 pc
 0056                   .dbfunc s VFD_LL_SetDim _VFD_LL_SetDim fI
                       ; real_dim_value -> R20
                         .even
 0056                 _VFD_LL_SetDim::
 0056 0E940000          xcall push_gset1
 005A 402F              mov R20,R16
 005C                   .dbline -1
 005C                   .dbline 51
                       ; void VFD_LL_SetDim(unsigned char real_dim_value)
                       ; {
 005C                   .dbline 53
                       ;   
                       ;   Set_Fp_STB_L();
 005C AE98              CBI 0x15,6
 005E                   .dbline 56
                       ;   
                       ;  
                       ;   VFD_LL_WriteByte( DISPLAY_CONTROL | real_dim_value );
 005E 042F              mov R16,R20
 0060 0068              ori R16,128
 0062 CEDF              xcall _VFD_LL_WriteByte
 0064                   .dbline 59
                       ; 
                       ;   
                       ;   Set_Fp_STB_H();
 0064 AE9A              SBI 0x15,6
 0066                   .dbline -2
 0066                   .dbline 61
                       ; 
                       ; }
 0066                 L15:
 0066 0E940000          xcall pop_gset1
 006A                   .dbline 0 ; func end
 006A 0895              ret
 006C                   .dbsym r real_dim_value 20 c
 006C                   .dbfunc s VFD_LL_SetGrid _VFD_LL_SetGrid fI
                         .even
 006C                 _VFD_LL_SetGrid::
 006C                   .dbline -1
 006C                   .dbline 63
                       ; void VFD_LL_SetGrid(void)
                       ; {
 006C                   .dbline 68
                       ;     
                       ;     //Set_Fp_STB_H();
                       ; 
                       ;     
                       ;     Set_Fp_STB_L();
 006C AE98              CBI 0x15,6
 006E                   .dbline 70
                       ; 
                       ;     VFD_LL_WriteByte( DISPLAY_MODE| REAL_GRID_VALUE );
 006E 0AE0              ldi R16,10
 0070 C7DF              xcall _VFD_LL_WriteByte
 0072                   .dbline 71
                       ;     Set_Fp_STB_H();
 0072 AE9A              SBI 0x15,6
 0074                   .dbline -2
 0074                   .dbline 74
                       ;     
                       ;     //VFD_LL_SetDim(0x0f);
                       ; }
 0074                 L16:

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -