第5章 输入输出流和异常
- 格式:ppt
- 大小:276.50 KB
- 文档页数:46
第五章数字信号的输入与输出智能仪器的信息输入、输出,可以分为数字量与模拟量。
数字量的输入输出相对较简单,对于模拟量的输入,一般信号都比较微弱,需要放大,A/D转换等。
一、常见的数字信号数字量输入信号:开关、按钮,数字式传感器,方波信号,正弦波信号等。
数字量输出:LED显示、指示灯、液压阀、继电器控制、步进电机控制等。
二、数字量信号的输入特点:1、信号的放大与变换,对于许多数字信号,是信号很弱的周期性信号,如正弦信号,三角波信号。
而输入单片机或微机中的信号一般有一定的电压幅值要求。
如光栅输出的信号就很小的正弦波。
常用的方法,先放大,然后处理。
当电压较高时,也不能直接输入,需要进行分压。
如图所示:2、隔离,对于一些输入信号,由于波动等,很容易对系统产生影响,需要采取隔离输入,常见的是光电隔离。
下图为光耦合器的结构与特性图4-16光耦合器结构与特性a)耦合器结构b)输入特性c)输出特性3、缓冲驱动,为了提高信号的驱动能力,改善信号性能,经常在输入单片机或微机前加一级缓冲,常用的是74HC244等。
4、安全保护,当输入电压变大到一定量时,会对系统造成破坏,因此,对于输入信号变化较大的情况,需要考虑安全保护。
常用稳压二极管等。
5、开关信号输入单片机中的常见方法:按键信号TLP-521-4是4路光耦,光耦前要接限流电阻,不同的光耦由于允许电流不同,限流电阻也不同。
进入单片机前,一般加驱动器74LS244。
三、数字信号的输出1、输出信号的几个问题1)功率匹配问题,单片机或微机的输出信号功率较小,要驱动不同的负载,要求的功率不同,电压不同,所以在在输出驱动时,首先关心输出的电压与功率。
如驱动发光二极管,正向电压为2-2.5V,最大电流为2-20mA,对于AT89C51,I/O口的最大灌电流10mA,因此可以直接驱动发光二极管。
8mA,则:R=(5-2.2)/0.008=350(Ω)因此R一般选取200Ω-500Ω。
第一章 微型计算机基础题1-1 计算机发展至今,经历了哪几代?答:电子管计算机、晶体管计算机、集成电路计算机、超大规模集成电路计算机、非冯诺伊曼计算机和神经计算机。
题1-2 微机系统由哪几部分组成?微处理器、微机、微机系统的关系是什么? 答:1、微机系统分硬件和软件,硬件包括CPU、存储器、输入输出设备和输入输出接口,软件包括系统软件和应用软件。
2、微处理器是指微机的核心芯片CPU;微处理器、存储器和输入输出设备组成微机;微机、外部设备和计算机软件组成微机系统。
题1-3 微机的分类方法包括哪几种?各用在什么应用领域中?答:按微处理器的位数,可分为1位、4位、8位、32位和64位机等。
按功能和机构可分为单片机和多片机。
按组装方式可分为单板机和多板机。
单片机在工业过程控制、智能化仪器仪表和家用电器中得到了广泛的应用。
单板机可用于过程控制、各种仪器仪表、机器的单机控制、数据处理等。
题1-4 微处理器有哪几部分组成?各部分的功能是什么?答:微处理器包括运算器、控制器和寄存器三个主要部分。
运算器的功能是完成数据的算术和逻辑运算;控制器的功能是根据指令的要求,对微型计算机各部分发出相应的控制信息,使它们协调工作,从而完成对整个系统的控制;寄存器用来存放经常使用的数据。
题1-5 微处理器的发展经历了哪几代?Pentium系列微处理器采用了哪些先进的技术?答:第一代4位或低档8位微处理器、第二代中高档8位微处理器、第三代16位微处理器、第四代32位微处理器、第五代64位微处理器、第六代64位高档微处理器。
Pentium系列微处理器采用了多项先进的技术,如:RISC技术、超级流水线技术、超标量结构技术、MMX技术、动态分支预测技术、超顺序执行技术、双独立总线DIB技术、一级高速缓冲存储器采用双cache结构、二级高速缓冲存储器达256KB或512KB、支持多微处理器等。
题1-6 何为微处理器的系统总线?有几种?功能是什么?答: 系统总线是传送信息的公共导线,微型计算机各部分之间是用系统总线连接的。
标准输入输出流标准输入输出流(Standard Input/Output Stream)是计算机程序中常用的一种输入输出方式,它是程序与外部环境进行数据交换的重要方式。
在大多数编程语言中,都有对标准输入输出流的支持,比如在C语言中,可以使用stdio.h库中的函数来进行标准输入输出操作。
在本文中,我将介绍标准输入输出流的基本概念、使用方法和一些常见的应用场景。
标准输入流(stdin)是程序从键盘或其他输入设备读取数据的流,而标准输出流(stdout)则是程序向屏幕或其他输出设备输出数据的流。
这两个流在程序运行时都是默认打开的,可以直接使用,不需要额外的操作。
除了标准输入输出流之外,还有标准错误流(stderr),用于输出程序的错误信息。
在C语言中,可以使用printf函数向标准输出流输出数据,使用scanf函数从标准输入流读取数据。
比如:```c。
int num;printf("Please input a number: ");scanf("%d", &num);printf("The number you input is: %d\n", num);```。
上面的代码中,printf函数将提示用户输入一个数字,然后使用scanf函数从标准输入流读取用户输入的数字,并使用printf函数将其输出到标准输出流。
除了C语言之外,其他编程语言也都提供了类似的标准输入输出流操作方式。
比如在Python中,可以使用input函数获取用户输入,使用print函数输出数据。
在Java中,可以使用System.in和System.out来进行标准输入输出操作。
标准输入输出流在实际应用中有着广泛的用途。
比如在命令行程序中,通常会使用标准输入输出流来与用户进行交互;在网络编程中,可以使用标准输入输出流来进行数据的读写;在文件处理中,可以使用标准输入输出流来进行文件的读写操作。
C语言的输入输出流C语言作为一种面向过程的编程语言,其输入输出流(Input/Output Stream)是非常重要的概念。
输入输出流允许我们在程序中与用户交互,从用户处接收输入并向用户展示输出。
本文将探讨C语言中的输入输出流相关的概念和函数,以及如何在程序中使用它们。
一、标准输入流(stdin)、标准输出流(stdout)和标准错误流(stderr)C语言中,有三个预定义的输入输出流,分别是标准输入流(stdin)、标准输出流(stdout)和标准错误流(stderr)。
它们分别被定义为文件指针,可以通过它们来进行输入和输出操作。
1. 标准输入流(stdin)标准输入流(stdin)用于从用户处接收输入。
在C语言中,我们可以使用`scanf()`函数来从标准输入流读取输入数据。
```c#include <stdio.h>int main() {int num;printf("请输入一个整数:");scanf("%d", &num);printf("您输入的整数是:%d\n", num);return 0;}```在这个例子中,`scanf()`函数用于从标准输入流(stdin)中读取一个整数,并将其存储到变量`num`中。
然后,我们使用`printf()`函数将输入的整数输出到标准输出流(stdout)上。
2. 标准输出流(stdout)标准输出流(stdout)用于向用户展示输出。
在C语言中,我们可以使用`printf()`函数向标准输出流打印输出。
```c#include <stdio.h>int main() {printf("Hello, world!\n");return 0;}```在这个例子中,`printf()`函数用于向标准输出流(stdout)打印字符串"Hello, world!",并在字符串的末尾添加一个换行符。