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

📄 rd_uselcdsp027.lis

📁 移动机器人(小车)的物理坐标和逻辑坐标的转换源码
💻 LIS
📖 第 1 页 / 共 2 页
字号:
                        .module RD_UseLCDSP027.c
                        .area text(rom, con, rel)
 0000                   .dbfile E:\单片机\ROOBCO~1\全向定位系统\坐标转换模块\相对定位模块应用版\Relative_Locate_Module\RD_UseLCDSP027.c
                        .area data(ram, con, rel)
 0000                   .dbfile E:\单片机\ROOBCO~1\全向定位系统\坐标转换模块\相对定位模块应用版\Relative_Locate_Module\RD_UseLCDSP027.c
 0000           _LCDSP027_DispBuff:
 0000                   .blkb 2
                        .area idata
 0000 0000              .byte 0,0
                        .area data(ram, con, rel)
 0002                   .dbfile E:\单片机\ROOBCO~1\全向定位系统\坐标转换模块\相对定位模块应用版\Relative_Locate_Module\RD_UseLCDSP027.c
 0002                   .blkb 2
                        .area idata
 0002 0000              .byte 0,0
                        .area data(ram, con, rel)
 0004                   .dbfile E:\单片机\ROOBCO~1\全向定位系统\坐标转换模块\相对定位模块应用版\Relative_Locate_Module\RD_UseLCDSP027.c
 0004                   .blkb 1
                        .area idata
 0004 00                .byte 0
                        .area data(ram, con, rel)
 0005                   .dbfile E:\单片机\ROOBCO~1\全向定位系统\坐标转换模块\相对定位模块应用版\Relative_Locate_Module\RD_UseLCDSP027.c
 0005           _LCDSP027_DISPCODE:
 0005                   .blkb 2
                        .area idata
 0005 09CF              .byte 9,207
                        .area data(ram, con, rel)
 0007                   .dbfile E:\单片机\ROOBCO~1\全向定位系统\坐标转换模块\相对定位模块应用版\Relative_Locate_Module\RD_UseLCDSP027.c
 0007                   .blkb 2
                        .area idata
 0007 9185              .byte 145,133
                        .area data(ram, con, rel)
 0009                   .dbfile E:\单片机\ROOBCO~1\全向定位系统\坐标转换模块\相对定位模块应用版\Relative_Locate_Module\RD_UseLCDSP027.c
 0009                   .blkb 2
                        .area idata
 0009 4725              .byte 'G,37
                        .area data(ram, con, rel)
 000B                   .dbfile E:\单片机\ROOBCO~1\全向定位系统\坐标转换模块\相对定位模块应用版\Relative_Locate_Module\RD_UseLCDSP027.c
 000B                   .blkb 2
                        .area idata
 000B 218F              .byte 33,143
                        .area data(ram, con, rel)
 000D                   .dbfile E:\单片机\ROOBCO~1\全向定位系统\坐标转换模块\相对定位模块应用版\Relative_Locate_Module\RD_UseLCDSP027.c
 000D                   .blkb 2
                        .area idata
 000D 0105              .byte 1,5
                        .area data(ram, con, rel)
 000F                   .dbfile E:\单片机\ROOBCO~1\全向定位系统\坐标转换模块\相对定位模块应用版\Relative_Locate_Module\RD_UseLCDSP027.c
 000F                   .blkb 2
                        .area idata
 000F 0361              .byte 3,'a
                        .area data(ram, con, rel)
 0011                   .dbfile E:\单片机\ROOBCO~1\全向定位系统\坐标转换模块\相对定位模块应用版\Relative_Locate_Module\RD_UseLCDSP027.c
 0011                   .blkb 2
                        .area idata
 0011 39C1              .byte 57,193
                        .area data(ram, con, rel)
 0013                   .dbfile E:\单片机\ROOBCO~1\全向定位系统\坐标转换模块\相对定位模块应用版\Relative_Locate_Module\RD_UseLCDSP027.c
 0013                   .blkb 2
                        .area idata
 0013 3133              .byte 49,51
                        .area data(ram, con, rel)
 0015                   .dbfile E:\单片机\ROOBCO~1\全向定位系统\坐标转换模块\相对定位模块应用版\Relative_Locate_Module\RD_UseLCDSP027.c
 0015                   .blkb 2
                        .area idata
 0015 29FF              .byte 41,255
                        .area data(ram, con, rel)
 0017                   .dbfile E:\单片机\ROOBCO~1\全向定位系统\坐标转换模块\相对定位模块应用版\Relative_Locate_Module\RD_UseLCDSP027.c
 0017                   .blkb 2
                        .area idata
 0017 F717              .byte 247,23
                        .area data(ram, con, rel)
 0019                   .dbfile E:\单片机\ROOBCO~1\全向定位系统\坐标转换模块\相对定位模块应用版\Relative_Locate_Module\RD_UseLCDSP027.c
                        .area text(rom, con, rel)
 0000                   .dbfile E:\单片机\ROOBCO~1\全向定位系统\坐标转换模块\相对定位模块应用版\Relative_Locate_Module\RD_UseLCDSP027.c
 0000                   .dbfunc e LCDSP027_PrintN _LCDSP027_PrintN fV
 0000           ;       NumberA1 -> R10
 0000           ;       NumberB1 -> R12
 0000           ;       NumberC1 -> R14
 0000           ;       wAbsNUM0 -> R10,R11
 0000           ;        nNumber -> R20,R21
                        .even
 0000           _LCDSP027_PrintN::
 0000 00D0              rcall push_xgsetF0FC
 0002 A801              movw R20,R16
 0004 2597              sbiw R28,5
 0006                   .dbline -1
 0006                   .dbline 92
 0006           ; /***********************************************************
 0006           ; *   函数库说明:SP-027液晶段码显示器驱动函数库             *
 0006           ; *   版本:      v1.00                                      *
 0006           ; *   作者:      王卓然                                     *
 0006           ; *   创建日期:  2006年5月11日                              *
 0006           ; * -------------------------------------------------------- *
 0006           ; *  [支 持 库]                                              *
 0006           ; *   支持库名称:RD_UseLCDPS027.h                           *
 0006           ; *   需要版本:  v1.00                                      *
 0006           ; *   支持库说明:SP-027液晶段码显示器驱动函数库             *
 0006           ; * -------------------------------------------------------- *
 0006           ; *  [版本更新]                                              *
 0006           ; *   修改:                                                 *
 0006           ; *   修改日期:                                             *
 0006           ; *   版本:                                                 *
 0006           ; * -------------------------------------------------------- *
 0006           ; *  [版本历史]                                              *
 0006           ; * -------------------------------------------------------- *
 0006           ; *  [说    明]                                              *
 0006           ; ***********************************************************/
 0006           ; 
 0006           ; /********************
 0006           ; * 头 文 件 配 置 区 *
 0006           ; ********************/
 0006           ; # include "RD_UseLCDSP027.h"
 0006           ; 
 0006           ; /********************
 0006           ; *   系 统 宏 定 义  *
 0006           ; ********************/
 0006           ; 
 0006           ; /*------------------*
 0006           ; * 硬 件 连 接 定 义 *
 0006           ; *------------------*/
 0006           ; #ifndef SP027_DI
 0006           ;     #error None defined SP027 PIN: SP027_DI
 0006           ; #endif
 0006           ; #ifndef SP027_CLK
 0006           ;     #error None defined SP027 PIN: SP027_CLK  
 0006           ; #endif
 0006           ; # define SP027_NO_ICON      17
 0006           ; # define SP027_MID_LINE     18
 0006           ; # define SP027_CIRCLE       19
 0006           ; /********************
 0006           ; *   模块变量声明区  *
 0006           ; ********************/
 0006           ; static unsigned char LCDSP027_DispBuff[5] = {0,0,0,0,0};
 0006           ; static unsigned char LCDSP027_DISPCODE[] = {0x09,0xcf,0x91,0x85,0x47,0x25,0x21,0x8f,0x01,0x05,
 0006           ;                             0x03,0x61,0x39,0xc1,0x31,0x33,0x29,0xff,0xf7,0x17};
 0006           ; 
 0006           ; /********************
 0006           ; *   函 数 声 明 区  *
 0006           ; ********************/                            
 0006           ; void Set_DISP_BUFF_SP027(char a,char b,char c,char d,char e);
 0006           ; void LCDSP027_refresh_DISP_BUFF(void);
 0006           ; void LCDSP027_Clear(void);
 0006           ; void LCDSP027_PrintN(int16 nNumber);
 0006           ; //void LCDSP027_PrintU(uint16 nNumber);
 0006           ; 
 0006           ; /********************
 0006           ; *   模块函数声明区  *
 0006           ; ********************/
 0006           ; static void LCDSP027_Send_Data(char Data);
 0006           ; 
 0006           ; /*
 0006           ; void LCDSP027_PrintU(uint16 nNumber)
 0006           ; {
 0006           ;     uint16 wAbsNUM = nNumber;
 0006           ;     uint8 NumberA = 0;
 0006           ;     uint8 NumberB = 0;
 0006           ;     uint8 NumberC = 0;
 0006           ;     uint8 NumberD = 0;
 0006           ;     
 0006           ;     NumberD = wAbsNUM % 10;
 0006           ;     wAbsNUM = wAbsNUM * 0.1;
 0006           ;     NumberC = wAbsNUM % 10;
 0006           ;     wAbsNUM = wAbsNUM * 0.1;
 0006           ;     NumberB = wAbsNUM % 10;
 0006           ;     wAbsNUM = wAbsNUM * 0.1;
 0006           ;     NumberA = wAbsNUM % 10;
 0006           ;     
 0006           ;     Set_DISP_BUFF_SP027
 0006           ;         (
 0006           ;             NumberA,
 0006           ;             NumberB,
 0006           ;             NumberC,
 0006           ;             NumberD,
 0006           ;             SP027_NO_ICON
 0006           ;         );
 0006           ; }
 0006           ; */
 0006           ; void LCDSP027_PrintN(int16 nNumber)
 0006           ; {
 0006                   .dbline 93
 0006           ;     uint16 wAbsNUM = ABS(nNumber);
 0006 4030              cpi R20,0
 0008 E0E0              ldi R30,0
 000A 5E07              cpc R21,R30
 000C 34F4              brge L2
 000E           X0:
 000E BA01              movw R22,R20
 0010 6095              com R22
 0012 7095              com R23
 0014 6F5F              subi R22,0xFF
 0016 7F4F              sbci R23,0xFF
 0018 01C0              rjmp L3
 001A           L2:
 001A BA01              movw R22,R20
 001C           L3:
 001C 5B01              movw R10,R22
 001E                   .dbline 94
 001E           ;     uint8 NumberA = 0;
 001E                   .dbline 95
 001E           ;     uint8 NumberB = 0;
 001E                   .dbline 96
 001E           ;     uint8 NumberC = 0;
 001E                   .dbline 98
 001E           ;     
 001E           ;     NumberC = wAbsNUM % 10;
 001E 2AE0              ldi R18,10
 0020 30E0              ldi R19,0
 0022 8501              movw R16,R10
 0024 00D0              rcall mod16u
 0026 7801              movw R14,R16
 0028                   .dbline 99
 0028           ;     wAbsNUM = wAbsNUM * 0.1;
 0028 00E0              ldi R16,<L4
 002A 10E0              ldi R17,>L4
 002C 00D0              rcall lpm32
 002E 1801              movw R2,R16
 0030 2901              movw R4,R18
 0032 8501              movw R16,R10
 0034 00D0              rcall uint2fp
 0036 3A93              st -y,R19
 0038 2A93              st -y,R18
 003A 1A93              st -y,R17
 003C 0A93              st -y,R16
 003E 8101              movw R16,R2
 0040 9201              movw R18,R4
 0042 00D0              rcall fpmule2
 0044 00D0              rcall fpint
 0046 5801              movw R10,R16
 0048                   .dbline 100
 0048           ;     NumberB = wAbsNUM % 10;
 0048 2AE0              ldi R18,10
 004A 30E0              ldi R19,0
 004C 00D0              rcall mod16u
 004E 6801              movw R12,R16
 0050                   .dbline 101
 0050           ;     wAbsNUM = wAbsNUM * 0.1;
 0050 00E0              ldi R16,<L4
 0052 10E0              ldi R17,>L4
 0054 00D0              rcall lpm32
 0056 1801              movw R2,R16
 0058 2901              movw R4,R18
 005A 8501              movw R16,R10
 005C 00D0              rcall uint2fp
 005E 3A93              st -y,R19
 0060 2A93              st -y,R18
 0062 1A93              st -y,R17
 0064 0A93              st -y,R16
 0066 8101              movw R16,R2
 0068 9201              movw R18,R4
 006A 00D0              rcall fpmule2
 006C 00D0              rcall fpint
 006E                   .dbline 102
 006E           ;     NumberA = wAbsNUM % 10;
 006E 2AE0              ldi R18,10
 0070 30E0              ldi R19,0
 0072 00D0              rcall mod16u
 0074 5801              movw R10,R16
 0076                   .dbline 104
 0076           ;     
 0076           ;     if (nNumber < 0)
 0076 4030              cpi R20,0
 0078 E0E0              ldi R30,0
 007A 5E07              cpc R21,R30
 007C 44F4              brge L5
 007E           X1:
 007E                   .dbline 105
 007E           ;     {
 007E                   .dbline 106
 007E           ;         Set_DISP_BUFF_SP027
 007E 83E1              ldi R24,19
 0080 8C83              std y+4,R24
 0082 EA82              std y+2,R14
 0084 C882              std y+0,R12
 0086 2A2D              mov R18,R10
 0088 02E1              ldi R16,18
 008A 0AD0              rcall _Set_DISP_BUFF_SP027
 008C                   .dbline 114
 008C           ;         (
 008C           ;             SP027_MID_LINE,                                             
 008C           ;             NumberA,
 008C           ;             NumberB,
 008C           ;             NumberC,
 008C           ;             SP027_CIRCLE
 008C           ;         );
 008C           ;     }
 008C 07C0              rjmp L6
 008E           L5:
 008E                   .dbline 116
 008E           ;     else
 008E           ;     {
 008E                   .dbline 117
 008E           ;         Set_DISP_BUFF_SP027
 008E 83E1              ldi R24,19
 0090 8C83              std y+4,R24
 0092 EA82              std y+2,R14
 0094 C882              std y+0,R12
 0096 2A2D              mov R18,R10
 0098 01E1              ldi R16,17
 009A 02D0              rcall _Set_DISP_BUFF_SP027
 009C                   .dbline 125
 009C           ;         (
 009C           ;             SP027_NO_ICON,                                             
 009C           ;             NumberA,

⌨️ 快捷键说明

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