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

📄 signal.lst

📁 通信基带信号发生器的设计
💻 LST
📖 第 1 页 / 共 3 页
字号:
A51 MACRO ASSEMBLER  SIGNAL                                                               09/24/2007 11:34:46 PAGE     1


MACRO ASSEMBLER A51 V7.07
NO OBJECT MODULE REQUESTED
ASSEMBLER INVOKED BY: C:\Keil\C51\BIN\A51.EXE D:\MCU_FPGA\SIGNAL.ASM DB SB

LOC  OBJ            LINE     SOURCE

                       1            ;-----------键盘扫描相关-----------
  0030                 2             KEYH  EQU 30H          ;待扫描行线
  0031                 3             KEYL  EQU 31H          ;待扫描列线
  0032                 4             KEYZ  EQU 32H          ;按键值
  0033                 5             KEYN  EQU 33H          ;指示待扫描行
                       6            ;---------LCD显示地址相关----------
  0034                 7             COUNT EQU 34H          ;存字符显示个数
  0035                 8            COUNT1 EQU 35H          ;存输入数据位数
  0036                 9            COUNT2 EQU 36H          ;存送给LCD显示数字位数,等于COUNT1
                      10     
  0037                11             AD2   EQU 37H          ;据状态在串口通信中取数地址
  0038                12             AD4   EQU 38H          ;据状态对应相应存按键值地址(对其进行16进制转换)
                      13            ;------------16to10转换用到----------------
  003A                14             M3    EQU 3AH          ;存积的四个字节空间
  003B                15             M2    EQU 3BH
  003C                16             M1    EQU 3CH
  003D                17             M0    EQU 3DH
  004E                18             Z1    EQU 4EH          ;存每次乘积的进位
  003F                19             Z2    EQU 3FH
  0040                20             Z3    EQU 40H
                      21            ;--------10to16转化暂存区2f-28-------------
  002F                22             FIRADD    EQU    2FH
                      23            ;-----------除法用到的单元-----------------
  0041                24             DIVDLL    EQU    41H        ;定义被除数单元
  0042                25             DIVDLH    EQU    42H
  0043                26             DIVDHL    EQU    43H
  0044                27             DIVDHH    EQU    44H
  0045                28             DIVDL     EQU    45H        ;定义除数单元
  0046                29             DIVDH     EQU    46H
  0047                30             TEMPL     EQU    47H        ;定义余数单元
  0048                31             TEMPH     EQU    48H
                      32            ;-----------存按键值----------------
  0048                33             FRE   EQU 48H          ;频率48H-4FH      8位
  0050                34             FREZ  EQU 50H          ;调制频率50H-54H  5位
                      35            ;--------------位选-----------------
  00B6                36             EN    EQU P3.6         ;并行送数据用到
  00B7                37             TXD   EQU P3.7
*** _________________________________^
*** ERROR #A10 IN 37 (D:\MCU_FPGA\SIGNAL.ASM, LINE 37): ATTEMPT TO DEFINE AN ALREADY DEFINED SYMBOL
  00A5                38             RS    EQU P2.5         ;LCD控制位
  00A6                39             RW    EQU P2.6
  00A7                40             E     EQU P2.7
                      41     ;==================================================================
                      42     ;**************************主函数开始******************************
0000                  43             ORG 0000H
0000 803E             44             SJMP START
0040                  45             ORG 0040H
0040 758168           46     START:  MOV SP,#68H           ;主程序入口
0043 120291           47             LCALL INIT            ;调用LCM初始化
0046 12025C           48             LCALL WEL_XS          ;显示欢迎界面
                      49     
0049 75350C           50     NEXT1:  MOV COUNT1,#0CH
004C 7880             51             MOV R0,#80H
004E 7600             52             MOV @R0,#0
0050 08               53             INC R0
0051 D535F5           54             DJNZ COUNT1,NEXT1
0054 7880             55             MOV R0,#80H           ;给发送空间赋标志值(每次发4个字节)
0056 76E7             56             MOV @R0,#0E7H
A51 MACRO ASSEMBLER  SIGNAL                                                               09/24/2007 11:34:46 PAGE     2

0058 7885             57             MOV R0,#85H
005A 76E6             58             MOV @R0,#0E6H
005C 788A             59             MOV R0,#8AH
005E 76E4             60             MOV @R0,#0E4H
                      61     ;*******************以下输入频率\幅度\相位\模式******************
0060 12020D           62     MAIN:   LCALL KEY
0063 E532             63             MOV A,KEYZ
0065 C3               64             CLR C
0066 940B             65             SUBB A,#0BH
0068 40F6             66             JC MAIN
006A 75F002           67             MOV B,#2
006D A4               68             MUL AB
006E 90039B           69             MOV DPTR,#TAB1
0071 73               70             JMP @A+DPTR
                      71     ;----------------------------------------------------------------
0072 1176             72     MS_IN:  ACALL MS_1
0074 0160             73             AJMP MAIN
                      74     
0076 7480             75     MS_1:   MOV A,#80H             ;在该行从新显示'MOD?'
0078 1202BC           76             LCALL SEND_I
007B 90035B           77             MOV DPTR,#TAB_MS
007E 753406           78             MOV COUNT,#6
0081 120279           79             LCALL QUWRD
0084 740E             80             MOV  A,#0EH            ;开光标
0086 1202BC           81             LCALL SEND_I
0089 12020D           82     MS2:    LCALL KEY
008C E532             83             MOV A,KEYZ
008E C3               84             CLR C
008F 9405             85             SUBB A,#5              ;是否为有效模式键(0-5)
0091 50F6             86             JNC MS2
0093 740C             87     MS3:    MOV A,#0CH             ;关光标
0095 1202BC           88             LCALL SEND_I
0098 7881             89             MOV R0,#81H            ;将模式值存入发送空间
009A A632             90             MOV @R0,KEYZ
009C 753410           91             MOV COUNT,#10H
                      92     
009F B60005           93             CJNE @R0,#00H,MS4
00A2 9002FB           94             MOV DPTR,#TAB_SIN
00A5 8029             95             SJMP MS9
00A7 B60108           96     MS4:    CJNE @R0,#01H,MS5
00AA 90030B           97             MOV DPTR,#TAB_AM       ;在AM、FM下只占6位显示
00AD 753406           98             MOV COUNT,#6H
00B0 801E             99             SJMP MS9
00B2 B60208          100     MS5:    CJNE @R0,#02H,MS6
00B5 90031B          101             MOV DPTR,#TAB_FM
00B8 753406          102             MOV COUNT,#6H
00BB 8013            103             SJMP MS9
00BD B60305          104     MS6:    CJNE @R0,#03H,MS7
00C0 90032B          105             MOV DPTR,#TAB_ASK
00C3 800B            106             SJMP MS9
00C5 B60405          107     MS7:    CJNE @R0,#04H,MS8
00C8 90033B          108             MOV DPTR,#TAB_FSK
00CB 8003            109             SJMP MS9
00CD 90034B          110     MS8:    MOV DPTR,#TAB_PSK
                     111     
00D0 7480            112     MS9:    MOV A,#80H
00D2 51BC            113             ACALL SEND_I
00D4 5179            114             ACALL QUWRD
00D6 753780          115             MOV AD2,#80H
00D9 1201EF          116             LCALL TRAN
00DC 22              117             RET
                     118     ;----------------------------------------------------------------
00DD 11E1            119     FRE_IN: ACALL FRE_1
00DF 0160            120             AJMP MAIN
                     121     
00E1 753848          122     FRE_1:  MOV AD4,#48H
A51 MACRO ASSEMBLER  SIGNAL                                                               09/24/2007 11:34:46 PAGE     3

00E4 753500          123             MOV COUNT1,#0
                     124     
00E7 74C0            125             MOV A,#0C0H            ;在该行从新显示'FRE:'
00E9 1202BC          126             LCALL SEND_I
00EC 753410          127             MOV COUNT,#10H
00EF 90036B          128             MOV DPTR,#TAB_FRE
00F2 120279          129             LCALL QUWRD
00F5 74C4            130             MOV A,#0C4H
00F7 1202BC          131             LCALL SEND_I
00FA 12014D          132             LCALL DATAIN
                     133     
00FD 753848          134     FRE_2:  MOV AD4,#48H
0100 853536          135             MOV COUNT2,COUNT1
0103 12017D          136             LCALL ZHUANHUAN
0106 753786          137             MOV AD2,#86H
0109 1201E1          138             LCALL CHUNSHU
010C 753785          139             MOV AD2,#85H
010F 1201EF          140             LCALL TRAN
0112 22              141             RET
                     142     ;----------------------------------------------------------------
0113 3117            143     FREZ_IN:ACALL FREZ_1
0115 0160            144             AJMP MAIN
                     145     
0117 753850          146     FREZ_1: MOV AD4,#50H
011A 753500          147             MOV COUNT1,#0
                     148     
011D 7485            149             MOV A,#85H             ;在该行从新显示'FRE:'
011F 1202BC          150             LCALL SEND_I
0122 75340A          151             MOV COUNT,#0AH
0125 90037B          152             MOV DPTR,#TAB_FREZ
0128 120279          153             LCALL QUWRD
012B 748A            154             MOV A,#8AH
012D 1202BC          155             LCALL SEND_I
0130 12014D          156             LCALL DATAIN
                     157     
0133 753850          158     FREZ_2: MOV AD4,#50H
0136 853536          159             MOV COUNT2,COUNT1
0139 12017D          160             LCALL ZHUANHUAN
013C 753786          161             MOV AD2,#86H
013F 1201E1          162             LCALL CHUNSHU
0142 753785          163             MOV AD2,#85H
0145 1201EF          164             LCALL TRAN
0148 22              165             RET
                     166     ;----------------------------------------------------------------
0149 0160            167     JIA_IN: AJMP MAIN
                     168     
                     169     ;----------------------------------------------------------------
014B 0160            170     JIAN_IN:AJMP MAIN
                     171     
                     172     ;========================================================================
                     173     ;***************************数据输入程序*********************************
014D 740E            174     DATAIN:MOV A,#0EH           ;开光标
014F 1202BC          175            LCALL SEND_I
0152 12020D          176     DATA3: LCALL KEY
0155 E532            177            MOV A,KEYZ
0157 B40A07          178            CJNE A,#0AH,DATA1    ;是否为确认键
015A E535            179            MOV A,COUNT1
015C B40018          180            CJNE A,#0,DATA2      ;按下的为确认键,且已经输入数字则退出
015F 80F1            181            SJMP DATA3
0161 C3              182     DATA1: CLR C
0162 940A            183            SUBB A,#0AH
0164 50EC            184            JNC DATA3
0166 A938            185            MOV R1,AD4
0168 A732            186            MOV @R1,KEYZ
016A E532            187            MOV A,KEYZ

⌨️ 快捷键说明

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