[工学]单片机基础教程第十章

合集下载

[工学]单片机基础教程第十章

[工学]单片机基础教程第十章
MOVA, C100μs+1 JNZGOON DECC100μs GOON: DEC C100μs+1 MOVA, C100μs ORLA, C100μs+1 JNZEXIT ;100μs 记数器不 为0, 返回 MOVC100μs, #HIGH(Tick) ;100μs 记数器为0, 重置记数器 MOVC100μs+1, #LOW(Tick) CPLLEDBUF ; 取反LED EXIT:
第10章
实训
10.4.2 实训内容
编写并调试一个程序,用定时器T0计数,使 计数器从0开始以一个周期的速度加1计数, 显示器实时显示其计数值。
第10章
实训
10.4.3 程序流程图
本实训实现的程序流程图如图所示。
第10章
实训
10.4.4 调试方法
(1)断点设在BP1,程序运行到BP1,应进入中 断服务程序,否则应检查T0初始化程序正 确与否。 (2)程序连续运行,显示器缓冲区从0开始加1 显示。 若有错误应改用单步或断点分段调试程序, 排除软件错误,直至正确为止。
试编写将外部数据存储区6030H~607FH的 内容写入外部RAM的7030H~707FH中。
第10章
实训
10.2 实训二 数据传送
10.2.1 实训目的
通过编写数据转换程序,熟悉MCS-51系列 单片机的汇编语言程序设计方法。
第10章
实训
10.2.2 实训内容
编写并调试一个二进制转十进制程序,其功 能为将40H、50H两数据单元中的二进制数 转换为十进制数,并将转换结果存放在R4、 R5、R6数据单元中。
(1)断点设在BP1,进入断点地址,检查30H内 容是否是时间的变化。 (2)断点设在BP2,程序运行至断点,检查(S P)内容返回地址高位。 (3)断点设在BP3,程序运行至断点,检查P1. 0的电平是否反转, 若有错误,应改用单步或断点分段调试,排 除软件错误,直至正确为止。

C51单片机基础学习教程

C51单片机基础学习教程

C51单片机基础学习教程C51单片机是一种常用的8位单片机,广泛应用于工业控制、家用电器和电子产品等领域。

若想学习C51单片机,首先需要掌握C语言的基础知识。

以下是一个C51单片机基础学习教程,介绍了C语言的相关内容,并给出了一个简单的例子。

一、C语言基础1.数据类型:C语言中主要有整型、字符型、浮点型等数据类型。

可以使用关键字来定义变量并赋值。

示例:int num = 10;char ch = 'A';float f = 3.14;2.运算符:C语言中有算术运算符、逻辑运算符、关系运算符等。

可以用于对变量进行运算和比较。

示例:int a = 10, b = 5;int sum = a + b;int result = (a > b) ? a : b;3.控制语句:C语言中有顺序结构、分支结构和循环结构。

可以用于控制程序的执行流程。

示例:if (num > 0)printf("The number is positive.");} else if (num < 0)printf("The number is negative.");} elseprintf("The number is zero.");4.函数:C语言中可以使用函数将代码模块化,并且可以通过参数和返回值传递数据。

示例:int add(int a, int b)return a + b;二、C51单片机入门2. 创建新项目:在Keil软件中创建一个新的项目,并选择C51单片机作为目标芯片。

3. 编写程序:在新建的项目中打开main.c文件,编写C语言程序。

可以使用C语言的代码编写方式。

示例:#include <reg51.h>//定义LED端口sbit LED = P1^0;void mai//设置LED口为输出LED=0;while (1)//LED闪烁LED=~LED;//延时for (int j = 0; j < 100; j++)}}}5. 调试程序:在Keil软件中打开调试窗口,可以对程序进行单步调试,查看程序的执行流程和变量的值。

单片机入门教程

单片机入门教程

单片机入门教程单片机,又称微控制器(Microcontroller),是一种集成在电路上的微型计算机,具有体积小、价格低、功能强大、使用方便等优点,广泛应用于智能家居、工业控制、消费电子、汽车电子等领域。

通过学习单片机,我们可以了解如何将计算机技术与实际应用相结合,实现各种控制系统的设计。

单片机主要由中央处理器(CPU)、存储器(RAM/ROM)、输入/输出接口(I/O口)、定时/计数器、中断系统等组成。

中央处理器(CPU):控制器的核心部件,负责指令执行、数据处理等。

存储器(RAM/ROM):存储数据和程序代码。

RAM用于实时存储数据,ROM用于存储固定程序。

输入/输出接口(I/O口):用于连接外部设备和CPU之间的数据传输。

定时/计数器:用于实现定时操作和计数功能。

中断系统:用于处理外部事件,实现实时控制。

单片机编程语言主要有汇编语言和C语言。

汇编语言是低级语言,与硬件密切相关,适用于对性能要求较高的场合;C语言是高级语言,具有可读性强、易于维护等优点,适用于初学者。

掌握基本概念:了解单片机的组成、工作原理、编程语言等基本概念。

学习电路基础:了解电路的基本原理和元件,为后续实践打下基础。

实践操作:通过实验和项目实践,加深对理论知识的理解和应用。

阅读相关书籍:参考相关书籍和资料,拓宽知识面和技能水平。

参加培训课程:参加专业培训课程,接受系统化的教学和实践指导。

交流与讨论:与其他学习者交流和讨论,分享经验和技巧,提高学习效果。

单片机是电子技术领域中重要的组成部分,学习单片机需要掌握基本概念、电路基础、编程语言等方面的知识。

通过实践操作和项目经验积累,可以更好地理解和应用单片机技术。

阅读相关书籍、参加培训课程和与其他学习者交流也是提高学习效果的重要途径。

Access是微软公司推出的一款关系型数据库管理系统,它作为Office套件的一部分,与Word,Excel和PowerPoint等应用一起,构成了微软公司强大的办公软件套件。

单片机ppt课件清华第10章_单片机的C语言编程

单片机ppt课件清华第10章_单片机的C语言编程

{
局部变量说明 /*只在本函数引 用*/
执行语句(包括函数调用语句)
}
fun1(形式参数表) /*函数1*/ 形式参数说明
{ 局部变量说明
执行语句(包括调用其他函数 语句)
}

funn(形式参数表)
/*函
数n*/
形式参数说明
{ 局部变量说明
执行语句
}
第 10章 装备一个铸造车间,需要熔炼设备、 造型及 制芯设 备、砂 处理设 备、铸 件清洗 设备以 及各种 运输机 械,通 风除尘 设备等 。只有 设备配 套,才 能形成 生产能 力。
第 10章 装备一个铸造车间,需要熔炼设备、 造型及 制芯设 备、砂 处理设 备、铸 件清洗 设备以 及各种 运输机 械,通 风除尘 设备等 。只有 设备配 套,才 能形成 生产能 力。
单片机的C语言编程
单片机原理、接口及应用
第 10章 装备一个铸造车间,需要熔炼设备、 造型及 制芯设 备、砂 处理设 备、铸 件清洗 设备以 及各种 运输机 械,通 风除尘 设备等 。只有 设备配 套,才 能形成 生产能 力。
第 10章 装备一个铸造车间,需要熔炼设备、 造型及 制芯设 备、砂 处理设 备、铸 件清洗 设备以 及各种 运输机 械,通 风除尘 设备等 。只有 设备配 套,才 能形成 生产能 力。
单片机的C语言编程
10.1 C51程序结构
同标准C一样,C51的程序由一个个函数组成,这里的 函数和其他语言的“子程序”或“过程 ”具有相同的意义。 其中必须有一个主函数main(),程序的执行从main()函数 开始,调用其 他函数后返回主函数main(),最后在主函数 中结束整个程序而不管函数的排列顺序如何。
单片机的C语言编程

10单片机第01讲-第1章 1.1概述1

10单片机第01讲-第1章 1.1概述1
6
3.第三代:微控制器形成阶段 .第三代: 作为面对测控对象的计算机系统, 作为面对测控对象的计算机系统,不仅要求有完善 的计算机体系结构, 的计算机体系结构,还要有许多面对测控对象的 接口电路, 接口、 接口电路,如ADC、DAC、高速 接口、计数 、 、高速I/O接口 器的捕捉与比较,保证程序可靠运行的WDT(程 器的捕捉与比较,保证程序可靠运行的 程 序监视定时器),保证高速数据传输的DMA等。 序监视定时器 ,保证高速数据传输的 等 这些为满足测控要求的外围电路, 这些为满足测控要求的外围电路,大多数已超出 了一般计算机的体系结构。 了一般计算机的体系结构。为了满足测控系统的 嵌入式应用要求, 嵌入式应用要求,这一阶段单片微机的主要技术 发展方向是满足测控对象要求的外围电路的增强, 发展方向是满足测控对象要求的外围电路的增强, 从而形成了不同于单片微机特点的微控制器。 从而形成了不同于单片微机特点的微控制器。微 控制器MCU (Micro Controller Unit)一词缘于这 控制器 一词缘于这 一阶段,至今微控制器(MCU)仍是国际上对单 一阶段,至今微控制器 仍是国际上对单 片机的标准称呼。 片机的标准称呼。
5
1.1.1 单片机的发展 单片机的发展p3-4 5条 条
1.第一代:单片机探索阶段(1974~1978年) .第一代:单片机探索阶段 ~ 年 工业控制领域对计算机提出了嵌入式应用要求, 工业控制领域对计算机提出了嵌入式应用要求,首 先是实现单芯片形态的计算机, 先是实现单芯片形态的计算机,以满足构成大量 中小型智能化测控系统的要求。因此, 中小型智能化测控系统的要求。因此,这阶段的 任务是探索计算机的单芯片集成。单片机(Single 任务是探索计算机的单芯片集成。单片机 Chip Microcomputer)的定名即缘于此。 的定名即缘于此。 的定名即缘于此 2.第二代:单片机完善阶段 .第二代:单片机完善阶段(1978~1983年) ~ 年 计算机的单芯片集成探索,特别是专用CPU型单片 计算机的单芯片集成探索,特别是专用 型单片 机探索取得成功, 机探索取得成功,肯定了单片微机作为嵌入式系 统应用的巨大前景。典型代表是Intel公司将 统应用的巨大前景。典型代表是 公司将 MCS-48迅速向 迅速向MCS-51系列的过渡。 系列的过渡。 迅速向 系列的过渡

单片机第10章 AD-DA转换与单片机接口技术

单片机第10章 AD-DA转换与单片机接口技术
21 22 23 24 25 26 27 28
10 11 30 29
U4
D0 D1 D2
3 4 7 8 13 14 17 18
D0 D1 D2 D3 D4 D5 D6 D7
第十章 A/D、D/A转换与单片机接口技术
10.0 你知道吗 10.1 A/D转换器及其与单片机的接口 10.2 D/A转换器及与单片机的接口
你知道吗 在自动控制领域中,通常用单片机进行实时控制和数据处理,我们知道,被 测和被控参数常常是一些连续变化的物理量即模拟量,如温度、速度、电压、 电流、压力等,而单片机只能加工和处理数字量,因此在单片机应用系统中处 理模拟量信号时,就需要进行模拟量与数字量之间的转换,即A/D和D/A转换。
二、双积分式A/D转换原理
双积分A/D转换采用间接测量原理,即将被测电压值VX转换成时间常数,通过测量 时间常数得到未知电压值。其原理如下图所示。它由电子开关、积分器、比较 器、计数器、逻辑控制门等部件组成。
积分器
由于双积分的二次积分时间比较长,因此
Vx VR
比较器
A/D转换速度慢,但精度高。
计数器 输出
五、ADC0809与单片机的接口电路
R1
D1
R2
D2
R3
D3
R4
D4
D5
R5
R6
D6
R7
D7
R8
D8
U1
P10 P11
P10 1 P11 2 P12 3 P13 4 P14 5 P15 6 P16 7 P17 8
P10 P11 P12 P13 P14 P15 P16 P17
P12
13 12
INT1 INT0
ADD-A﹑ADD-B﹑ADD-C:3根地址线。ADD-A为低位地址,ADD-C为高位地址, 用于选择8路模拟量,其地址状态与所选模拟量的对应关系见表10.1。 D0~D7:8位数字量输出端。 ALE:地址锁存允许信号,ALE为高电平时,将ADD-A﹑ADD-B﹑ADD-C的地址 状态送入地址锁存器中。

单片机入门教程课件

单片机入门教程课件
单片机项目实战
基于单片机的LED闪烁灯项目
总结词
基础入门项目
详细描述
通过LED闪烁灯项目,学习者可以初步了解单片机的基本工 作原理和编程方法。该项目将指导学习者如何将LED连接到 单片机上,并通过编程控制LED的闪烁。
基于单片机的温度检测系统项目
总结词
进阶实战项目
详细描述
温度检测系统项目将让学习者掌握如 何使用单片机进行温度检测。学习者 将学习如何使用温度传感器将温度数 据采集到单片机中,并通过编程实现 温度的实时显示和控制。
详细描述
在安装和使用单片机开发工具之前,需要先下载对应的软件和驱动程序。安装完成后, 根据开发板型号和编程语言选择合适的工具进行项目开发和调试。同时,还需要了解工
具的基本使用方法和常用功能,如编译、烧录、调试等。
03
CHAPTER
单片机编程基础
单片机编程语言的基本语法
01
02
03
指令集
了解单片机支持的指令集 ,如MOV、ADD、SUB 等,以及它们的用法和功 能。
基于单片机的智能小车项目
总结词
高级实战项目
详细描述
智能小车项目是一个综合性的单片机实战项 目,学习者将学习如何使用单片机控制小车 的运动,并实现小车的自动避障、路径规划 等功能。通过这个项目,学习者可以全面掌 握单片机的应用和编程技巧。
THANKS
谢谢
详细描述
单片机因其强大的控制和数据处理能力,被广泛应用于工业自动化、智能家居、 医疗电子、智能仪表等领域。同时,随着物联网技术的发展,单片机在智能硬件 、嵌入式系统等领域的应用也越来越广泛。
02
CHAPTER
单片机开发环境与工具
单片机开发板的选择

mcs-51单片机完整基础教程(适合初学者)

mcs-51单片机完整基础教程(适合初学者)
单片机教程第二课:单片机的内部、外部结构(一)
一、单片机的外部结构 拿到一块芯片,想要使用它,首先必须要知道怎样连线,我们用的一块称之为 89C51 的芯片,下面我们就看一 下如何给它连线。 1、 电源:这当然是必不可少的了。单片机使用的是 5V 电源,其中正极接 40 引脚,负极(地) 接 20 引脚。 2、 振蒎电路:单片机是一种时序电路,必须提供脉冲信号才能正常工作,在单片机内部已集成了 振荡器,使用晶体振荡器,接 18、19 脚。只要买来晶振,电容,连上就可以了,按图 1 接上即可。 3、 复位引 脚:按图 1 中画法连好,至于复位是何含义及为何需要复要复位,在单片机功能中介绍。 4、 EA 引脚:EA 引 脚接到正电源端。 至此,一个单片机就接好,通上电,单片机就开始工作了。 我们的第一个任务是要用单片机点亮一只发光二极管 LED,显然,这个 LED 必须要和单片机的某个引脚相连, 否则单片机就没法控制它了,那么和哪个引脚相连呢?单片机上除了刚才用掉的 5 个引脚,还有 35 个,我们将 这个 LED 和 1 脚相连。(见图 1,其中 R1 是限流电阻) 按照这个图的接法,当 1 脚是高电平时,LED 不亮,只有 1 脚是低电平时,LED 才发亮。因此要 1 脚我们要能 够控制,也就是说,我们要能够让 1 引脚按要求变为高或低电平。即然我们要控制 1 脚,就得给它起个名字,总 不能就叫它一脚吧?叫它什么名字呢?设计 51 芯片的 INTEL 公司已经起好了,就叫它 P1.0,这是规定,不可以 由我们来更改。
要某个单元中取数据,也只要打开相应的控制开关就行了。
2、存储器译码
那么,我们怎样来控制各个单元的控制线呢?这个还不简单,把每个单元元的控制线都引到集成电路的外面不就
行了吗?事情可没那么简单,一片 27512 存储器中有 65536 个单元,把每根线都引出来,这个集成电路就得有 6

单片机入门教程

单片机入门教程

单片机入门教程1. 简介单片机(Microcontroller Unit)是一种具有微处理器核心、内存和外设的芯片,广泛应用于嵌入式系统中。

它集成了处理器、存储器和接口电路等功能,可以完成特定的计算、控制和通信任务。

单片机的应用涵盖了各个领域,包括家电控制、汽车电子、智能电子产品等。

本文将介绍单片机的基本知识,包括单片机的基本原理、常见的单片机型号、开发环境和编程语言,并提供一些入门实例供读者学习和实践。

2. 单片机的基本原理2.1 单片机的组成单片机由处理器、存储器和外设组成。

处理器是单片机的核心,可执行各种计算和控制任务。

存储器用于存储程序、数据和中间结果。

外设包括输入输出接口、通信接口、定时器和中断控制器等,用于与外界交互。

2.2 单片机的工作原理单片机的工作过程通常包括以下几个阶段:1.复位:单片机通电后,首先进入复位状态。

在此状态下,单片机会对寄存器进行初始化,并执行复位向量地址对应的指令。

2.初始化:复位后,单片机会进行初始化操作,包括设置时钟源、设置引脚功能、初始化外设等。

3.执行程序:初始化完成后,单片机将按照程序存储器中的指令顺序执行程序。

程序中的指令可以包括算术运算指令、逻辑运算指令、控制指令等。

4.外设交互:单片机可以通过外设与外界交互,例如使用定时器进行计时、通过串口进行通信等。

5.中断处理:单片机可以响应外部中断请求,中断服务程序可以在主程序执行过程中被触发,完成特定的任务后再返回主程序。

3. 常见的单片机型号目前市面上常见的单片机型号有很多,包括8051系列、PIC系列、STM32系列等。

这些单片机具有不同的特点和性能,适用于不同的应用领域。

3.1 8051系列8051系列单片机是一种经典的8位单片机,广泛应用于各个领域。

它具有低功耗、易学易用、外设丰富等特点,可以满足大部分应用的需求。

3.2 PIC系列PIC系列单片机是一种低功耗、高性能的8位和16位单片机。

它具有丰富的外设和强大的指令集,可用于各种控制和计算任务。

10单片机介绍PPT课件

10单片机介绍PPT课件

• 总线型/非总线型

这是按单片机是否提供并行总线来区分的。
总线型单片机普遍设置有并行地用以扩展并行外围器件
都可通过串行口与单片机连接,另外,许多单片
机已把所需要的外围器件及外设接口集成一片内,
因此在许多情况下可以不要并行扩展总线,大大
减省封装成本和芯片体积,这类单片机称为非总
当代单片机系统已经不再只在裸机环境下开发和使用
,大量专用的嵌入式操作系统被广泛应用在全系列的单片
机上。而在作为掌上电脑和手机核心处理的高端单片机甚
至可以直接使用专用的Windows和Linux操作系统。
概述

单片微型计算机简称单片机,是典型的嵌入式
微控制器(Microcontroller Unit), 单片机芯
在很多方面单片机比专用处理器更适合应用于 嵌入式系统,因此它得到了广泛的应用。事实 上单片机是世界上数量最多处理器,随着单片 机家族的发展壮大,单片机和专用处理器的发 展便分道扬镳。
发展历史

单片机诞生于1971年,经历了SCM、MCU、SoC三
大阶段,早期的SCM单片机都是8位或4位的。其中最成功
线型单片机。
11
单片机介绍
演讲人:沈泉宇 组员:杨靖,冯森,韩留洋,李振宁
单片机的定义
单片机是一种集成电路芯片,是采用超大规模集成 电路技术把具有数据处理能力的中央处理器CPU随 机存储器RAM、只读存储器ROM、多种I/O口和中 断系统、定时器/计时器等功能(可能还包括显示驱 动电路、脉宽调制电路、模拟多路转换器、A/D转 换器等电路)集成到一块硅片上构成的一个小而完 善的微型计算机系统,在工业控制领域的广泛应用。 从上世纪80年代,由当时的4位、8位单片机,发展 到现在的32位300M的高速单片机。

[工学]单片机基础第3版_第3章

[工学]单片机基础第3版_第3章

片内 RAM 地址 内容
46H ZH 45H ZM 44H ZL 43H YH 42H YL 41H XH 40H XL
;子程序结束
第十七页,共32页。
例4:两个4位BCD码相加,一个存放(cúnfàng)在(31H)(30H);另一 个存放(cúnfàng)在(33H)(32H);和数拟回存在(31H)(30H)中, 试编程实现之。
解:
MOV R0,#30H
MOV R1,#32H
MOV A,@R0
ADD A,@R1
DA A MOV @R0,A
INC R0 INC R1
MOV A,@R0
ADDC A,@R1 DA A
MOV @R0,A
第十八页,共32页。
例5:试将A中的二进制数转换为3位BCD码,其中,百位数存放于 31H单元(dānyuán),十位数和个位数压缩后存于30H单元(dānyuán)中。
单片机基础 (第3 (jīchǔ) 版)第三章
80C51 单片机指令系统(zhǐ lìnɡ xì
tǒnɡ)
第一页,共32页。
3.1 单片机指令系统(zhǐ lìnɡ xì tǒnɡ)概述
[标号
操作码助记符 [第一(dìyī)操作数] [,第二操作数] [;注释]
(biāohào):]
LOOP: MOV A,#40H ;取参数
(1)R1内容传送到R0。
(2)外部RAM 20H单元内容送R0。
(3)外部RAM20H单元内容送内部RAM20H单元。
(4)外部RAM1000H单元内容送内部RAM20H单元。
(5)外部ROM 2000H单元内容送R0。 (6)外部ROM 2000H单元内容送内部矛盾RAM 20H单元。

单片机原理与应用第10章参考答案

单片机原理与应用第10章参考答案

第10章 AT89S51与键盘、显示器、拨盘、打印机的接口设计参考答案1. 答:A. MAX7219是专用显示器芯片,不用于键盘;B.错:CH451芯片也可用于控制键盘;C.对:BUSY信号可作为查询信号或中断请求信号使用,但此时信号ACK不用;E.错:LED数码管的字型码是可以变的,例如表10-1中的“a”段对应段码字节的最高位。

“dp”段对应段码字节的最低位,字型码就改变了。

2. 答:在按键的闭合和断开过程中,由于开关的机械特性,导致了按键抖动的产生。

如果不消除按键的机械抖动,按键的状态读取将有可能出现错误。

消除按键抖动一般是采用软件或硬件去抖。

软件去抖的原理:在第一次检测到有键按下时,该键所对应的行线是为低电平,执行一端延时10ms的子程序后,确认该行线电平是否仍然为低电平,如果仍为低电平,则确认为该行确实有键按下。

3. 答:静态显示时,数据是分开送到每一位LED上的。

而动态显示则是数据是同时送到每一个LED 上,再根据位选线来确定是哪一位LED被显示。

静态显示亮度很高,但口线占用较多。

动态显示口线占用较少,适合用在显示位数较多的场合。

4. 答:80H(共阴极);7FH(共阳极)。

5. 答:按键设置在行、列线交点上,行、列线分别连接到按键开关的两端。

行线通过上拉电阻接到+5V上,无按键按下时,行线处于高电平状态,而当有按键按下时,行线电平状态将由与此行线相连的列线的电平决定。

列线的电平如果为低,则行线电平为低;列线的电平如果为高,则行线的电平亦为高。

将行、列线信号配合起来并做适当的处理,才能确定闭合键的位置。

6. 答:先对P1口高四位送低电平,读取P1口低四位的值;再对P1口低四位送低电平,读取P1口高四位的值,将两次读到的值组合在一起就得到了按键的特征码,在根据特征码查找键值。

KEYIN: MOV P1,#0FH ;反转读键MOV A,P1ANL A,#0FHMOV B,AMOV P1,#0F0HMOV A,P1ANL A,#0F0HORL A,BCJNE A,#0FFH,KEYIN1RET ;未按键KEYIN1: MOV B,A ;暂存特征码MOV DPTR,#KEYCOD ;指向特征码表MOV R3,#0FFH ;顺序码初始化KEYIN2: INC R3MOV A,R3MOVC A,@A+DPTRCJNE A,B,KEYIN3MOV A,R3 ;找到,取顺序码RETKEYIN3: CJNE A,#0FFH,KEYIN2 ;未完,再查RET ;已查完,未找到,以未按键处理KEYCOD: DB 0E7H,0EBH,0EDH,0EEH ;特征码表DB 0D7H,0DBH,0DDH,0DEHDB 0B7H,0BBH,0BDH,0BEHDB 77H,7BH,7DH,7EH7. 答:(1)编程扫描方式:当单片机空闲时,才调用键盘扫描子程序,反复的扫描键盘,等待用户从键盘上输入命令或数据,来响应键盘的输入请求。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第10章 实训
10.2.3 程序流程图
本实训的程序流程图如图所示。
第10章 实训
10.2.4 调试方法
(1)、断点设在BP1,程序运行至BP1,检查4 0H、50H内容是否与输入值对应。
(2)、断点设在BP2,程序运行至BP2,检查R 4、R5、R6的内容是否为二进制所对应的 十进制转换结果。
(3)、程序连续运行。若有错误应改用单步或 断点分段调试程序,排除软件错误,直至 正确为止。
第10章 实训
10.3.3 程序流程图
本实训实现的程序流程图如图所示。
第10章 实训
10.3.4 调试方法
(1)断点设在BP1,进入断点地址,检查30H内 容是否是时间的变化。
(2)断点设在BP2,程序运行至断点,检查(S P)内容返回地址高位。
(3)断点设在BP3,程序运行至断点,检查P1. 0的电平是否反转,
(4)、改动40H、50H中的内容。连续运行观察 结果正确与否。
第10章 实训
10.2.5 参考程序
MAIN: MOV A,#60H
MOV 40H,A
MOV A,#3CH
MOV 50H,A MOV A,40H; BP1 ACALL B2TO10 ;调用 二进制转十进制子程度 MOV A,50H; BP2 CALL B2TO10
CLRLEDBUF CLRLED MOVC100μs, #HIGH(Tick) MOVC100μs+1, #LOW(Tick) LOOP: ; LED显示并等待中 MOV C, LEDBUF MOVLED, C LJMPLOOP END
第10章 实训
10.3.6 实训思考
若将0D数码管上显示,程序应该怎样 修改?
PUSHPSW
MOVA, C100μs+1 JNZGOON DECC100μs GOON: DEC C100μs+1 MOVA, C100μs ORLA, C100μs+1 JNZEXIT ;100μs 记数器不 为0, 返回 MOVC100μs, #HIGH(Tick) ;100μs 记数器为0, 重置记数器 MOVC100μs+1, #LOW(Tick) CPLLEDBUF ; 取反LED EXIT:
第10章 实训
10.1.5 参考程序
MAIN: MOV R0,#50H MOV R7,#16 MOV DPTR,#7E00H LOOP: MOV A,@R0 MOVX @DPTR,A INC DPTR INC R0 DJNZ R7,LOOP HALT:SJMP HALT
第10章 实训
10.1.6 实训思考
单片机原理
第10章 实训
第10章 实训
10.1 实训一 数据传送
10.1.1 实训目的
掌握8031内部RAM和外部RAM之间的 数据传送方法及这两个存储器的特点与应用。
第10章 实训
10.1.2 实训内容
编写并调试一个数据传送程序实现: ①将50H~5FH数据送到数据存储7E00H~7
E0FH单元中; ②将数据存储7E00H~7E0FH中的数据送到8
试编写将外部数据存储区6030H~607FH的 内容写入外部RAM的7030H~707FH中。
第10章 实训
10.2 实训二 数据传送
10.2.1 实训目的
通过编写数据转换程序,熟悉MCS-51系列 单片机的汇编语言程序设计方法。
第10章 实训
10.2.2 实训内容
编写并调试一个二进制转十进制程序,其功 能为将40H、50H两数据单元中的二进制数 转换为十进制数,并将转换结果存放在R4、 R5、R6数据单元中。
031单片机内部RAM的60H~6FH中; ③将以(R2,R3)为源RAM区首地址内的(R6、
R7)两个字节数据,传送到以(R4、R5)为末 地址的RAM区中。
第10章 实训
10.1.3 程序流程图
本实训要求①实现的程序流程图如图10-1 所示,其余要求的实现与之类似。
第10章 实训
10.1.4 调试方法
若有错误,应改用单步或断点分段调试,排 除软件错误,直至正确为止。
第10章 实训
10.3.5 参考程序
ORG0000H TickEQU 10000 ; 10000 × 100μs = 1s T100μs EQU256-50 ; 100μs时间常数(6M) C100μsEQU30H ; 100μs记数单元 LEDBμF EQU0 LED EQUP1.0 LJMPSTART ORG 000BH T0Int: ;TO中断服务 程序
HALT: SJMP HALT
B2TO10:MOV B,#0AH ; 除十求余的方法将二进制转 换为十进制
DIV AB MOV R6,B MOV B,#0AH DIV AB MOV R4,A MOV A,B MOV R5,A RET
第10章 实训
10.2.6 实训思考
试编写一个功能和本实验类似的整数十进制 转二进制的程序。
(1)打开仿真软件中内部数据空间和外部数据 空间,在50H~5FH数据单元中分别送数, 如1,2,3,4,…等16个数据。
(2)单步运行(断点设在BP2,程序运行至断 点),检查外部RAM(7E00H~7F0FH)数 据是否与50H~5FH数据一一对应。
(3)如果程序运行不能进入某一断点,则应单 步、断点分段检查程序,排除错误直至正 确为止。
第10章 实训
10.3 实训三 时钟操作编程
10.3.1 实训目的
熟悉8051单片机的中断过程、中断服务程序 的设计方法;熟悉8051单片机的查表指令、 散转指令的功能和使用方法;掌握查表和散 转程序的设计与调试。
第10章 实训
10.3.2 实训内容
编程设置定时器每100μs中断一次,在中断 服务程序中,对中断次数进行计数,100μs计 数10000次就是1秒。然后再对秒计数得到 分和小时值,并送入显示缓冲区。
第10章 实训
10.3.5 参考程序
POPPSW ; 恢复现场 RETI ; 中断返回
START: MOVTMOD, #02H ; 方 式2, 定时器
MOVTH0, #T100μs
MOVTL0, #T100μs
MOVIE, #10000010B ;
EA=1, IT0 = 1 SETBTR0 ; 开始定时
相关文档
最新文档