JNB P1.0,$ ;查询A/D转换结束否?未完继续查询等待 MOVX A,@DPTR ;A/D已结束,读A/D值 MOV @R1,A ;存A/D值
单片机期末考试试题1
INC DPTR ;修改通道地址 INC R1 ;修改数据区地址
DJNZ R7,LOOP ;判8路采集完否?未完继续 RET ;8路采集完毕,返回 ⑶ 延时等待方式
工作在延时等待方式时,0809 EOC端可不必与80C51相连,是根据时钟频率计算出A/D转换时间,略微延长后直接读A/D转换值。
【例9-14】 图9-20中,0809 EOC端开路,fosc=6MHz,试用延时等待方式编制程序,对8路模拟信号依次A/D转换一次,并把结果存入以50H为首址的内RAM中。 解:编程如下:
MAIN:MOV R1,#50H ;置数据区首址 MOVX A,@DPTR ;读A/D值 MOV R7,#8 ;置通道数 MOV @R1,A ;存A/D值 MOV DPTR,#0FEF8H;置0809通道0地址 INC DPTR ;修正通道地址 LOOP:MOVX @DPTR,A ;启动A/D INC R1 ;修正数据区地址 MOV R6,#17 ; DJNZ R7,LOOP ;判8路采集完否?未完继续 DJNZ R6,$ ;延时68 S:2机周×17=34机 RET ;8路采集完毕,返回 周,2 S×34=68 S
3、LED的显示驱动程序的写法; 并行扩展静态显示电路
【例9-2】按图9-3编制显示子程序,显示数(≤255)存在内RAM 30H中。 DIR1: MOV A,30H ;读显示数 MOV P0,A ;送数 MOV B,#100 ;置除数 MOV P2,#BFH ;输出十位显示符 DIV AB ;产生百位显示数字 MOV A,B ;读个位显示数字 MOVC A,@A+DPTR ;读百位显示符 MOV DPTR,#TAB ;置共阳字段码表首 MOV P0,A ;送数 址 MOV P2,#DFH ;输出百位显示符 MOV P0,A ;送数 MOV A,B ;读余数 MOV P2,#7FH ;输出个位显示符 MOV B,#10 ;置除数 MOVX @DPTR,A ;输出个位显示符
RET ; DIV AB ;产生十位显示数字
MOV DPTR,#TAB ;置共阳字段码表首TAB: DB 0C0H,0F9H,0A4H,0B0H,99H;共阳字段码表
DB 92H,82H,0F8H,80H,90H; 址
MOVC A,@A+DPTR ;读十位显示符 串行扩展静态显示电路
【例9-3】按图9-4编制显示子程序,显示字段码已分别存在32H~30H内RAM中。 DIR2: MOV SCON,#00H ;置串口方式0 JNB TI,$ ;等待串行发送完毕 CLR ES ;串口禁中 CLR TI ;清串行中断标志 SETB P1.0 ;“与”门开,允许TXD发 MOV SBUF,32H ;串行输出百位显示字移位脉冲 段码 MOV SBUF,30H ;串行输出个位显示字 JNB TI,$ ;等待串行发送完毕 段码 CLR TI ;清串行中断标志 JNB TI,$ ;等待串行发送完毕 CLR P1.0 ;“与”门关,禁止TXD发 CLR TI ;清串行中断标志 移位脉冲
RET ; MOV SBUF,31H ;串行输出十位显示字
段码
BCD码输出静态显示电路
【例9-4】按图9-5试编制显示子程序(小数点固定在第二位),已知显示数存在内RAM 30H~32H中。
单片机期末考试试题1
解:编程如下:
DIR3: MOV P1,#11100000B ;选通个位
ORL P1,30H ;输出个位显示数 MOV P1,#11010000B ;选通十位
ORL P1,31H ;输出十位显示数 MOV P1,#10110000B ;选通百位
ORL P1,32H ;输出百位显示数 RET
【例9-5】按图9-7,试编制循环扫描(10次)显示子程序,已知显示字段码存在以30H(低位)为首址的8字节内RAM中。
解:编程如下:
DIR4:MOV R2,#10 ;置循环扫描次数 INC P1 ;选通下一位显示 MOV DPTR,#7FFFH ;置74377口地址 CJNE R0,#38H,DLP2 ;判8位扫描显示完否?未DLP1:ANL P1,#11111000B ;第0位先显示 完继续 MOV R0,#30H ;置显示字段码首址 DJNZ R2,DLP1 ;8位扫描显示完毕,判10DLP2:MOV A,@R0 ;读显示字段码 次循环完否? MOVX @DPTR,A ;输出显示字段码 CLR A ;10次循环完毕,显示暗
MOVX @DPTR,A ; LCALL DY2ms ;调用延时2ms子程序
(参阅例4.13) RET ;子程序返回 INC R0 ;指向下一位字段码
2复位电路简答题
4 pc,sc-----干什么的,pc,p0,p1,T0,T1,DPTR都是16位,其他都是8位 MOV MOVX MOVC 两个大题 5章 1,单片机 定时器+中断=大题 9 如何设定定时值
九 5---0809 6----必考
7----- 已有图,直接写程序
----ADC0809-----分时手用两个通道,直接写驱动 实验题:定时器/中断实验---电子钟
编写一个时钟程序,使用单片机定时器1产生一个10ms的定时中断,对定时中断计数,将时,分,秒显示在数码管上
LJMP STAR ; 电子时钟(显示时分秒)
ms50 DATA 31H ;存放多少个50ms
sec DATA 32H ;秒 ORG 000BH ;定时器T0中断处理入min DATA 33H ;分 口地址
LJMP INT_Timer0 hour DATA 34H ;时
ORG 0100H buffer DATA 35H ;显示缓冲区
STAR: MOV SP,#60H ;堆栈 EXTRN CODE(Display8) MOV ms50,A ;清零ms50 MOV hour,#12 ;设定初值: 12:59:50 ORG 0000H MOV min,#59
单片机期末考试试题1
MOV sec,#50 MOV TH0,#60 ;定时中断计数器初值 MOV TL0,#176 ;定时250ns MOV TMOD,#1 ;定时器0:方式一 MOV @R1,#0 INC R1 INC @R1 ;时加1 CJNE @R1,#24,ExitInt1 MOV IE,#82H ;中断初始化,EA=1,ET0=1 SETB TR0 ;开定时器T0 STAR1: LCALL Display ;调用显示 JNB F0,STAR1;$ CLR F0 SJMP STAR1 ;需要重新显示时间 ;中断服务程序
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说公务员考试单片机期末考试试题1(6)在线全文阅读。
相关推荐: