×

新导航介绍,点击查看

计算机原理

发表日期:2007-07-03 摄影器材: 其它相机 点击数: 投票数:

一,电脑发展史
从电脑的发展来看,可以大致分为5个阶段:
    1.电子管时代
    该阶段的计算机以电子管作为基本电子元件,称为“电子管时代”。电子管计算机的主存储器使用的是磁鼓,主要用于数值计算。但由于其体积大、耗电量多、价格贵,而且运行速度和可靠性都不高,使计算机的应用受到了很大限制。
    2.晶体管时代
    该阶段的计算机以晶体管作为基本电子元件,称为“晶体管时代”。晶体管计算机主存储元件使用磁芯为主,晶体管计算机不论是在运算速度和可靠性上都比电子管计算机先进。
    3.集成电路时代
    该阶段的计算机采用中小规模集成电路(SSI、MSI),称为“集成电路时代”。集成电路计算机所采用的主存储器为半导体存储器,系统采用微程序技术与虚拟存储技术,并开始使用多种高级语言和成熟的操作系统。由于其电路集成度高、功能增强、价格合理,使计算机在应用方面出现了质的飞跃。
  4.超大规模集成电路时代
  该阶段的计算机以大规模的集成电路作为基本电子元件,称为“超大规模集成电路时代”。大规模集成电路的出现,不仅提高了电子元件的集成度,还把电子计算机的运算控制器等部件集成在一块电路板上。这就使计算机向巨型机和微型机发展成为可能,而微型计算机的出现使计算机更为普及,并深入到社会生活的各个方面,同时为计算机的网络化创造了条件。
  5.人工智能时代
  从20世纪80年代开始进行了第五代计算机的研制工作,与前四代计算机的本质区别是:计算机的主要功能从信息处理上升为知识处理,称为人工智能计算机。

二,电脑的组成
       电脑由硬件系统和软件系统两部分组成。 从外观来看,电脑是由机箱、板卡、插件等元器件组成的,这些就叫电脑的硬件,它们是电脑可以进行工作的物质基础。电脑软件部分是指在硬件设备上运行的各种程序以及有关的数据资料,在外观上是不可见。可以打个比方:硬件就相当于人脑,而软件相当于人的思维。 电脑硬件是支撑电脑软件工作的基础,没有足够的硬件支持,软件也就无法正常工作。电脑软件随硬件技术的迅速发展而发展,反过来,正是软件的不断发展与完善,导致对硬件要求越来越高,又促进了硬件的新发展,两者的关系可谓唇齿相依,缺一不可。 (一)、 电脑的硬件 电脑的硬件体系结构以数学家冯·诺依曼(VonNeumann)的名字命名,被称为VonNeumann体系结构。主要由运算器、控制器、存储器、输入设备和输出设备等几部分组成。 1.运算器、控制器 运算器是数据处理装置,用来完成对数据的算术运算和逻辑运算;控制器是发布操作命令的装置,用来控制整个计算机自动执行程序,它类似于人的大脑中枢,指挥和协调计算机各部件的工作。运算器和控制器合称为中央处理单元(Central Processing Unit),简称CPU。CPU通过几个部分相互间的配合,从而实现数据的分析、判断和计算等处理,达到控制电脑其他部分协调工作的目的。 2.存储器 存储器分为内存储器和外存储器。内存储器简称内存或主存,它的存储容量一般较小,但存取速度快,主要用于暂时存放当前执行的程序和相关数据;外存储器作为内存的辅助存储器,称为外存或辅存,它的存储容量大,但存取速度比内存慢,主要用于长期存放大量计算机暂时不执行的程序和不用的数据。 3.输入设备 输入设备负责将外部的各种信息或指令传递给电脑,然后由电脑处理。常用的输入设备有键盘、鼠标、扫描仪、数字照相机、电子笔等。 4.输出设备 输出设备负责将计算机处理的中间结果和最终结果以人们能够识别的字符、表格、图形或图像等形式表示出来。最常用的输出设备有显示器、打印机和绘图仪等。 (二)、 电脑的软件 电脑的软件系统一般可以分为:系统软件和应用软件两大类。目前常见的系统软件有操作系统、数据库管理系统等;常见的应用软件是指各种字处理软件、辅助制造和辅助教学软件、各种图形图像软件等。
三,计算机总线
1,
通信协议简介
   
  这里所讨论的通信协议是针对位于测控系统最底层采用RS-422RS-485总线构成的主、从式网络,比起通常计算机网络系统的网络通信协议(OSI协议、TCPIP协议等)要简单得太多。然而,这种讨论对理解通常网络系统的网络通信协议,特别是网络通信协议的层次结构是有帮助的。

    通信协议是为网络数据交换而建立的规则或标准,也可理解成通信双方(各方)的一系列约定。例如通信双方约定:都采用RS-485接口,初始化都设置成9 600波特,7位数据位,1位停止位,采用奇校验。这实际上是遵循了两个层次的协议:物理层——规定物理连接、电气特性等,数据链路层——规定帧的构成、差错控制等。用这两层可实现字符的传送。至于某些(或某个)字符表示什么含义,要求对方作什么样的回答还需要进一步约定。这种约定是建立在物理层和数据链路层之上的,这里不妨称之为逻辑控制层协议。对于位于测控系统底层的主、从式网络,通信协议有这三层就可以了。通信协议一旦制定,各方就要遵守,而各方可以用不同的机器,也可以使用不同的编程语言编写通信程序。

    下面是一个实际应用例子——上位机与单回路控制器之间的通信协议(逻辑控制层)

    单回路控制器可用来实现对一个回路(含一个被控对象)的控制,一般由单片机和少量外加电路构成。图1230给出了用单回路控制器控制一个容器水位的示意图。图中容器的水位是被控对象。



    单回路控制器通过AD转换器采样差压变送器反映的水位值,与事先设定的值进行比较,经过某种控制算法的运算输出一个值,该值是数字量,经DA转换器变成电信号,再经过伺服放大器进行功率放大,作用于给水阀门。例如,当水位高于设定值时,一般情况下是

将给水阀门的开度减小,以减少进水量,从而使水位降下来。这种采样和控制是按一定周期重复进行的,从而可使实际水位与设定值之差在一规定范围内。设定值可以是一个定值,也可随时间变化。

    一台单回路控制器可控制一个回路。若一个被控系统中有多个回路,则可以选用相应数目的单回路控制器。为了对各个单回路控制器进行管理以及对整个系统进行优化,一般配一台PC系列机,通常称之为上位机(相应地可将单回路控制器称为下位机)

    在本例中,上位机和各单回路控制器采用RS-485总线组成主、从式通信网络。为了进行数据通信,需要制定通信协议。总的要求是:上位机可以下传设定值和单回路控制器的参数(如采样控制周期、算法选择、算法参数等,共数十种),单回路控制器在收到上位机的报

文后,上传数据和参数。以下是通信协议的具体内容:

    上位机发给单回路控制器的报文用两种:询问报文和设置报文。询问报文周期性的发出,设置报文在需要时才发出。被寻址的单回路控制器在收到上位机的任一报文后,要回送一个报文。回文仅一种。

    上位机询问报文让指定的单回路控制器上传数据和参数,其格式和含义如下:

 

  每个字段上面的数字是该字段占用的字节数。起始符是两个特定的字符,最后一个字节是累加和,它是前面的字节不计最高位进位累加的结果。目的站地址是要寻址的单回路控制器的编号。这里的命令字段取值为01H,表示是询问报文。

    上位机设置报文令指定的单回路控制器按报文中的命令和所带数据重新进行设置,其格式和含义如下:



    其中,命令字段是相应命令的编码。例如,命令为02H时,表示被寻址的单回路控制器应按数据字段给出的值对设定值进行重新设置。数据字段为2个字节,是与命令相对应的数据,这里约定它采用整型数。若设定值或参数不是整型数,则组织报文时需进行转换,单

回路控制器收到后再还原。

    当某台单回路控制器收到上位机的任一种报文,且发现自己是被寻址对象时,回送一个报文。回文的格式和含义为:



    回文的长度不是定值。这里同样约定设定值、采样值以及各个参数字段采用整型数。若原值不是整型数,则组织报文时需进行转换,上位机收到后再还原。回文中的设定值是当前单回路控制器所采用的,如果此前上位机曾经发来过设定值,则就是该值(已按它进行设)

    在该通信协议中还规定,如果上位机在发出报文后收不到回文或收到的是不确认回文(回文的确认码为非0)时,重发报文。最多重发两遍,还不行,以出错处理。
  2,RS-232CRS-422RS-485转换器简介

    在用RS-422RS-485连接的主、从式通信网络中,常常用一台PC系列机作主机,对整个网络的通信进行管理,同时在网络应用系统中起核心作用。PC系列机只配RS-232C口,若要采用RS-422RS-485,一种方法是采用专门设计的RS-422或。RS-485接口板,另一

种方法是加转换电路,后者成本要低些。图1229所示是RS-232CRS-422RS-485转换原理示意图。图中75174是长线发送器,它将单端输入信号变成差动输出信号,并增强驱动能力。它的使能端由:RS-232C的请求发送RTS控制。75175是长线接收器,它将差动输入信

号变成单端输出信号。图中的光电隔离电路可使与机器共地的RS-232C接口与RS-422RS-485接口在电气上实现隔离,从而保证了机器的安全。

   
3,
Windows平台上的串行通信简介
    (1)使用 VC编程
    利用 Visual C++编写串行通信程序可借助于API(Application Program Interface)函数。 Windows 9x及更高版本的通信函数为32位。涉及到串行通信的APl函数主要有以下几个:
    打开通信资源(包括通信口)使用CreateFile( ) ,通信资源被看成一个文件。该函数有7 个自变量。
    对通信口的设置涉及3个函数:SetupComm( )使用来设置发送和接收缓冲区的大小; GetCommState( )可用来获取串行通信设备控制块DCB结构的当前状态;SetCommState( )用来 对通信口进行自己的设置。
    发送数据使用WriteFile( )函数。
    读接收到的数据使用ReadFile( )函数。
    清除通信错误并报告通信口当前状态使用ClearCommError()函数。
    指示通信口进行某种扩充功能(如发送DTR信号)使用EscapeCommFunction()函数。
    这些函数的说明可参看“Visual Studio MSDN”(Microsoft Developer Network)。
    (2)使用VIi编程
    Visual c++ 3.0(VB)及以上的专业版、企业版都提供了一个通信控件,5.O版本以后称之为MSComm。利用该控件可很方便地实现RS-232通信。
    下面是一个很简单的程序示例,读者从注释中不难理解它的作用。这里假定事先已定义Comml为 MSComm类型的对象。
 
   Comml.CommPort=2                                           ’指定Comml是COM2口
    Comml.Settings='9600,n,8,l”                 ’设置通信参数
    Comml.InputLen=0                                              ’读取接收数据时,一次读取所有已收到的字符
    Comml.PortOpen=True                                       ’打开COM2
    Comml.DTREnable=True                                   ’置DTR
    Comml.RTSEnable=True                                    ’置RTS
    Comml.Output=”Test Communication”      ’发送一字符串
    Do                                                                             ’循环等待,直到接收到5个以上的字符为止
               DoEvents                                                     ’此期间将控制权交还给Windows,以响应其他事件
    Loop Until Comml.InBufferCounter>=5
    InString $=Comml.Input                                       ’读收到的字符,赋给变量InString$


 

4,Turbo C中异步通信功能调用

    异步通信BIOS功能调用(INT 14H软中断)一般用于汇编语言编程。当用高级语言时应利用语言本身提供的相应功能。

    为支持异步通信口操作,Turbo C提供了bioscom( )函数。该函数的原型是:int bioscom(int cmdchar byteint port)。其中,port用来指定要操作的通信口:0COM11COM2cmd为操作命令,可取四种值:0为初始化port指定的通信口;l为发送一个字符至port指定口;2为从port指定口接收一个字符;3为取port指定口的状态。中间的参数bytecmd0时,为初始化参数字节,各位的含义同INT 14H功能0的初始化参数;在cmdl时,为欲发送的字符;在cmd23时,byte0

    bioscom( )函数的返回值是int型。它的高字节除第7位为1表示超时外,其他为LSR应位的内容,含义同LSR。接收时常判别第0位,若为1,表示已接收到一个字符。发送时常判别第5位,若为l,表示发送保持器已空,可以发送下一个字符。返回值的低字节在cmd013时,为MSR的内容,含义同MSR;在cmd2时,为接收到的字符。

    下面的程序是用查询方式对COM2进行操作。它的功能是:在接收到以“$”结尾的字符串时显示该字符串;在接收到以“D”开始、以“$”结尾的字符串时回送一事先准备好的字符串。该程序需用CTRL C命令(即同时按下CTRL键和C)强行终止。





    PC系列机中提供了通信中断逻辑,但DOS操作系统本身不支持异步通信中断。用户若要使用中断方式,需要做以下工作:

    ①编写通信中断服务程序;

    ②设置中断向量,即把通信中断服务程序入口地址填人中断向量表;

    ③置OUT21,即允许通信接口逻辑的中断送到系统总线上;

    ④取消对通信口中断的屏蔽。

    下面是用中断方式进行通信的两个程序示例。程序1的功能是:在接收到以“D”开始、以“$”结尾的字符串时将其显示出来(在主程序中),并回送一字符串;按任一键,程序退出。程序2的功能是:每当键盘输入一字符串后,将该字符串发送出去;接收中断中通过BIOS

功能调用显示所收到的字符;键入一字符串并回车后,立即按任一键,程序退出。

关键词:电脑知识

作者:少主

《计算机原理》


下一篇:没有了

最 新:
没有其它新的作品了

更多少主的POCO作品...

评论