AT89S51单片机并行I/O端口的扩展

嵌入式系统 时间:2009-09-23 来源:网络

3.2 系统电路的调试
3.2.1 调试方法
在最小系统电路中按照图1完成并行I/O端口扩展的系统硬件电路。编写系统软件程序并在Keil C软件环境下编译、连接、调试程序,修改错误。用ISP编程器将实验程序代码写入AT89S51单片机片内ROM中。在单片机系统硬件电路板上插上单片机,开机运行,若3个数码管依次显示“0”、“1”、“2”,则说明系统工作正常。
3.2.2 调试中出现的问题及原因
在调试初期,由于未考虑8155复位比单片机复位慢,一开始未加100 ms延时程序,系统运行时出现3位数码管显示均为“8.”。为找出发生此现象的原因,将数码管改由AT89S51单片机P1口送段码,P2口送位选通,将动态显示的程序做相应修改,调试通过后用ISP编程器将代码写入AT89S51单片机片内ROM中,开机运行,3个数码管动态显示“0”、“1”、 “2”。此实验现象说明8155器件工作不正常。按照图1连线,核实连线及端口地址无误后,再次用ISP编程器将实验程序代码写入AT89S51单片机片内ROM中,开机运行,3个数码管显示均为“8.”。此现象说明8155器件工作不正常的原因不是硬件电路的问题。研究8155的特性参数后发现8155 复位比单片机复位慢,在系统初始化时存在时差。在系统复位后应加100 ms的延时,以保证8155完成复位工作。在设计实验程序开始加100 ms延时程序,将实验程序代码写入AT89S51单片机片内ROM中,开机运行,3个数码管动态显示“0”、“1”、“2”,达到设计目标。

4 结论
通过AT89S51与Intel 8155器件接口实现了并行I/O端口的扩展,实现了3个数码管动态显示。由实验可知,采用8155扩展并行I/O端口方便、实用、成本低、且扩展的FO 端口可编程。由于Intel 8155内部自带256B的SRAM和一个14位的加1计数器,因此在单片机外扩展8155不仅增加了并行I/O端口,同时丰富了SRAM与计数器等资源。值得注意的是8155复位比单片机复位慢,在程序开始应加延时程序,调整系统初始化时,应调整Intel 8155和单片机的复位时差。

1 2 3

关键词:扩展并行单片机AT89S51

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关文章


用户评论

请文明上网,做现代文明人
验证码:
查看电脑版