2007级热动专业《单片机原理及应用》实验指导书(6)

2019-08-31 11:07

五、程序框图 设置块起始地址

设置被除数、除数 (R2R3)>=(R6R7) 是 ?

否 1 送 F0 设置移位次数 被除数左移一位

被除数高位和除数相减差送AR1

是 (F0)=1?

否 是 (C) =1?

否 (AR1)送R2R3 上商1,(R5)+1送R5

否 (B)—1=0?

是 0 送 F0

结束 24 实验二 二进制到BCD码转换程序实验

一、实验要求

将给定的一个二进制数,转换成二十进制(BCD)码

二、实验目的

1.掌握简单的数值转换算法 2.基本了解数值的各种表达方法

三、实验说明

计算机中的数值有各种表达方式,这是计算机的基础。掌握各种数制之间的转换是一种基本功。有兴趣的同学可以试试将BCD转换成二进制码。

四、程序框图

给出要转换的二进制数 将数除以100,得百位数 保存百位数 将余数再除以10,得十位数 保存十位数 余数为个位数,将其保存 结束

25

五、程序清单

;将A拆为三个BCD码,并存入Result开始的三个单元

Result equ 30h org 0 0000 020015 ljmp Start BinToBCD:

0003 75F064 mov b, #100 0006 84 0007 F530 0009 E5F0 000B 75F00A 000E 84 000F F531 0011 85F032 0014 22 Start:

0015 758140 0018 747B 001A 1103 001C 02001C

div ab

mov Result, a mov a, b mov b, #10 div ab

mov Result+1, a mov Result+2, b ret mov sp, #40h mov a, #123 call BinToBCD ljmp $ End

26

; 除以 100, 得百位数 ; 余数除以 10, 得十位数; 余数为个位数

实验三 P1口输入、输出实验

一、实验要求

1、P1口做输出口,接八只发光二极管,编写程序,使发光二极管循环点亮。

2、P1.0,P1.1作输入口接两个拨动开关,P1.2,P1.3作输出口,接两个发光二极管,编写程序读取开关状态,将此状态,在发光二极管上显示出来。编程时应注意P1.0,P1.1作为输入口时应先置1,才能正确读入值。

二、实验目的

1、学习P1口的使用方法。

2、学习延时子程序的编写和使用。

三、实验电路及连线

实验1: P1口循环点灯 实验2: P1口输入输出

四、实验说明

1、P1口是准双向口。它作为输出口时与一般的双向口使用方法相同。由准双向口结构可知当P1口用为输入口时,必须先对它置“1”。若不先对它置“1”,读入的数据是不正确的。

2、延时子程序的延时计算问题 对于程序 Delay:

MOV R6,#0H MOV R7, #0H DelayLoop:

DJNZ R6,DelayLoop DJNZ R7,DelayLoop RET

查指令表可知MOV,DJNZ指令均需用两个机器周期,在6MHz晶振时,一个机器周期时间长度为12/6MHZ,所以该段程序执行时间为:

(256×255+2)×2×12÷6 ≈ 261ms

27

五、实验框图

开始 设置初始值 设移位次数 数据输出 左移一位 延时 是 否 移位次数完成? (A) P1口循环点灯程序框图

六、程序清单

; 实验1: P1口循环点灯 Loop:

0000 7401 mov a, #01h 0002 7A08 mov r2, #8 Output:

0004 F590 mov P1, a 0006 23 rl a 0007 12000F call Delay

000A DAF8 djnz r2, Output 000C 020000 ljmp Loop

Delay:

000F 7E00 mov r6, #0 0011 7F00 mov r7, #0 DelayLoop:

28

开始 P1.0,P1.1置1 读入P1.0口值 将读入的值输出到P1.2 读入P1.1口值 将读入的值输出到P1.3 (B) P1口输入输出程序框图


2007级热动专业《单片机原理及应用》实验指导书(6).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:语文S版六年级上册《一单元 2 寓言两则《自相矛盾》》优质课教学

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: