当前位置:首页 > 单片机 > 单片机
[导读]   51单片机集成度高,控制、处理能力强,工作可靠稳定,已广泛应用于生产过程的自动检测、工业实时控制、机器人、通信、导航、医疗卫生和智能仪器仪表等领域。在这些应用中,特别是在工程信号的自动测

  51单片机集成度高,控制、处理能力强,工作可靠稳定,已广泛应用于生产过程的自动检测、工业实时控制、机器人、通信、导航、医疗卫生和智能仪器仪表等领域。在这些应用中,特别是在工程信号的自动测试、分析中,常常需要记录、存储大量的数据,某些数据还需长期或永久保存。目前,单片机系统保存、记录数据的工具是随机存取存储器(RAM)。众所周知,RAM不能长久保存数据,51系列单片机系统的数据存储器最大只有64 KB,因此这些方法满足不了某些实际系统的要求。当前磁记录技术已非常成熟,硬盘记录、存储系统已成为计算机系统中的主流设备。它的存储容量大,存取速度高,可以永久性地保存数据,而价格却越来越低。将其应用于单片机系统,可使组成的系统性能大为提高。
  
  IBM - PC计算机支持硬盘系统,主机与硬盘之间的接口技术已经标准化,已得到广泛的应用。用IBM - PC机的硬盘系统作为51系列单片机系统的数据存储设备,接口电路结构简单,无需专门设计硬盘的驱动电路,因而构成的应用系统性能价格比非常高。

一、接口电路的设计

  IBM - PC机硬盘驱动器适配器简称硬盘控制器。它是一个智能部件,可接一个或两个硬盘,通过系统板上62脚I/O通道插槽与PC机相连。这62脚信号线在此只用了40脚,其中AO~A19为20位地址线;DO~D7是8位数据线;MEMR用于读硬盘的基本I/O程序;IOR和IOW分别为主机读、写硬盘控制器的控制信号;IRQ5、DRQ3分别为硬盘控制器的中断请求和DMA请求信号;DACK3为主机响应DMA时送给控制器的信号;另外还有一个复位硬盘控制器的RESET信号,一个DMA数据传送时禁止I/O操作的AEN信号和6根电源、地线。主机从硬盘读取数据或向硬盘写入数据均是通过向硬盘控制器提供的6个可访问的寄存器写入命令和控制字来实现的。因此,设计单片机与硬盘控制器的接口电路时,只要考虑以上信号的产生、接收,单片机数据存储器的扩展,DMA控制器的连接等问题即可。在PC机中,硬盘控制器的6个可访问的寄存器占用主机的I/O端口地址320—323H,信号的发送、接收均是通过这几个口地址寻址的。20根地址线实际只用了10根,51系列单片机有16根地址线,能满足地址译码的要求。51系列单片机不直接支持DMA数据传送方式,而硬盘控制器和数据存储器之间的数据必须采用DMA方式。在PC机中,主机对硬盘控制器的读/写操作是通过对I/0端口的读/写来实现的,而单片机系统没有I/O读/写指令,可采用存储器映射方式,将硬盘控制器的4个地址映射到外部数据存储器,这样控制器的IOR和IOW分别与单片机的WR和RD相连即可。硬盘控制器的中断请求信号IRQ5只用于硬盘操作结束信号,因此,此信号作为单片机的INT1。其他信号线的连接方式不赘述,本接口电路如图1- 91所示。

二、软件设计

  在IBM - PC机中,主机可通过调用BIOS程序实现控制器、驱动器和硬盘的诊断,数据的存入和取出,设置硬盘的参数,测试硬盘驱动器是否准备好,格式化硬盘等功能;可通过DOS中断程序灵活地进行数据文件的加工、处理;还可通过硬盘启动和引导系统,安装各种应用程序。因此它的软件结构很复杂,程序量也很大。在本例中,只是把硬盘作为大容量数据存储器,因此只需简单地格式化磁盘,读/写数据以及测试硬盘驱动器的好坏、是否准备好等功能,可通过向控制器的6个寄存器写入命令和控制字来实现。这6个寄存器的访问逻辑见表1- 25。

  数据输入/输出寄存器( DIOR)很重要,是控制器的信号主吞吐口。状态寄存器(321R)提供硬盘控制器的硬件状态,图1- 92为该寄存器每一位的作用。其他4个寄存器的功能、用途参见相关文献,在此不赘述。硬盘控制器的命令是由6字节组成的字块,称为命令块。由命令块可发布19条命令,本节只选用其中的少数几条,如读盘(READ)、写盘(WRITE)、格式化驱动器(FMTDRV)和测试驱动器是否就绪(TSTRDY)等。一条硬盘控制器命令的执行全过程可分为3个阶段:命令的发送、执行和结束。在命令的发送阶段,首先须写“选择控制器”寄存器,把硬盘控制器“启动”起来,然后再向控制器写入6字节的命令块;在命令的执行阶段,控制器根据接收到的命令内容执行各种操作;当命令执行完后,只有主机经DIOR把“完成状态”字节读走,命令执行的全过程才告结束,否则,硬盘控制器的工作状态将发生混乱。控制器提供的“完成状态”字节主要是向主机报告此次操作是否出现错误,若出现错误,主机还可读出错误的类型、出错的扇段地址等信息。

  根据以上分析,软件设计如下:
  
  (1)主监控程序
  
  此部分程序主要实现硬盘控制器的初始化、参数设定等功能。其程序框图如图1 - 93所示。
  
  (2)功能模块
  
  对于硬盘上数据的读/写,控制器采用DMA数据传送方式。当数据读/写操作完成后,控制器还发出中断请求信号,报告命令执行完毕。因此,对于读盘和写盘操作,进入功能程序后,先设置DMA控制器的参数、工作状态,初始化中断服务程序;然后写入命令块和DMA、中断使能,进入读/写操作。写盘程序流程图如图1- 94所示。

  读盘操作与写盘操作非常相似,只是数据传送方向相反。因此,程序结构基本一样,在此不再赘述。
  
  测试硬盘工作是否就绪、格式化硬盘等操作不需要传送数据,这部分程序不需要DMA参与,但硬件中断还需要。其他和写盘操作也基本相同,不再说明。
  
  本例研究的51单片机与IBM - PC硬盘驱动器的接口电路已应用于便携式智能数据分析、测试仪,性能稳定、可靠。由于数据存储到硬盘上的方式与IBM - PC机相同,因此,单片机系统可与IBM - PC机共享数据,为工程技术人员提供了极大的方便。


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

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 信息技术
关闭
关闭