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

📄 11.lst

📁 单片机8051的若干实用程序
💻 LST
📖 第 1 页 / 共 3 页
字号:
                                                                    01-29-03
                                                                    01:55:34
伟福汇编器 V5.00                             Copyright (c) 1989, 2001 by CHY

地址  机器码 源程序

            ;04号键功能程序(频率预置键)
017E 752901 KEYFUN04:    MOV   29H,#01H       ; 预置109.0MHZ发射频率
0181 752800              MOV   28H,#00H
0184 752709              MOV   27H,#09H
0187 752600              MOV   26H,#00H
018A 12023F              LCALL  DISPUPDAT       ;写入控制芯片(修改发射频率)
018D 22                  RET
            ;
            ;05号键功能程序(频率预置键)
018E 752901 KEYFUN05:    MOV   29H,#01H       ; 预置108.0MHZ发射频率
0191 752800              MOV   28H,#00H
0194 752708              MOV   27H,#08H
0197 752600              MOV   26H,#00H
019A 12023F              LCALL  DISPUPDAT       ;写入控制芯片(修改发射频率)
019D 22                  RET
            ;
            ;06号键功能程序(频率预置键)
019E 752901 KEYFUN06:    MOV   29H,#01H       ; 预置105.0MHZ发射频率
01A1 752800              MOV   28H,#00H
01A4 752705              MOV   27H,#05H
01A7 752600              MOV   26H,#00H
01AA 12023F              LCALL  DISPUPDAT       ;写入控制芯片(修改发射频率)
01AD 22                  RET
            ;
            ;07号键功能程序(频率预置键)
01AE 752901 KEYFUN07:    MOV   29H,#01H       ; 预置100.0MHZ发射频率
01B1 752800              MOV   28H,#00H
01B4 752700              MOV   27H,#00H
01B7 752600              MOV   26H,#00H
01BA 12023F              LCALL  DISPUPDAT       ;写入控制芯片(修改发射频率)
01BD 22                  RET
            ;
            ;08号键功能程序(频率预置键)
01BE 752900 KEYFUN08:    MOV   29H,#00H        ; 预置98.0MHZ发射频率
01C1 752809              MOV   28H,#09H
01C4 752708              MOV   27H,#08H
01C7 752600              MOV   26H,#00H
01CA 12023F              LCALL  DISPUPDAT       ;写入控制芯片(修改发射频率)
01CD 22                  RET
            ;
            ;09号键功能程序(频率预置键)
01CE 752900 KEYFUN09:    MOV   29H,#00H         ; 预置96.0MHZ发射频率
01D1 752809              MOV   28H,#09H
01D4 752706              MOV   27H,#06H
01D7 752600              MOV   26H,#00H
01DA 12023F              LCALL  DISPUPDAT       ;写入控制芯片(修改发射频率)
01DD 22                  RET
            ;


C:\MY DOCUMENTS\2003.02.12书稿\配套光盘源程序\实例11\11.ASM   
 
                                                                    页     6
                                                                    01-29-03
                                                                    01:55:34
伟福汇编器 V5.00                             Copyright (c) 1989, 2001 by CHY

地址  机器码 源程序

            ;10号键功能程序(频率预置键)
01DE 752900 KEYFUN10:    MOV   29H,#00H         ; 预置94.0MHZ发射频率
01E1 752809              MOV   28H,#09H
01E4 752704              MOV   27H,#04H
01E7 752600              MOV   26H,#00H
01EA 12023F              LCALL  DISPUPDAT       ;写入控制芯片(修改发射频率)
01ED 22                  RET
            ;
            ;11号键功能程序(频率预置键)
01EE 752900 KEYFUN11:    MOV   29H,#00H         ; 预置92.0MHZ发射频率
01F1 752809              MOV   28H,#09H
01F4 752702              MOV   27H,#02H
01F7 752600              MOV   26H,#00H
01FA 12023F              LCALL  DISPUPDAT       ;写入控制芯片(修改发射频率)
01FD 22                  RET
            ;
            ;12号键功能程序(频率预置键)
01FE 752900 KEYFUN12:    MOV   29H,#00H         ; 预置90.0MHZ发射频率
0201 752809              MOV   28H,#09H
0204 752700              MOV   27H,#00H
0207 752600              MOV   26H,#00H
020A 12023F              LCALL  DISPUPDAT       ;写入控制芯片(修改发射频率)
020D 22                  RET
            ;
            ;13号键功能程序(频率预置键)
020E 752900 KEYFUN13:    MOV   29H,#00H         ; 预置88.0MHZ发射频率
0211 752808              MOV   28H,#08H
0214 752708              MOV   27H,#08H
0217 752600              MOV   26H,#00H
021A 12023F              LCALL  DISPUPDAT       ;写入控制芯片(修改发射频率)
021D 22                  RET
            ;
            ;14号键功能程序(频率预置键)        ; 预置87.0MHZ发射频率
021E 752900 KEYFUN14:    MOV   29H,#00H
0221 752808              MOV   28H,#08H
0224 752707              MOV   27H,#07H
0227 752608              MOV   26H,#08H
022A 12023F              LCALL  DISPUPDAT       ;写入控制芯片(修改发射频率)
022D 22                  RET
            ;
            ;15号键功能程序(立体声/单声道设置键)
022E B203   KEYFUN15:    CPL   03H         		;立体/单声标志取反
0230 300306              JNB    03H,MONO   		;为0转单声道MONO
0233 C2B3                CLR    P3.3   			;为1开立体声指示灯
0235 1202C0              LCALL  PUTBIT   		;发送控制字至BH1415
0238 22                  RET   					;返回
0239 D2B3   MONO:        SETB   P3.3   			;关立体声指示灯
023B 1202C0              LCALL  PUTBIT   		;发控制字至BH1415


C:\MY DOCUMENTS\2003.02.12书稿\配套光盘源程序\实例11\11.ASM   
 
                                                                    页     7
                                                                    01-29-03
                                                                    01:55:34
伟福汇编器 V5.00                             Copyright (c) 1989, 2001 by CHY

地址  机器码 源程序

023E 22                  RET   					;返回
            ;
            ; 将BCD码转为十六进制数,与5位控制码合成操作码,写入控制芯片
023F 120249 DISPUPDAT:   LCALL  BCDB       		; 调BCD码转为十六进制数程序
0242 120282              LCALL  CONCOMMAND  		; 调与5位控制码合成操作码程序
0245 1202C0              LCALL  PUTBIT       	; 发控制字至BH1415
0248 22                  RET   					;返回
            ;
            ; 将BCD码转为十六进制数程序
0249 752100 BCDB:        MOV    CONBITL,#00H   	; 控制字清0
024C 752200              MOV    CONBITH,#00H   	; 控制字清0
024F 852621              MOV    CONBITL,26H   	;小数位数放入控制字低8位
0252 E527                MOV    A,27H   			;个位数乘10操作
0254 75F00A              MOV    B,#10   			;
0257 120275              LCALL  MULLOOP   		;调乘法子程序
025A E528                MOV    A,28H   			;十位数乘100操作
025C 75F064              MOV    B,#100   		;
025F 120275              LCALL  MULLOOP   		; 调乘法子程序
0262 E529                MOV    A,29H   			;
0264 7001                JNZ    ADD3E8   		;百位数为1转ADD3E8(加1000操作)
0266 22                  RET   					; 百位数为0退出
0267 C3     ADD3E8:      CLR    C   				;清进位档标志
0268 74E8                MOV    A,#0E8H   			;低8位加法
026A 2521                ADD    A,CONBITL   			;累加
026C F521                MOV    CONBITL,A   			;放回CONBITL
026E 7403                MOV    A,#03H   			; 高8位加法
0270 3522                ADDC   A,CONBITH   			;控制字高8位处理
0272 F522                MOV    CONBITH,A   			;放回CONBITH
0274 22                  RET   						;返回
            ;
            ;乘法及累加处理程序(将四位显示的十进制BCD码转为1个二进制数)
0275 A4     MULLOOP:     MUL    AB   				;乘法
0276 C3                  CLR    C   					;清进位标志
0277 2521                ADD    A,CONBITL   			;积低8位与CONBITL相加
0279 F521                MOV    CONBITL,A   			;放回CONBITL
027B E522                MOV    A,CONBITH   			;
027D 35F0                ADDC   A,B   				;积高8位与CONBITH带进位累加
027F F522                MOV    CONBITH,A   			;放回CONBITH
0281 22                  RET   						;返回
            ;
            ;频率控制数据与5位控制码合成BH1415控制字
0282 532207 CONCOMMAND:   ANL   CONBITH,#07H   		;高四位为0
0285 E520                MOV   A,20H   				;控制字放入A
0287 4522                ORL   A,CONBITH   			;合成控制字
0289 F522                MOV   CONBITH,A   			;放回CONBITH
028B 22                  RET   						;返回
            ;
            ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


C:\MY DOCUMENTS\2003.02.12书稿\配套光盘源程序\实例11\11.ASM   
 
                                                                    页     8
                                                                    01-29-03
                                                                    01:55:34
伟福汇编器 V5.00                             Copyright (c) 1989, 2001 by CHY

地址  机器码 源程序

            ;;           显示程序                  ;;
            ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
            ;共阳LED显示,P0口输出段码,P2口输出扫描字
028C 7926   DISPLAY:     MOV R1,#26H   				;显示首址
028E 7DFE                MOV R5,#0FEH   				;设扫描字
0290 ED     PLAY:        MOV A,R5   					;放入A
0291 F5A0                MOV P2,A   					;P2口输出
0293 E7                  MOV A,@R1   				;取显示数据
0294 9002B4              MOV DPTR,#TAB   			;取段码表首址
0297 93                  MOVC A,@A+DPTR   			;查段码
0298 F580                MOV P0,A   					;从P0输出
029A ED                  MOV A,R5   					;读入扫描字
029B 20E102              JB ACC.1,PLAY1   			; 不是十位(LED),不显示小数点
029E C287                CLR P0.7   					;是十位,显示小数点
02A0 1202ED PLAY1:       LCALL DL1MS   				;点亮1毫秒
02A3 09                  INC R1   					;指向下一显示数据
02A4 30E306              JNB ACC.3,ENDOUT   			;是第四位LED,退出
02A7 23                  RL A   						;不是,左移一位
02A8 FD                  MOV R5,A   					;放回R5
02A9 D287                SETB  P0.7   				;关小数点
02AB 4190                AJMP PLAY   				;转PLAY循环
02AD 75A0FF ENDOUT:      MOV  P2,#0FFH   			;显示结束,关显示输出口
02B0 7580FF              MOV  P0,#0FFH   			;
02B3 22                  RET   						;返回
            ;
            ;0-9共阳段码表
02B4 C0F9A4 
02B7 B09992 
02BA 82F880 
02BD 90FFFF TAB: DB  0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,0FFH,0FFH
            ;
            ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
            ;;           发送控制字节子程序        ;;
            ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
            ;
02C0 E521   PUTBIT:      MOV   A,CONBITL   			;低8位控制字入A
02C2 D2B2                SETB  P3.2   				;BH1415使能(允许写)
02C4 1202D3              LCALL PUT   				;发送8位
02C7 E522                MOV   A,CONBITH   			; 高8位控制字入A
02C9 1202D3              LCALL PUT   				; 发送8位
02CC C2B2                CLR   P3.2   				; BH1415写禁止
02CE C2B0                CLR   P3.0   				;复位
02D0 C2B1                CLR   P3.1   				;复位
02D2 22                  RET   						;返回
            ;
            ;字节发送子程序
02D3 7B08   PUT:         MOV   R3,#8   				;发送8位控制
02D5 C3                  CLR   C   					;清C


C:\MY DOCUMENTS\2003.02.12书稿\配套光盘源程序\实例11\11.ASM   
 
                                                                    页     9
                                                                    01-29-03

⌨️ 快捷键说明

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