开机上电自检程序是什么?

开机上电自检程序是什么?,第1张

POST上电自检:是微机接通电源后,系统进行的一个自我检查的例行程序。这个过程通常称为POST上电自检(Power On Self Test)。对系统的几乎所有的硬件进行检测。

POST是如何进行自检测的?

主板在接通电源后,系统首先由(Power On Self Test,上电自检)程序来对内部各个设备进行检查。在我们按下起动键(电源开关)时,系统的控制权就交由BIOS来完成,由于此时电压还不稳定,主板控制芯片组会向CPU发出并保持一个RESET(重置)信号,让CPU初始化,同时等待电源发出的POWER GOOD信号(电源准备好信号)。当电源开始稳定供电后(当然从不稳定到稳定的过程也只是短暂的瞬间),芯片组便撤去RESET信号(如果是手动按下计算机面板上的Reset按钮来重启机器,那么松开该按钮时芯片组就会撤去RESET信号),CPU马上就从地址FFFF0H处开始执行指令,这个地址在系统BIOS的地址范围内,无论是Award BIOS还是AMI BIOS,放在这里的只是一条跳转指令,跳到系统BIOS中真正的启动代码处。系统BIOS的启动代码首先要做的事情就是进行POST(Power On Self Test,加电自检),由于电脑的硬件设备很多(包括存储器、中断、扩展卡),因此要检测这些设备的工作状态是否正常。

这一过程是逐一进行的,BIOS厂商对每一个设备都给出了一个检测代码(称为POST CODE即开机自我检测代码),在对某个设置进行检测时,首先将对应的POST CODE写入80H(地址)诊断端口,当该设备检测通过,则接着送另一个设置的POST CODE,对此设置进行测试。如果某个设备测试没有通过,则此POST CODE会在80H处保留下来,检测程序也会中止,并根据已定的报警声进行报警(BIOS厂商对报警声也分别作了定义,不同的设置出现故障,其报警声也是不同的,我们可以根据报警声的不同,分辨出故障所在。

POST自检是按什么顺序进行检测的?

POST自检测过程大致为:加电-CPU-ROM-BIOS-System Clock-DMA-64KB RAM-IRQ-显卡等。检测显卡以前的过程称过关键部件测试,如果关键部件有问题,计算机会处于挂起状态,习惯上称为核心故障。另一类故障称为非关键性故障,检测完显卡后,计算机将对64KB以上内存、I/O口、软硬盘驱动器、键盘、即插即用设备、CMOS设置等进行检测,并在屏幕上显示各种信息和出错报告。在正常情况下,POST过程进行得非常快,我们几乎无法感觉到这个过程。

POST自检测代码含义是什么?

当系统检测到相应的错误时,会以两种方式进行报告,即在屏幕上显示出错信息或以报警声响次数的方式来指出检测到的故障。

CMOS battery failed(CMOS 电池失效)。

原因:说明CMOS 电池的电力已经不足,请更换新的电池。

CMOS check sum error-Defaults loaded(CMOS 执行全部检查时发现错误,因此载入预设的系统设定值)。

原因:通常发生这种状况都是因为电池电力不足所造成,所以不妨先换个电池试试看。如果问题依然存在的话,那就说明 CMOS RAM 可能有问题,最好送回原厂处理。

Display switch is set incorrectly(显示开关配置错误)。

原因:较旧型的主板上有跳线可设定显示器为单色或彩色,而这个错误提示表示主板上的设定和 BIOS 里的设定不一致,重新设定即可。

Press ESC to skip memory test(内存检查,可按ESC键跳过)。

原因:如果在 BIOS 内并没有设定快速加电自检的话,那么开机就会执行内存的测试,如果你不想等待,可按 ESC 键跳过或到 BIOS 内开启 Quick Power On Self Test。

HARD DISK initializing【Please wait a moment...】(硬盘正在初始化 请等待片刻)。

原因:这种问题在较新的硬盘上根本看不到。但在较旧的硬盘上,其启动较慢,所以就会出现这个问题。

HARD DISK INSTALL FAILURE (硬盘安装失败)。

原因:硬盘的电源线、数据线可能未接好或者硬盘跳线不当出错误 ( 例如一根数据线上的两个硬盘都设为 Master 或 Slave。)

Secondary slave hard fail (检测从盘失败)。

原因:1 CMOS 设置不当(例如没有从盘但在CMOS里设有从盘) 2 硬盘的电源线、数据线可能未接好或者硬盘跳线设置不当。

Hard disk(s) diagnosis fail (执行硬盘诊断时发生错误)。

原因:这通常代表硬盘本身的故障。你可以先把硬盘接到另一台电脑上试一下,如果问题一样,那只好送修了。

Floppy Disk(s) fail 或 Floppy Disk(s) fail(80) 或Floppy Disk(s) fail(40)(无法驱动软驱)。

原因:软驱的排线是否接错或松脱?电源线有没有接好?如果这些都没问题,那买个新的吧。

Keyboard error or no keyboard present(键盘错误或者未接键盘)

原因:键盘连接线是否插好?连接线是否损坏?

Memory test fail (内存检测失败)

原因:通常是因为内存不兼容或故障所导致。

Override enable-Defaults loaded ( 当前CMOS设定无法启动系统,载入 BIOS 预设值以启动系统)。

原因:可能是你在BIOS内的设定并不适合你的电脑( 像你的内存只能跑100MHz但你让它跑133MHz ),这时进入 BIOS 设定重新调整即可。

Press TAB to show POST screen (按 TAB 键 可以切换屏幕显示)

原因:有一些 OEM 厂商会以自己设计的显示画面来取代 BIOS 预设的开机显示画面,而此提示就是要告诉使用者可以按TAB来把厂商的自定义画面和BIOS预设的开机画面进行切换。

Resuming from disk,Press TAB to show POST screen(从硬盘恢复开机,按TAB显示开机自检画面)。

原因:某些主板的BIOS 提供了 Suspend to disk(挂起到硬盘)的功能,当使用者以 Suspend to disk 的方式来关机时,那么在下次开机时就会显示此提示消息。

BIOS ROM checksum error-System halted(BIOS 程序代码在进行总和检查 ( checksum ) 时发现错误,因此无法开机)

原因:遇到这种问题通常是因为 BIOS 程序代码更新不完全所造成的,解决办法重新刷写烧坏主板 BIOS。

HARD DISK initizlizing 【Please wait a moment...】(正在对硬盘做起始化 ( Initizlize ) 动作)

原因:这种讯息在较新的硬盘上根本看不到。但在较旧型的硬盘上,其动作因为较慢,所以就会看到这个讯息。

POST自检响铃次数是如何定义的?

POST上电自检还会通过报警声响次数的方式来指出检测到的故障。但需要注意:由于目前主板BIOS类型大致可分为AWARD公司、AMI公司、PHOENIX公司(AWARD已与PHOENIX合并),因此不同类型的BIOS,其自检响铃次数所定义的自检错误是不一致的,因此一定要分清。

POST自检发现错误后如何提示?

POST自检如发现有错误,将按两种情况处理:对于严重故障(致命性故障)则停机,此时由于各种初始化 *** 作还没完成,不能给出任何提示或信号;对于非严重故障则给出提示或声音报警信号(以上介绍),等待用户处理。通过BIOS自检功能(POST自检),我们就可以方便的侦测出主板的故障所在,以便正确的解决。

如我们按下电源键后,只有电源指示灯亮,电脑屏幕没有任何反映,也没有报警声;那么针对这种情况,我们又应如何解决呢?

屏幕没有显示,也没有报警声,我们就无法从POST自检功能得到相应的信息;大家都知道,计算机是一个复杂而且精密的产品组合,因此一个环节出现问题,可能都无法启动机器(我们主要谈硬件方面)。因此,如出现黑屏,无报警声响的故障现象,我们就应根据电脑的启动过程来分析问题所在了。

电脑的启动过程是什么?

我们在按下启动键时,首先启动的应是电源(因为如果没有电源供电,那么主板上所有的配件都是无法工作的)。但是为了保证安全使用,电源部分采取了一系列安全保护措施;因此开关电源从起振到稳定之间会有一段时间的延迟,等待各组电压都稳定下来后,电源各部分会输出一个检测信号,这个信号为高电平时表示该部分电压正常,这些部分包括输入电压和各组输出电压。这些信号总和的结果就是一个POWER GOOD信号(也称为POWER OK或PWR OK信号);如果主板接受不到这个信号,那么时钟芯片会持续向CPU发送复位(RESET)信号(与我们按下RESER键相当),CPU就不会工作。

当CPU接受到正常的POWER GOOD信号,主板和CPU就启动了吗?其实主板此时,还要根据CPU的VID0-VID3引脚的定义组合,将CPU所提供的VID0-VID3信号送到电源管理模块的相应的端口;如果主板BIOS具有可设定CPU电压的功能,主板会按时设定的电压与VID的对应关系产生新的VID信号并送到电源管理模块芯片,电源管理模块将根据设定并通过DAC电压将其转换为基准电压,再经过场效应管轮流导通和关闭,将能量通过电感线圈送到CPU,最后再经过调节电路使用输出电压与设定电压值相当。

由于CPU还要根据自己所需要的频率,通过IC总线来检测主板频率发生器所设置的频率是否支持;因为电脑要进行正确的数据传送以及正常的运行,没有时钟信号是不行的,时钟信号在电路中的主要作用就是同步;因为在数据传送过程中,对时序都有着严格的要求,只有这样才能保证数据在传输过程不出差错。时钟信号首先设定了一个基准,我们可以用它来确定其它信号的宽度,另外时钟信号能够保证收发数据双方的同步。对于CPU而言,时钟信号作为基准,CPU内部的所有信号处理都要以它作为标尺,这样它就确定CPU指令的执行速度;如CPU本身的频率无法适应频率发生器所提供的高频率,也是无法正常工作的。因此只有当接受到POWER GOOD信号,和相应的得到CPU工作的电压时以及相应的时钟频率后,CPU才能正常的工作,也就是开始执行BIOS程序。

如何判断、解决故障所在?

因为如接受不到POWER GOOD信号,系统就一直处理RESET(复位)循环中,因此主板也就无法启动,相应的其它硬件,如显卡也无法工作,显示器由于接受不到显卡传出的信号,因此也就没有显示,一直处于待机状态。此时,我们应检测电源,不要以为电源灯亮,就表明电正常,因为只要有一路信号有故障(该部分电路不正常或还未稳定),输入出的POWER GOOD信号都为低电平,即表示电源部分有故障或还未进入稳定状状;虽然电源指示灯亮,但由于主板接受不到正常的POWER GOOD信号,也无法启动。我们检测电源的方法是,使用可正常工作的电源测试。如电源为ATX型我们可用导线将13与14脚短接,如电源风扇能正常运行,则表明电源是完好的,则故障应在主板上。

更换正常电源后,如系统还是没有工作的显象,应按以上主板启动过程,测试CPU的电源管理模块和频率发生器。但由于我们不可能有完善的设备来测试主板上的电源和频率模块(大多数电脑爱好者不可能有此类设置,和具有相应的检测能力)。因此我们对此还要采用排除法,即在其它正常主板上测试CPU。测试排除CPU的故障外,还应检测主板频率设置问题。电脑爱好者为使用或测试CPU的超频能力,会通过调整主板外频的方式(目前CPU已经锁频,只能设置外频,而无法设置倍频),来调高CPU的工作频率。如果CPU无法适应高工作频率,虽然电源供电正常,主板也是无法启动的。

排除了其它硬件的问题,为会么系统仍不可启动?

如果硬件一切正常(经测试),那么在POST上电自检测后,CPU会从地址FFFF0H处开始执行指令,这个地址在系统BIOS的地址范围内,无论是Award BIOS还是AMI BIOS,放在这里的只是一条跳转指令,跳到系统BIOS中真正的启动代码处。由于BIOS是连接 *** 作系统和硬件之间的桥梁,为计算机提供最低级的、最直接的硬件控制,计算机的原始 *** 作都是依照固化在BIOS里的内容(指令)来完成的。因此如BIOS文件破坏或BIOS芯片损坏,都会直接的影响主板的启动。

如何判断BIOS已经损坏?

判断BIOS是否正常比较困难,因为如没有编程器等测试工具;是无法通过感官来判断BIOS文件或芯片是否正常的,对于普通用户而言,只有寻找维修商来解决了。

如果屏幕显示BIOS ROM checksum error-System halted(BIOS 程序代码在进行总和检查 ( checksum ) 时发现错误)的提示时,应是读取BIOS时,校验总和出错,因此无法启机器。这种问题通常是因为 BIOS 程序代码更新不完全所造成的,解决办法重新刷写烧坏主板 BIOS。

电压值可以直接接进去,要是2相需注意L、N不要接反,电流需要通过电流互感器连接

Kl3403没有El3403好设置

KL3403可以使用KS2000进行设置采集的数据对应的是什么,也可以通过PLC程序设置R寄存器来采集是数据对应的变量。

EL3403有个索引号,直接设置采集的变量

随着电力的需求越来越大,不同时间段用电量不均衡的现象日趋严重。为了合理地调控电力负荷和节约能源,电力公司已开始鼓励使用多费率电能表。传统的多费率电能表一般采用机械转盘式计量方式,计量精度随机械磨损而降低,时段设置单一,人工抄表劳动强度大,且偶有窃电情况发生等诸多弊端。本文给出基于 AT89S52单片机一种新型多费率单相电能表设计,采用 AD7755电能计量芯片,电能计量准确。该电能表具有分时段计量,液晶显示,自动回抄,时段设置灵活,时间校正及时,新颖的防窃电,功耗低的特点。并对该电能表实验测试数据进行性了误差分析,指出电能计量中减小与消除误差的方法。

1 硬件电路设计

1.1总体结构

基于AT89S52单片机完成多费率单相电能表的设计,AT89S52有以下功能,8k字节Flash 闪速存储器,三级加密程序存储器,256字节内部RAM,32个可编程I/O 口线,3个 16位定时/计数器,一个 6向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路,两种低功耗电工作方式。是一个比较适合于以开关量信号输入检测的性价比较高的 8位单片机。电能表硬件设计主要包括六大模块,电压和电流检测电能计量电路 AD7755模块,串行存储与看门狗 X25045电路模块,HT1621液晶显示电路模块,串行时钟 S3530A电路模块,

RS485总线通讯电路模块,防窃电检测电路模块,总体结构如图 1所示。

图1:系统总体结构框图

1.2 电能计量

单相电能计量采用美国 ADI公司的 AD7755低功耗芯片实现。AD7755内部除了 ADC和滤波、相乘电路外都采用了数字电路,有效的消除了尖脉冲等干扰信号,使得它在恶劣的环境条件下仍能保持极高的正确度和稳定性。对单相回路中的电压、电流信号采样,计算出功率并积分将其转换为电能脉冲输出,CPU对来自 AD7755输出端 CF的脉冲进行计量,计算出电能表的累计用电量。电能与脉冲的关系为:W=M/C,式中的W为电能,单位为千瓦时,M为脉冲累计个数,C为电表脉冲常数,选取C=1600,每千瓦时为 1600个脉冲。

1.3 RS485通讯MAX487芯片实现多费率电能表的RS485通讯控制

MAX487芯片具有 RS485通讯协议,可以带下位机 128个、传输间隔大于1km、传输速率达250kb/s。电能表通过 RS485总线与用电治理计算机相连,每只电能表都有一个确定的唯一的八位十六进制的表号,初次安装,电工需要把用户信息与表号记录后输进用电治理计算机中,完成用户与治理计算机的连接。治理计算机采用广播式通讯方式下传时段设置与校时信息,此时不带有地址信息,而电能表中断接收上位机采用呼唤地址的方式上传信息,即呼唤谁的地址,那只电能表便把信息及其校验码打包向上传送给用电治理计算机,实现电能回抄。MAX487的 DE为发送器使能端,DE为 1时发送器可以工作,DI为输进端,A、B为输出端。当 DE为 0时,停止发送输出端为高阻。RE为输进使能端,RE为 0时答应接收器工作,A、B为输进端,RO为输出端RE为 1时,接收器被禁止,RO为高阻状态。因此,采用半双工通讯方式,把 DE和 RE相连然后接 AT89S52的P1.4,通过 AT89S52的 P1.4引脚来控制收发工作状态。

1.4 串行存储器

串行存储器采用美国 XICOR公司的 X25045低功耗芯片,它具备看门狗定时器WTD、电源电压监控和具有 512字节的串行 E2PROM存储器三种功能。WTD可以设置为200ms、600ms、1400ms喂狗定时间隔,软件编程写进 X25045中。在程序正常运行期间,WTD在定时间隔内收到触发信号,确保程序正常运行,一端 WTD在定时间隔内没有收到触发信号,X25045便通过 RESET引脚输出一个高电平信号,触发电能表复位来防止程序跑飞。X25045作为串行存储芯片,512字节分别用于存储电能表编码,多费率时段设置,上月和当月分时段的峰、平、谷电量和总累计电量等信息,存储次数可改写十万次,数据可保存一百年,它与 AT89S52可采用 SPI协议总线接口相连。

1.5时钟电路

时钟电路采用 S3530A芯片完成,它是一种支持 I2C总线的低功耗时钟芯片,它按照 CPU经 RS485通讯接收校时的数据来设置时钟和日历,靠自身的振荡继续走时。在 S3530A的 Xin和 Xout引脚之间跨接 32.768kHz的晶体器振荡器。它通过两线式与 CPU连接,SDA脚和 SCL脚分别接 AT89S52的 P2.0和P2.1,并有两个中断报警引脚可设置为输出秒或分同步脉冲,向 AT89S52提供周期为 1秒的中断信号,单片机系统将根据该信号通过 I2C通讯接口读取当前的时间,计算出该时刻所属的时段,实现多费率电能表的分时段计量电能。该时钟电路带有备用锂电池,正常工作时有电源 Vcc供电,同时给 3.6V锂电池充电当出现停电时,自动切换锂电池为时钟电路供电,即使停电时钟走时也正确。

1.6液晶显示

采用 HOLTEK公司 HT1621的 LCD显示驱动芯片,实现十六位 LCD数字显示。HT1621是具有 128段(32×4)内置存储器的 LCD驱动器,它片内包括控制与计时电路、显示RAM、LCD驱动及偏置、监视定时器等,采用了 48脚 SSOP封装,具有体积小和功耗低的优点,非常适合于应用电能表中,其接口电路和外围电路简单,它和 AT89S52之间采用串行接口,只需三根线。AT89S52的P2.4 、P2.5、P2.6分别接到它的 CS片选、WR写答应、DATA串行数据三个引脚上,来控制刷新显示 RAM缓冲区。另外应用中,在VDD、VLCD间接一个20kΩ可调电阻,用来调节 LCD显示对比度,调节电阻,使得VDD=5V,VLCD=4V对比度较好。

1.7 防窃电检测等

记录电能表接线端子盖被人为打开的次数而分析是否窃电。电能表被安装好后将表壳打上铅封,用户不能私自打开电能表接线的表盖破坏铅封,否则属于窃电行为。因此我们采用霍尔传感器,检测接线端子盖是否被打开。假如接线端子盖被打开,AT89S52的 P1.6引脚的电平变化,就检测到开盖一次,记录表的接线端子盖被人为打开和破环的次数,判定是否有窃电发生,当发现有窃电现象时,给出报警、断电并及时上传到上位治理计算机。实践证实该新奇的防窃电技术有效的防止窃电情况发生,效果较好。检测电路框图如图 2所示。

图2:防窃电检测框图

掉电保护电路,用 AT89S52的 P1.7输进引脚检测掉电信号,当系统正常工作是 P1.7位高电平,当忽然发生断电时,P1.7变成低电平,采用查询方式检测到 P1.7的变为低电平后,将进进掉电保护程序。电源电路中有个大滤波电容1000uf/25v,当掉电后能维持系统十多秒的工作时间,确保电能表存储好重要数据。光电隔离电路,在系统中 AD775的脉冲输出端,继电器控制端,RS485通讯端分别使用了 4N35光电隔离器。通过光的耦合作用传递电信号,把干扰源和易受干扰的部分隔离开来,进步系统抗干扰的能力。

2 软件程序设计

2.1 软件程序资源分配

多费率单相电能表软件程序共包括初始化及主程序,X25045读写程序,RS485串行通讯处理程序,中断处理程序,定时器处理程序,HT1621显示控制程序,电能分时段计量与掉电处理程序,系统自检与软件抗干扰处理八大程序模块。系统的中断资源分配为 INT0中断用于 AD7755脉冲检测,INT1用于秒同步检测,定时器 T0用于定时100ms,T1未使用,T2用于串行通讯程序波特率发生器,串行口中断设置为 RS485异步通讯接收中断。

2.2 程序模块的设计

电能表的工作过程主程序模块如图 3所示,每次上电要进行初始化,初始化包括对AT89S52单片机定时器、串行口、中断等工作方式的设定,写进串行存储芯片 X25045的控制字,串行时钟芯片 S3530A控制字,串行液晶驱动芯片 HT1621控制字。新电能表的初次工作要对 X25045初始值设定,包括电能表表号的设置,时段的设置,时钟的设置,存储地址的分配等。本系统设置了三个时段,单片机每秒从时钟芯片 S3530A中读取时钟值,然后根据串行存储芯片 X25045中预先设置好的时段,分析该时刻属于哪个时段,根据相应的时段把电能存储 AT89S52的 RAM存储器中,然后电能每累计够 1度便写进到 X25045相应的地址中。16位液晶显示器轮流显示时段与电能信息。若有通讯请求将采用中断方式与上位机进行数据通讯。若停电,将执行掉电保护程序。其它程序模块流程图略。

图3:主程序流程图

测试结果

该电能表在淄博贝林电子有限公司进行了误差测试和运行试验,上位计算机完成用电治理时段设置,设置三个费率时段,第一时段 00点 00分点到 06点 30分,为谷电量时段,第二时段 06点 30点到 22点 30分,为峰电量时段,第三时段 22点 30点到 24点 00分,为平电量时段。费率时段设置由电力供电公司根据国家政策规定设定到计算机治理系统中,通过RS485串行通讯传送到电能表中,并存储于 X25045中。每月峰、平、谷、累计电量存进电能表中,并打包传送到上位计算机治理系统,通讯波特率设为9600 bit/s。用 0.1级标准电子式电能表校验台作为标准表,该多费率电能表为被测表,贝林电子有限公司针对不同负荷的情况下进行测试,限于篇幅仅列出负荷为 5KW时的实测数据如表1 所示。测试结果表明该复费率电能表误差小于1%,属于 1.0级标准。经实验得知减小电能计量误差方法,一是通过调节 AD7755的匹配电阻调整到精确值二是该匹配电阻阻值要求随温度变化阻值变化较小三是在电能计量过程中,在时间段的切换时,计量电能的尾数部分不足 0.01度的电能计进下一个时间段中,避免了不足 0.01度的电能丢失而造成累计电量有误差。

表1:标准表与被测表丈量值 符合5KW

结束语

多费率电能表根据不同的时段设置,实现电能分时计量,采用 RS485串行通讯,实现电量自动回抄,实时校时。该电能表经淄博贝林电子有限公司生产表明,设计技术新奇,计量正确,走时精确,时段设置灵活,防窃电设计新奇,各项技术指标均达到国家多费率电能表的技术标准,具有广阔的应用远景。

本文作者创新点在于采用 AD7755电能计量芯片计量正确串行 X25045存储灵活可靠,串行时钟 S3530A走时精确,RS485总线传输可靠性高,防窃电新奇设计。采用 I2C总线结构多费率单相电能表设计更加公道,具有性价比高的特点


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8107697.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-13
下一篇 2023-04-13

发表评论

登录后才能评论

评论列表(0条)

保存