第06章 8098单片机的高速输出口(HSO)原理及应用
8098单片机资料介绍

8098单片机资料介绍MSC-96单片机是当今世界上具有最高性能的单片微型计算机系列产品之一,而8098单片机又是该系列中面向控制应用领域性能价格比最高的。
1、十六位中央处理器(CPU)该CPU在结构上的最大特点:抛弃习惯的累加器结构,改用寄存器——寄存器结构,其CPU是直接在由寄存器阵列和SFR特殊功能寄存器所构成的256字节寄存器空间内进行操作。
这些寄存器都具有累加器的特殊功能,它们可使CPU对运算前后的数据进行快速交换,同时又提供了高速数据处理能力和频繁的输入/输出能力,消除了一般累加器结构中存在的瓶颈现象。
16位CPU支持位、字节和字操作,在部分指令中还支持32位双字操作,如32位除16位。
2、高效的指令系统8098单片机具有丰富的指令系统,不但运算速度快,而且编程效率高。
与8031(MCS-51)单片机相比,完成同样一个计算任务,8098单片机的速度要高出5到6倍,并且指令字节数还不到8031单片机的一半。
它可以对不带符号和带符号数进行操作,有16位乘法指令,32位除16位除法指令,符号扩展指令,数据规格化指令(有利于浮点计算)等等。
许多指令即可用双操作数,也可用三操作数,使用灵活。
12MHz晶振下,一条指令最短执行时间为1μs,16位×16位乘法运算或32位除16位除法运算6.5μs。
3、十位A/D转换器四通道十位A/D转换器,12MHz晶振下,完成一次A/D转换所需时间只要22μs。
4、PWM脉宽调制输出作为D/A转换器输出,8098单片机可以直接提供一路脉宽调制信号,可以直接驱动某些电机。
PWM 输出信号经过积分就可以获得直流输出。
D/A转换器的分辨率为8位。
脉冲周期64μs(12MHz时)。
5、全双工串行口与MCS-51系列单片机兼容的全双工串行口。
这个串行口同样也有4种操作方式,能方便地用于I/O 扩展、多机通信及与CRT终端等设备进行通信。
6、HSI/O高速输入/输出接口高速输入器可以利用相对于内部定时器T1产生的实时时钟,记下某个外部事件发生的时间,共可记下8个事件;而高速输出器可以按规定的时刻去触发某一事件,任何时刻,都可以悬挂起8个事件。
8098单片机用于直流电动机拖动

!!!公’{{{口口l一常‘)))))))111.公.{{{1.’一写lllllllllllllllllllllllll111111111111111111111111111111111111111110111
14《煤矿机电》1995.6
(6)具有可编程的高速输人l输出(HSllHSO)
口。无需CPU干预,能自动在8个状态周期中处理8
个输人事件(记录外部事件发生的时间)和8个输出事
件(按预定的时间去触发某事件)。
(7)4路10位A/0转换器。
(8)可遥以作为0/A转换的脉宽调制输出
(PWM).可直接驱动某些电机,也可经外部积分电
路。这样便比较合理地解决了人身触电和选择接地线
路的矛盾,做到单相故障可以不停电。
5单相接地电弧过电压问题
在380V、660V低压供电网络中,由于电压低,供
电线路短,接地电流小,造成间歇性接地电弧过电压的
机率也较小,特别在工矿企业低压供电网络,为了改善
功率因数,一般在变电所低压母线上装有三角接线的
(l)16位中央处理器和外部采用8位数据总线,
可对与其配合的256个字节的片内寄存器组合直接进
行操作。这些寄存器都具有累加器的功能,克服了类
似MCS一51系列单片机只有l一2个累加器所产生
的瓶颈现象,大大提高了数据处理能力。
(2)与MCS一51相比,不但运算速度快,且编程
效率高。16位加法仅需l,‘s,16位乘法和32位对16
.6、P4、7构成键盘和显示控制。串行口以方
式O工作在移位寄存器方式,RXD用申行数据发送
8098单片机与软盘驱动器接口技术

第28卷 第4期 长春科技大学学报 V o l .28 N o.4 1998年10月 JOU RNAL O F CHAN GCHUN UN I V ER S IT Y O F SC IEN CE AND T ECHNOLO GY O ct .19988098单片机与软盘驱动器接口技术刘守会 李文全姜 虹(长春科技大学信息科学与技术学院,长春130026)(长春煤炭干部管理学院应用技术系,长春130012)摘要 8098系列单片机近几年在工业控制、数据采集等方面得到了广泛的应用。
因缺少大容量存储器限制了它的应用。
介绍了8098单片机与I BM 系列软盘驱动的接口,硬件连接,实现数据的读、写操作和数据传送方法,扩大了8098单片机的使用范围。
关键词 单片机 软盘控制器 时间保持中图分类号 T P 311第一作者简介 刘守会 男 27岁 硕士生 电磁测量技术及仪器专业 已合作发表“P sp ice 模拟R F -SQU I D 器件的方法”等论文收稿日期 199712228098系列单片机因采用寄存器—寄存器结构,消除了M CS -51系列中存在的寄存器瓶颈效应,程序设计相应比8051方便,片内含有8路10位的A D 转换器,有高速输入、高速输出通道,和一个可用于DA C 的PWM 输出。
因而近年来在工业控制、数据采集等方面得到了广泛的应用。
但在需要长期连续记录和存储大量数据的情况下,对8098的应用有一定限制。
本文为解决8098单片机缺少外部存储器提供了一种有效的方法,采用In tel 的S 82078软盘控制器和8098相连接。
1 硬件电路设计思路本系统由8098单片机[1~4]、DALLA S 1216C 时钟智能插座、字符液晶显示器、译码图1 电路原理图F ig .1 The c ircuit of sche ma tic电路、软盘控制器82078[6]、键盘等组成,结构原理框图如图1所示。
电路用DAL 2LA S 1216C 提供写文件的日期和时间,字符型液晶显示器显示时间、文件名、命令等,82078为8098和软盘驱动器之间的接口,键盘作为输入。
单片机输入输出口课件

串行输出口的应用
串行输出口常用于与外部设备进 行通信,如串口通信、I2C通信 等,实现数据的传输和控制等功
能。
串行输出口的配置
串行输出口的输出数据格式、波 特率等参数可以通过编程进行配 置,以满足不同的通信协议和数
据传输需求。
04
单片机输入输出口编 程
编程语言的选择
C语言
C语言是一种通用编程语言,具有高效、可移植性 强的特点,适用于单片机编程。
单片机输入输出口 课件
目录
• 单片机输入输出口概述 • 单片机输入口详解 • 单片机输出口详解 • 单片机输入输出口编程 • 单片机输入输出口应用实例
01
单片机输入输出口概 述
输入输出口的定义
输入输出口是单片机中用于与 外部设备进行通信的接口。
输入输出口可以接收外部设备 的数据,并将其传输到单片机 内部进行处理。
模拟输入口的精度和范围取决于ADC 的特性和位数,常见的有8位、10位 、12位和16位等。
模拟输入口通常需要一个模拟-数字 转换器(ADC)来将模拟信号转换为 数字信号,以便单片机进行处理。
模拟输入口在数据采集、智能传感器 等领域应用广泛。
数字输入口
01
数字输入口是单片机中 用于接收数字信号的接 口,如开关状态、脉冲 信号等。
02
数字输入口可以直接接 收高低电平信号,并通 过内部逻辑电路进行处 理。
03
数字输入口的响应速度 较快,适用于高速数字 信号的采集和传输。
04
数字输入口在工业控制 、智能仪表等领域应用 广泛。
串行输入口
01
02
03
04
串行输入口是单片机中用于接 收串行数据信号的接口,如
I2C、SPI等通信协议。
第07章-8098单片机的AD和PWM转换器原理及应用

7.1 A/D转换器工作原理
• 图7.1所示为A/D转换器的基本结构和工作原理 示意图。其工作原理分述如下:
VREF
来自用户电路
270Ω
模拟输入引脚
0.005uF
图7.3 简单模拟接口电路
• 当转换精度要求较
VREF
高,模拟量变化范
围较宽时,应考虑
VIN
增设输入缓冲电路。 V
常用的输入缓冲电
VIN
路如图7.4所示,它 RB1
可针对模拟输入进 RB3 行增益整定和偏移 RB2 RG1
+ -
RG2 RG3
调整。其中RB1、RB2 的分压比设定了偏
;读结果高字节
•
SHR AX,# 06H
•
ST AX,[DX]+
;存结果数据
•
INCB BL
•
JBS BL,4,ADEND
•
SJMP NEXT
• ADEND:POPF
•
RET
•
END
• 例2:用立即启动方式启动A/D转换,用中断法取走A/D转换结果,实现一 路A/D转换。转换结果存3000H,输入通道选ACH.7。采样周期为 1/(50Hz*8)=1/400=2.5ms,T1计数值为4E2H,用软件定时器0定时。
•
LDB HSO_COMMAND,# 18H ;选T1作为时间基
•
;值,允许HSO中断,启动软件定时器0(8号事件)。
8098单片机智能控制交流伺服

首先对这些论域执行模糊化, 将其离散为 [ - 6, - 5, - 4, - 3, - 2, - 1, 0, + 1, + 2, + 3,
+ 4, + 5, + 6 ], 考虑到速度的控制精度要求较高, 将 [ - 6, + 6 ] 分为负大 [NL ]、 负中 [NM ]、 负
小 [N S ]、 零 [ZE ]、 正小 [PS ]、 正中 [PM ]、 正大 [ PL ]7 个语言变量 . α 同理, 将偏差变化率 e = d e d t 对应的语言变量 EC ( e ) 及模糊判决语言变量 U 划分为 13 个等级, 形成相应的模糊子集. 这样, 根据 FU ZZY 合成规则可得到控制变量 u 及偏差 e, 偏差 变化率 d e d t 之间的关系, 如表 2 所示. 表中输出变量 u 的模糊判决采用加权平均法, 并根据 实验在线修正获得. 表 2 模糊控制表
・52・
甘 肃 工 业 大 学 学 报 第 26 卷
图 1 BDCM 交流伺服系统框图
图 2 主电路结构图
8098 单片机具有高集成度、 高性能价格比、 高抗干扰能力, 其各项性能指标均属上乘 . 硬
© 1994-2009 China Academic Journal Electronic Publishing House. All rights reserved.
1 系统的硬件配置
根据方波型无刷直流电机的特点, 该交流伺服系统由 3 部分组成: 主电路、 控制电路和伺 服电机. 主电路由整流桥、 滤波电容和 IGB T 逆变器等组成 . 使用 IGB T 主要是提高逆变器的 工作频率, 减小谐波损耗, 降低力矩波动. 其驱动电路采用 EXB 841 驱动模块 . 系统结构框图如 图 1 所示. 控制电路以 8098 单片机为核心, 并辅以主回路保护电路; 采用位置、 速度、 电流三闭环控 制; 兼顾到系统的快速性和实时性, 电流环由模拟电路构成, 速度环、 位置环通过软件实现 . 在 控制策略上, 电流环采用 P I 调节器, 速度环采用 FU ZZY 2P I D 控制, 位置环采用 P I 调节器; 运 行状态判别电路控制电机实现四象限运行; 还有电流、 速度、 位置反馈测量电路, 转子位置信息 [1 ] 测量电路和逻辑控制电路等 . 主电路结构如图 2 所示 .
第05章 8098单片机的高速输入口(HSI)原理及应用

例1: 用HSI.0引脚测脉冲周期,采用查询法取走数据。程 序中用到的寄存器及其用途如图5.5。
• • • • • • • • • • • • • •
HTIME EQU 30H ;高电平持续时间 LTIME EQU 32H ;低电平持续时间 PERIOD EQU 34H ;脉冲周期 HEDGE EQU 36H ;正跳时刻 LEDGE EQU 38H ;负跳时刻 IOS1_IMAGE EQU 3AH ;IOS1的映像 ORG 2080H LD SP, #00C0H LDB IOC0, #01H ;允许HSI.0输入 LDB INT_MASK, #00H ;屏蔽中断,采用查询法 LDB HSI_MODE, #03H ;选择触发方式3 CLR HTIME CLR LTIME CLR IOS1_IMAGE
2、HSI数据有效中断(中断向量2004H,优先级2) •该中断类型含有两个中断源:FIFO队列满和保持寄存器有 值。具体由哪一个中断源来申请中断由IOC1.7来控制。置1, 由FIFO队列满申请中断,置0,由保持寄存器有值来申请中 断。 •HSI数据有效中断是HSI的四个引脚的公共中断,当多引脚 同时启动时,在中断服务程序中,尚需查询HSI_STATUS寄 存器,以确定待处理事件是哪一引脚上发生的。
5.1 HSI的工作原理
5.1.1 HSI的基本结构
• 图5.1所示为HSI的基本结构图,下面对其工作原理逐 一介绍。
1、HSI允许逻辑控制: HSI的 4条输入引脚是否允许输入 信号,或是作为其他用途,用户可通过对IOC0和IOC1 的有关位的设置来实现这种控制。具体情况见图5.2。
2、跳变检测器:跳变检测器主要负责两件事情,第一, 检测HSI的4个输入引脚的当前电平状态(每个状态周 期T自动检测一次),并将检测结果送HSI_STATUS寄 存器对应的奇数位,高电平置1,低电平置0。第二, 按照HSI_MODE寄存器规定的事件方式对HSI的4个输 入引脚的状态变化进行监视与检测。一旦出现规定事 件,即将FIFO寄存器高4位的对应位置1。 3、HSI_MODE寄存器是一个8位的只写专用寄存器,地 址是03H,用于规定HSI引脚上的事件触发方式,共4 种方式,每种方式对应一种事件。图5.3给出了 HSI_MODE寄存器各数据位的定义图。
单片机原理及应用(概述)

嵌入式系统的由来:
微型计算机功能的划分:
数值计算:海量、高速(通用计算机系统) 智能控制:对象嵌入,I/O控制(嵌入式计算机系统) 嵌入到对象体系中的专用计算机系统 关键词:计算机、嵌入性、专用性 采样、控制要求(接口电路、实时性) 环境要求(体积、可靠性) 专用要求(软硬件的裁剪性)
嵌入式计算机的定义:
新的发展——ARM
ARM公司是享誉全球的知识产权(IP)供应商,提供高性 能低功耗IP设计的授权。 全球20家最大的半导体厂商中有19家是ARM的用户 发售了超过10亿个ARM微处理器内核 在2001年,全行业74.6%采用的是ARM的微处理器结构。 ARM公司通过出售芯片技术授权,而非生产或销售芯片, 建立起新型的微处理器设计、生产和销售商业模式。
ARM的发展历史
1985年4月26日第一个ARM原型诞生在英国剑 桥的Acorn公司 1990年成立了Advanced RISC Machines Limited 20世纪90年代,ARM32位嵌入式RISC处理器 占据了低功耗、低成本和高性能的嵌入式系统应 用领域的领先地位
ARM处理器的3大特点:
应用系统的开发
(1)总体方案设计 (2)系统硬件设计 (3)系统软件设计(监控程序设计)协调各执行模块和操作者的 关系,在系统软件钟充当组织调度的角色 (4)应用软件的编制(构造数据结构、建立逻辑/算术运算关系、 绘制流程图)、调试 (5)仿真调试 (6)程序固化 (7)脱机运行
硬件实现:实时性强,响应速度快 软件实现:简化电路结构,降低成本,减少故障率,提高系统的 灵活性与通用性,同时降低系统实时性,增加处理时间,增加 软件设计费用,设计时间增加
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
4、按内容寻址的寄存器(CAM)阵列:由8个23位的寄 存器组成,每个寄存器的结构同保持寄存器。CAM阵 列自动将8个寄存器的时间值循环地送时间比较器中与 T1(或T2)的时间做比较。一旦相等,则将相应的命 令值送HSO译码器译码,从而触发相应的事件。同时 CAM阵列中存放该命令的寄存器自动被清0。 • 每次比较时间值需1个状态周期,因此循环比较一轮需 要8个状态周期。这就决定了HSO的时间分辨率为8个 状态周期。 • CAM阵列中的命令不存在先进先出问题,某事件发生 的早晚取决于命令中的时间值。 • CAM阵列满且保持寄存器有值时,会使标志位IOS0.6 置1。 5、HSO允许逻辑:用于控制HSO.4和HSO.5两引脚是否允 许输出信号。允许则IOC1.4和IOC1.6置1,反之置0。
事件 类型 外 部 事 件 (2006 H,3)
事件 编号 0 1 2 3 4 5 6 7
事 件 内 容 在HSO.0引脚上输出D位规定的电平状态 在HSO.1引脚上输出D位规定的电平状态 在HSO.2引脚上输出D位规定的电平状态 在HSO.3引脚上输出D位规定的电平状态 在HSO.4引脚上输出D位规定的电平状态 在HSO.5引脚上输出D位规定的电平状态 在HSO.0和HSO.1引脚对上同时输出D位 规定的电平状态 在HSO.2和HSO.3引脚对上同时输出D位 规定的电平状态
第六章 高速输出口(HSO)
• • MCS-96单片机的高速输出口不同于普通的输出端口。 1. 普通输出端口的状态(数据)由CPU直接管理, 而HSO内设有CAM(按内容寻址的寄存器)阵列。欲 触发的事件可由CPU预置其中,到时由HSO自动触发, 无须CPU的参与。 2. 普通输出端口只限于输出高低高低电平信号外, 还可触发4个软件定时器、启动A/D转换、复位定时器 2等事件。
事件发生的标志 IOS0.0置1 IOS0.1置1 IOS0.2置1 IOS0.3置1 IOS0.4置1 IOS0.5置1 IOS0.0和IOS0.1 置1 IOS0.2和IOS0.3 置1
内 部 事 件 (200A H,5)
8 9 A B C D E F
软件定时器0时间到 软件定时器1时间到 软件定时器2时间到 软件定时器3时间到 无定义 无定义 复位定时器2 启动A/D转换
6.2 HSO的中断
• HSO有两种中断类型,即内部事件中断和外部事件中断。 1、HSO内部事件中断(中断向量200AH,优先级5) • 该类型中断有6个中断源,其中4个软件定时器,启动A/D转换和复 位定时器2,6个中断源是否允许申请中断由公共控制开关 HSO_COMMAND.4控制。置1允许,置0禁止。 • 四个软件定时器预定时刻到,会设置对应的标志位IOS1.0~IOS1.3。 而启动A/D转换和复位定时器2,则没有相应的标志来指示这类事 件的发生。 2、HSO外部事件中断(中断向量2006H,优先级3) • 该类型中断有8个中断源,即6个HSO.0~HSO.5单通道输出,HSO.0 和HSO.1双通道输出,HSO.2和HSO.3双通道输出。8个中断源是否 允许申请中断仍由公共控制开关HSO_COMMAND.4控制。置1允许, 置0禁止。 • 6个通道HSO.0—HSO.5产生输出会使对应的标志位IOS0.0-—IOS0.5 置1。
3、保持寄存器:是一个23位的寄存器,高7位放命令字 中的低7位有效数字。低16位放触发时间值。保持寄 存器负责将HSO_COMMAND和HSO_TIME的内容向 CAM阵列传送。只要CAM阵列中有空位,保持寄存 器中的命令便会自动向CAM阵列中传送。一旦CAM 阵列中已存满8项命令,保持寄存器中的命令就不再 向CAM阵列中传送。保持寄存器中的命令只有进入 CAM阵列后才有机会被执行。 • 保持寄存器中有值时,会使IOS0.7置1,此时不能再 向其中写入新的命令,否则原有命令会被新的命令取 代。保持寄存器向CAM阵列传送一条命令需8个状态 周期。因此向保持寄存器写命令的前后间隔不能短于 8个状态周期。
IOS1.0置1 IOS1.1置1 IOS1.2置1 IOS1.3置1
无标志 无标志
2、HSO_TIME寄存器:是一个16位按字只写寄存器,地 址为04H。用来设定HSO_COMMAND所欲触发事件 的触发时间(用时间计数值来表示)。通常写入的时 间值是以T1(或T2)的当前值为起点加上所需延时 的时间间隔。因此设置时间值时常用如下的方法: ADD HSO_TIME, TIMER1( TIMER2), # TIMER1(或TIMER2), #延时计数值 具体写入时应注意先写HSO_COMMAND后写 HSO_TIME,一旦时间值写入,则该16位时间值与前 面写入的8位命令字中的后7位即被一同送入保持寄存 器中,在向HSO_COMMAND和HSO_TIME写值时, 应该注意先关中断。
•
6.1 HSO的工作原理
HSO的基本结构 6.1.1 HSO的基本结构
• 图6.1所示为HSO的基本结构图,下面对其工作 原理逐一介绍。
1、HSO_COMMAND寄存器:是一个8位只写专用寄存器, 地址为06H,用以规定在设定的时刻触发什么样的事件。 HSO共可触发14种事件,其中8种为外部事件,6种为 内部事件。内部事件只在芯片内部起作用,不对外输 出信号。HSO_COMMAND寄存器各数据位的定义如 下: X T D I 事 件 编 号
• • • • • • • • • • • •
ORG DI LD LDB ADD NOP NOP LDB ADD EI RET END
3200H
;中断服务子程序
AX , TIMER1 ;取正跳变时间 HSO_COMMAND , # 00H ;HSO.0置0 HSO_TIME , AX , 5000H[0] ;等待8状态周期 HSO_COMMAND , # 30H ;HSO.0置1,且允许中断 HSO_TIME ,AX , 5002H[0]
• 程序设计中应考虑中断响应时间Techo,故实际的TN、TP应做如 下修正: • T1N = 脉冲宽度TN - Techo • T1P = 脉冲周期TP - Techo • 其中:T1N≥8(64T)(16µs), T1P≥9
6.3 HSO的应用举例
• HSO的使用应注意以下几点: 1、通过对IOC1的设置来确定是否启用HSO.4、HSO.5引脚,若启用则 IOC1.4和IOC1.6置1。同时记住将IOC0.4和IOC0.6置0。 2、写命令前若不能确定保持寄存器是否空闲,应先查询IOS0的最高两位, 在确知保持寄存器空闲时方可写入命令。 3、写命令时先关闭中断,且先写HSO_COMMAND命令字,后写 HSO_TIME时间值。 4、若以定时器1作为时间基准,则所设定的时间值不应小于定时器现行 值加3。 • 例1:利用HSO.0输出脉冲,其宽度存于5000H单元,周期存于5002H : 单元。 • 用HSO产生脉冲需设置正跳变和负跳变两个事件。正到负跳变期 间为脉冲宽度TN,正到正跳变期间为脉冲周期TP。
• 主程序: • • • • • • • • • • • • • ORG 2080H LD SP,#00C0H DI ORB INT_MASK ,# 08H ;开HSO外部事件中断 CLRB INT_PENDING ;清中断信号 LD AX , # T1N LD BX , # T1P ST AX ,5000H[0] ;设置脉宽 ST BX ,5002H[0] ;设置周期 LDB HSO_COMMAND , # 30H ;HSO.0置1且允许中断 ADD HSO_TIME , TIMER1 ,# 3 EI HERE:SJMP HERE ;执行其他任务,等待中断
• D3~D0:触发事件的编号,见表6.1 • D4:事件触发时是否申请中断,置1申请,置0不申请。 • D5:事件触发时在HSO引脚输出高电平还是低电平。置 1输出高电平,置0输出低电平。(仅对外部事件有效) • D6:事件触发时间基准选T1还是T2,置1选T2,置0选 T1。 • D7:无定义,不进入保持寄存器。