基于多功能单片学习机的NANDFLASH驱动的设计毕业设计论文 精品文档格式.docx
《基于多功能单片学习机的NANDFLASH驱动的设计毕业设计论文 精品文档格式.docx》由会员分享,可在线阅读,更多相关《基于多功能单片学习机的NANDFLASH驱动的设计毕业设计论文 精品文档格式.docx(25页珍藏版)》请在冰豆网上搜索。
Abstract
BasedNANDFLASHmulti-functionalsingle-chiplearningmachinedriveconsistsoftwoparts:
amulti-functionalsingle-chiplearningmachineandNANDFlashmemory.Thispaperintroducesthehardware/softwaredesign,multi-functionalsingle-chiplearningmachinewithautomaticswitchcircuit,sowithamicrocontrollercaneitherrunthesystemprogram,youcanruntheuserprogram,theonlinedownloadoftheprogramcode.externallearningmachineexpansealotofhardwareresources,hardwaresystemresourcesposespracticalapplicationcircuit,throughtheuniversalexpansioninterfacecaneasilysimulatetheexternalapplicationcircuitandextendtheuserapplicationcircuit.ThenfocusesonthetheNANDFLASHexpansionboardhardware/softwaredesign,achievedthroughamulti-functionalsingle-chiplearningmachineNANDFLASHreadandwritetiming.
Keyword:
MultifunctionSCMlearningmachine;
automaticswitchcircuit;
NANDFLASH;
第一章绪论
1.1国内外研究概况
新世纪嵌入式系统迅速,主要表现在市场发展、通信、消费电子产品和多媒体应用。
在这些嵌入式系统中,存储设备的性能是决定整体系统性能的核心环节之一。
相对于体积大、抗震性能差的硬盘等传统存储介质,Flash存储器具有容量大、速度快、成本低、性能佳等很多优点,适用于大量数据的存储,因此在嵌入式系统中的应用也越来越多,如在移动电话、PDA、数码相机、体积小巧的U盘、MP3播放器等多媒体消费类电子产品,正在迅速取代NORFLASH。
NOR和NAND是现在市场上两种主要的非易失闪存技术。
Intel于1988年首先开发出NORflash技术,彻底改变了原先由EPROM和EEPROM一统天下的局面。
紧接着,1989年,东芝公司发表了NANDflash结构,强调降低每比特的成本,更高的性能,并且象磁盘一样可以通过接口轻松升级。
相“flash存储器”经常可以与相“NOR存储器”互换使用。
但是经过了十多年之后,仍然有相当多的硬件工程师也搞不清楚NAND闪存技术相对于NOR技术的优越之处,因为大多数情况下闪存只是用来存储少量的代码,这时NOR闪存更适合一些。
而NAND则是高数据存储密度的理想解决方案。
Nand-flash内存是flash内存的一种,其内部采用非线性宏单元模式,为固态大容量内存的实现提供了廉价有效的解决方案。
Nand-flash存储器具有容量较大,改写速度快等优点,适用于大量数据的存储,NAND闪存是一种比硬盘驱动器更好的存储方案,这在不超过4GB的低容量应用中表现得犹为明显。
随着人们持续追求功耗更低、重量更轻和性能更佳的产品,NAND正被证明极具吸引力。
1.2本课题的主要目标和工作
本设计通过对“基于多功能单片学习机的NANDFLASH驱动“的设计,可熟悉多功能单片学习机的软/硬件设计,NANDFALSH的基本工作原理及编程,熟悉硬件开发的基本流程,熟悉常用元器件的使用,熟悉单片机的硬件开发,常见接口电路设计,如NANDFLASH扩展电路、键盘输入电路,数码管显示电路,外部存储器电路、外部存储器的保护电路、自动切换程序电路、电源电路等。
完成的电路板可以实现对NANDFLASH正确读,写操作,测试写入数据不少于1KBYTE。
1.3全文结构
第一章介绍课题背景,国内外研究概况及课题的主要目标与工作。
第二章着重介绍了多功能单片学习机的硬件设计和软件设计,其中硬件设计包括单片机AT89S52电路,数码显示电路,外部存储器电路,外部存储器的保护电路,键盘输入电路,程序自动切换电路和电源电路等;
软件设计包括上位机PC软件和下位机软件。
第三章是详细地分析了NAND扩展板的设计。
NAND扩展板的设计主要从NAND扩展板硬件电路设计和驱动两方面阐述。
第四章介绍了NAND扩展板的调试,对硬件设计和编程中遇到的问题进行了分析。
第二章多功能单片学习机
多功能单片学习机利用自动程序切换电路,使得同一片单片机既可以运行系统程序,又可以运行用户程序,实现程序代码的在线下载。
系统提供三种编程接口:
系统小键盘编程接口、红外遥控器编程接口和微机编程接口,旨在提高使用者编程学习的灵活性。
单片机外部扩展了大量的硬件资源:
键盘、数码显示器、红外遥控接收器、蜂鸣器、RS232通信接口、RS485通信接口、电源中断接口以及一个万能扩展接口。
丰富的系统硬件资源构成了各种实际应用电路,通过万能扩展接口可以很方便地仿真外部应用电路和扩展用户应用电路。
图2-1为多功能单片学习机。
图2-1多功能单片学习机
2.1多功能单片学习机的硬件设计
学习机系统结构框图如图2-2所示。
主要由供电电路、电源电压检测电路、电源中断电路、键盘电路、红外遥控电路、数码显示电路、扬声器电路、存储器电路、存储器写保护电路、程序自动切换电路、RS232及RS485通信接口电路、单片机电路等组成。
图2-2学习机系统结构框图
2.1.1单片机AT89S52电路
AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。
使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。
片上Flash允许程序存储器在系统可编程,亦适于常规编程器。
在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得AT89S52在众多嵌入式控制应用系统中得到广泛应用。
AT89S52的主要性能:
与MCS-51单片机产品兼容;
8K字节在系统可编程Flash存储器;
32个可编程I/O口线;
三个16位定时器/计数器;
全双工UART串行通道;
六个中断源;
掉电后中断可唤醒和看门狗定时器等。
P0口:
P0口是一个8位漏极开路的双向I/O口。
作为输出口,每位能驱动8个TTL逻辑电平。
对P0端口写“1”时,引脚用作高阻抗输入。
当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。
在这种模式下,P0不具有内部上拉电阻。
在flash编程时,P0口也用来接收指令字节;
在程序校验时,输出指令字节。
程序校验时,需要外部上拉电阻。
P1口:
P1口是一个具有内部上拉电阻的8位双向I/O口,p1输出缓冲器能驱动4个TTL逻辑电平。
对P1端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。
作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。
此外,P1.0和P1.1分别作定时器/计数器2的外部计数输入(P1.0/T2)和定时器/计数器2的触发输入(P1.1/T2EX)。
在flash编程和校验时,P1口接收低8位地址字节。
引脚号第二功能:
P1.0T2(定时器/计数器T2的外部计数输入),时钟输出
P1.1T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制)
P1.5MOSI(在系统编程用)
P1.6MISO(在系统编程用)
P1.7SCK(在系统编程用)
P2口:
P2口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动
4个TTL逻辑电平。
对P2端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。
在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX@DPTR)时,P2口送出高八位地址。
在这种应用中,P2口使用很强的内部上拉发送1。
在使用8位地址(如MOVX@RI)访问外部数据存储器时,P2口输出P2锁存器的内容。
在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。
P3口:
P3口是一个具有内部上拉电阻的8位双向I/O口,p3输出缓冲器能驱动4个TTL逻辑电平。
对P3端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。
P3口亦作为AT89S52特殊功能(第二功能)使用,如下表所示。
在flash编程和校验时,P3口也接收一些控制信号。
端口引脚第二功能:
P3.0RXD(串行输入口)P3.1TXD(串行输出口)
P3.2INTO(外中断0)P3.3INT1(外中断1)
P3.4TO(定时/计数器0)P3.5T1(定时/计数器1)
P3.6WR(外部数据存储器写选通)P3.7RD(外部数据存储器读选通)
此外,P3口还接收一些用于FLASH闪存编程和程序校验的控制信号。
RST:
复位输入。
当振荡器工作时,RST引脚出现两个机器周期以上高电平将是单片机复位。
ALE/PROG:
当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。
一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。
要注意的是:
每当访问外部数据存储器时将跳过一个ALE脉冲。
对FLASH存储器编程期间,该引脚还用于输入编程脉冲(PROG)。
如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。
该位置位后,只有一条MOVX和MOVC指令才能将ALE激活。
此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。
EA/VPP:
外部访问允许,欲使CPU仅访问外部程序存储器(地