单片机课程设计(各题目程序).doc
文本预览下载声明
;任务:题目1 数据采集系统 的第1个小题
;硬件连接:电位器接IN0
;硬件连接:P3.2接ADC0809的EOC
;硬件连接:KEY/LED_CS接CS0
;硬件连接:ADC0809_CS接CS1
;操作方法:
;1、开机后显示班级、学号 H082 31 ;
;2、用的是实验箱键盘最后一排的六个键,依次为:“设定” “加一 减一 换位” ”确定“ ”运行“;
;3、按“设定”键,默认第一位闪烁,此时按“加一”和“减一”键可以调整数值;
;4、设定完一位后,按“换位”键可以对下一位进行设定;
;5、四位都设定完之后,按“确定”键,去闪烁,并将参数01下设定的值保存;
;6、再按下“确定”键,跳至参数02,此时可以依照步骤3对其进行设置;
;7、参数01、02、03、04设定好之后,可以按“确定”键对设定的值查询;
;8、在不同的参数下,按下“运行”键可以将以该设定值为最大值,0为最小值的AD转换结果显示到前四位数码管上;
;9、如果运行时还想设置,则可以按下〃设定”键,然后依照步骤3对其设置。
OUTBIT EQU 08002H ;位控制器
OUTSEG EQU 08004H ;段控制器
IN EQU 08001H ;键盘读入口
CS0809 EQU 09000H
LEDBUF EQU 30H ;显示缓冲区
CAN EQU 51H ;参数1234
ORG 0000H
LJMP START
ORG 0020H
START:MOV 25H,#00H
MOV LEDBUF,#11H ;班级、学号的序码
MOV LEDBUF+1,#00H
MOV LEDBUF+2,#08H
MOV LEDBUF+3,#01H
MOV LEDBUF+4,#01H
MOV LEDBUF+5,#04H
MOV 36H,#00H
MOV 40H,#00H ;参数1下的设定值缓冲区
MOV 41H,#00H
MOV 42H,#00H
MOV 43H,#00H
MOV 44H,#00H ;参数2下的设定值缓冲区
MOV 45H,#00H
MOV 46H,#00H
MOV 47H,#00H
MOV 48H,#00H ;参数3下的设定值缓冲区
MOV 49H,#00H
MOV 4AH,#00H
MOV 4BH,#00H
MOV 4CH,#00H ;参数4下的设定值缓冲区
MOV 4DH,#00H
MOV 4EH,#00H
MOV 4FH,#00H
MOV 50H,#00H
MOV CAN,#01H ;参数1234
L2:MOV R0,#LEDBUF ;显示班级、学号
LCALL DISPLAYLED1 ;显示子程序,R0为参数
LCALL TESTKEY ;判断“有效键”是否按下?(是--20H.0=1,否--20H.0=0)
JNB 20H.0,L2 ;没有键按下,则继续显示班级、学号
L3:MOV 25H,#00H
MOV A,CAN
MOV B,#04H
MUL AB
ADD A,#3CH ;将参数首地址存入R0
MOV R0,A ;第一次有键按下默认显示参数1下设定的值,即:显示从40H单元开始的内容
LCALL DISPLAYLED2 ;调用设定参数显示子程序
LCALL TESTKEY ;检测是否有键按下
JNB 20H.0,L3 ;没有键按下,则继续显示参数1下设定的值
LCALL PAZ ;有键按下,则判断运行键是否按下
CJNE R5,#05H,QD1
LJMP SD ;R5=5
QD1:LJMP S44
SD:SETB 20H.1 ;20H.1置1
MOV 36H,#00H
MOV A,CAN
MOV B,#04H
MUL AB
ADD A,#3CH ;通过参数CAN来选择设定值的缓冲区(CAN=1,A=40H;CAN=2,A=44H;CAN=3,A=48H;CAN=4,A=4CH)
ADD A,36H
显示全部