当前位置:首页 > 单片机 > 单片机
[导读]通过一个监控系统的研制,阐述了对一个不熟悉的微机系统进行改造时应遵循的原则及基本方法,介绍了双端口存贮器IDT7132和看门狗WDT的用法。 关键词:监控系统,单片机,双端口存贮器,WDT       制作微机

通过一个监控系统的研制,阐述了对一个不熟悉的微机系统进行改造时应遵循的原则及基本方法,介绍了双端口存贮器IDT7132和看门狗WDT的用法。
    关键词:监控系统,单片机,双端口存贮器,WDT
   
  制作微机监控系统时,若受监控对象本身也是一个微机系统,且又没有电路图、程序等资料时,如何采集对象的内部数据(如CPU状态等),如何修改对象的程序方不至令原系统运行不稳定和崩溃,如何充分利用监控对象的资源,是一个带有普遍性的问题。
  笔者研制的“数字实验监控系统”,其主要功能是采集30台学生实验机状态和过程信息,送往中心主机显示。监控对象是一台型号为DLES的数字电路实验机,这是某公司的产品,除简单的用法说明书外别无其它资料。该机的核心是单片机8031,带6位键盘和数码管显示、并行口8155等,可选择CPU工作方式产生各种实验信号。

1用双端口RAM采集数据
  监控系统的首要任务是获取受控对象的各种状态信息。用IO线取得的只是其外部信息,且当高频时容易遗漏。要取得重要的内部信息,必须设法使监控对象的CPU自动送出信息,即采用双CPU通讯。无论用并行通讯还是串行通讯,都要大幅修改原机程序,且要占用原机CPU很多等待、检测通讯口的时间,很容易破坏原机的固有时序。较好的方法是采用共享存贮器方式,只要在原机程序的适当位置插入一段程序,令其定时将自身的重要信息(例如片内RAM的256字节内容)送到共享存贮器就可以了。
    本系统采用双端口存贮器IDT7132来实现两CPU的通讯。双口存贮器有2套独立的IO电路,可供2个CPU在不同时刻读写各个存贮单元。但同时访问同一存贮单元会产生冲突。IDT7132有一套冲突仲裁电路,使先到一方获得优先权实现读写操作,而向另一方发出一个冲突信号BUSY。
  冲突发生时,访问存贮器失败的一方要将刚失败的一句指令再执行一次,本系统是将BUSY线接到单片机的中断线INT0,电路见图1。但单片机的程序指针PC不能直接被读写,而中断的发生又是随机的,无法掌握其出现的时刻,要重复执行中断前的一句指令殊不容易。为实现这功能,用了一点技巧:因为,中断服务程序执行前,PC值必自动压入堆栈,可在中断服务程序中将该PC值出栈,作减3处理后再入栈,则中断结束出栈的PC值已退回指向到中断前的一句指令了。


 

  原实验机已经使用了5条高位地址线,若要增加2KB容量的IDT7132,将超过8031单片机最大64K存贮空间的限制。为此,利用单片机一条悬空的中断口引脚INT1充当IDT7132的片选控制线,CPU要访问IDT7132就不能仅用常规的MOVX指令,而必须在读写存贮器的前后各增加一条使INT1变低电平然后变高电平的指令,该指令如下:
    CLRINT1MOVXA,@DPTR  SETBINT1
2原系统已用资源的查找
  要改造别人的系统,难点之一是要了解原系统对各种资源的使用情况。单片机的内部读写存贮器RAM只有128字节,而要增改原机程序必须使用这些片内RAM,从而可能造成资源冲突。为了解原系统对片内RAM的使用情况,借用了文字编辑软件的搜索功能。因为单片机对片内RAM的寻址方式只有2种:(1)直接寻址,此时,可将RAM的直接地址作为搜索关键字,调用编辑软件的搜索功能,在原实验机程序中逐个显示该地址出现的地方;(2)以R0和R1为指针的间接寻址,这时,可分别以@R0和@R1为关键字搜索原程序,在出现的地方分析R0和R1的变化情况及范围。
  若以上两方法匀未找到所关注的RAM单元,则可以肯定原系统未使用该资源。若该单元同时又是可位寻址的,而位地址只有直接寻址一种方式,故必须采用上述的第(1)种方式搜索一次,结论也是非常明确的。
3修改和插入程序的方法
  如果监控对象的信号是软件方式产生的(本实验机就是这样),修改、增加程序时在时间开销上要非常小心,否则会导致原机时序出错。以下是两种常用的可行方法:
  (1)在原程序的延时过程中,删除其延时指令,插入执行时间大致同其原延时时间相当的新程序。例如,原实验机为数码管显示而设的延时子程序就被用于将适当个字节的信息传递到双端口存贮器
  (2)在原程序中等待某些事件发生的过程中,插入新程序。例如等待键盘按键时,可以控制程序跳往新的功能模块,执行适当时间后再返回。
4监视定时器WDT的处理
  在大部分微机控制系统中,WDT(看门狗,在6800系列中是COP)都是首选的抗干扰措施之一,其作用是以软件和硬件方式设置一个定时器,定时强制系统复位,以防止程序失控“跑飞”。
  修改旧程序时必须留意查看原系统有无WDT,否则可能导致系统崩溃。若有,则首先要找到WDT的定时时间。硬件WDT的时间值一般是固定的,可查资料得到。例如8096系列是64K个状态周
期。软件WDT要先找到所用的定时器,可循2个途径:(1)芯片自身的定时器。这可以在定时器中断服务程序中查找,例如8051系列的二个定时器的中断服务程序入口地址分别是000BH和0001BH,查看这2段程序可知哪一个是用于WDT的,然后进一步在主程序的初始化设置中查看对该定时器的设置,便可找到定时时间;(2)外围芯片(例如8155)的定时器,要将之用于WDT必须将定时器溢出线接到单片机的某外部中断线上,查看这些外部中断服务程序就可以找到相应的定时器,再查看主程序中对该定时器的设置,也能找到定时值。
  知道了WDT的溢出时间后,就可以在修改或增加的程序中,每隔规定的时间插入一段指令清除定时器以使WDT不对系统复位。例如对8096系统,若不使用乘除指令,可以每执行约4K条指令插入以下2条指令
    MOV0AH,#1EH
  MOV0AH,#E1H
5借用监控对象的资源
  充分利用监控对象的资源,可以降低成本,最主要是可以使学生不必耗费时间多学习一台仪器的使用方法。本监控系统借用了原实验机上的键盘和数码管显示器。
  原实验机以扫描IO口方式扩展6位键盘,每个键盘都赋予了固定的键值和键功能,以及固定的键处理程序段。为了利用原实验机的键盘使其执行新的键功能,又不破坏原来的功能,采用了这样的方法:改写原机的键盘扫描程序段,定义当某2个键(是在原机中没有用到的)同时按下时,就跳出原程序转往一个新编写的程序模块。在该新模块中,所有键功能都可以被任意重新定义,当处理完新按键后再转回原机程序中执行。
  要利用原机的数码管显示器,可以有两种方法:
   (1)编写新的显示程序;(2)利用原程序的显示功能,将要显示的内容嵌入原程序中。因后者能很好地兼容原机程序,不易导致系统出错或崩溃,故选用之。通过研究和测试,知原机的显示机理是将显示数据送缓冲区,由专用显示模块转为八段数码管显示值。但其转换算法非常复杂繁锁。为不占用原机CPU太多时间及不易出错,将所有可能的数据逐个送入缓冲区,测出一张数据同显示式样的对照表,在增加的新程序中,将显示数据查表转换后送缓冲区就可以了。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭