`

nand flash学习笔记一

 
阅读更多

Nandflash

 

原理图上有data0-data78个引角

容量为256M*8bit,所以地址位应该有28,原理图上只有data0-data7,所以需要发出多次地址信号

1命令、地址、数据复用

2地址多次发出

 

Nandflash与内存不同,不能直接读写,要先发出命令,再发出地址,再读写数据

CLE为高电平data0-data7传输的是命令

ALE为高电平data0-data7传输的是地址

CLEALE两者都为低电平时,data0-data7传输的为数据

nWE=0,为低电平时,表示写

Nandflash读取信息

 

查看K9F2G08U0A数据手册:

Function1stCycle2ndCycleAcceptableCommandduringBusy

Read00h30h

 

 

查看6410芯片手册


 

 

1初始化nandflash控制器:时间参数/使能片选引角

Nandflash/s3c6410

nCEnCS2_NAND(Xm0CSn2/GPO0)

2命令/地址/读数据

发送命令:把命令写到NFCMMD寄存器

发送地址:把地址写到NFADDR寄存器

发送数据:把数据写到NFDATA寄存器

读数据:NFDATA寄存器

 

 

Openjtag操作nandflash

1id

(1)初始化:

查看芯片手册

MEM_SYS_CFG0x7E00_F120R/WConfigurememorysubsystem0x0000_0080

 

Xm0CSn[2]

----1-SROMCCS2

----0-OneNANDCCS0

----0-NFCONCS0

设置MEM_SYS_CFG=0,让Xm0CSn[2]用作nandflash的片选信号

Mdw0x7E00F120

//memmorywriteword

Mww0x7E00F1200

 

查看芯片手册

NFCONF0x70200000R/WNANDFlashConfigurationregister0xX000100X

设置时间参数

Mww0x702000000x8000777e

(2)发送使能信号

查看芯片手册

NFCONT0x70200004R/WNANDFlashcontrolregister0x000100C6

 

SoftLock[16]SoftLockconfiguration

0:Disablelock1:Enablelock

 

Reg_nCE0[1]NANDFlashMemoryXm0CSn2signalcontrol

0:ForceXm0CSn2tolow(Enablechipselect)

1:ForceXm0CSn2toHigh(Disablechipselect)

Note:ThisvalueisonlyvalidwhileMODEbitis1

 

MODE[0]NANDFlashcontrolleroperatingmode

0:NANDFlashControllerDisable(Dontwork)

1:NANDFlashControllerEnable

 

NFCONT(0x70200004)[0]=1/*使能nandflash控制器*/

NFCONT(0x70200004)[1]=0/*xm0csn[2]输出0*/

NFCONT(0x70200004)[16]=0/*softlock*/

 

mdw0x70200004/*0x100c6*/

mww0x702000040xc5
(3)发送读id命令

查看芯片手册:

NFCMMD0x70200008R/WNANDFlashcommandsetregister0x00

查看K9F2G08U0A数据手册:

ReadID90h-

//复位

Mwb0x702000080xff

//0x90写到NFCMMD(0x70200008)

Mwb0x702000080x90

(4)发出地址0

NFADDR0x7020000CR/WNANDFlashaddresssetregister0x0000XX00

//把把0写到NFADDR()

Mwb0x7020000C0

(5)读数据

NFDATA0x70200010R/WNANDFlashdataregister0xXXXX

Mdb0x70200010

 

2读数据

(1).初始化

mww0x7E00F1200/*xm0csn[2]配置为nandflash的片选信号*/

mww0x702000000x8000777e/*设置时间参数*/

(2)发出片选信号

mww0x702000040xc5

(3)发出复位信号

mwb0x702000080xff

(4)发出读命令

mwb0x702000080

(5)发出地址

mwb0x7020000C0

mwb0x7020000C0

mwb0x7020000C0

mwb0x7020000C0

mwb0x7020000C0

(6)发出0x30命令

mwb0x702000080x30

(7)读数据

mdb0x70200010

 



 

 

分享到:
评论

相关推荐

    nandflash学习笔记

    ### NAND Flash 学习笔记关键知识点解析 #### 一、NAND Flash 是否有统一接口标准? - **标准现状**:目前存在一个名为 ONFI (Open NAND Flash Interface) 的标准,旨在为 NAND Flash 设定统一的接口规范。然而,...

    nand_Flash读取ID

    为了更好地理解这一过程,你可以参考NAND Flash制造商提供的数据手册和应用笔记,它们通常包含了详细的协议和操作指南。同时,学习和分析开源的NAND Flash驱动程序源码也是提高理解和实践能力的有效途径。 最后,...

    STM32增强型微控制器访问NAND Flash学习笔记

    STM32增强型微控制器访问NAND Flash学习笔记 本篇学习笔记主要介绍了STM32增强型微控制器访问NAND Flash的相关知识,涉及到Flash存储器的分类、NAND Flash的工作原理、HY27UF081G2A芯片的引脚功能和NAND Flash接口...

    鱼树笔记之第19课NandFlash驱动1

    鱼树笔记之第19课NandFlash驱动1 本笔记是关于NAND Flash驱动的详细笔记,涵盖了NAND Flash的基本概念、硬件操作、驱动程序编写等方面的内容。本笔记将从NAND Flash的框架图开始,介绍NAND原理、硬件操作、写块设置...

    NAND和NOR flash的区别

    "NAND和NOR flash的区别" NAND 和 NOR flash 是当前市场上两种主要的非易失闪存技术。Intel 于 1988 年首先开发出 NOR flash 技术,彻底改变了原先由 EPROM 和 EEPROM 一统天下的局面。紧接着,1989年,东芝公司...

    stm32+nandflash实现U盘

    标题中的“stm32+nandflash实现U盘”是指使用STM32微控制器与NAND Flash存储器共同构建一个USB大容量存储设备(通常我们称之为U盘)。STM32是意法半导体公司推出的基于ARM Cortex-M系列内核的微控制器,具有高性能、...

    s3c2440a_裸奔4之NAND_FLASH控制器1

    虽然本文只涵盖NAND Flash的读写擦除操作,启动程序及搬运程序将在后续学习笔记中专门研究。 总结来说,S3C2440A的NAND Flash控制器为嵌入式系统提供了高效、经济的数据存储解决方案。通过内置的Steppingstone和...

    S5PV210(TQ210)学习笔记——Nand配置

    ### S5PV210(TQ210)学习笔记——Nand配置 #### 一、引言 本文档旨在详细介绍S5PV210(TQ210)平台中Nand Flash的配置方法与步骤。S5PV210是一款高性能的应用处理器,广泛应用于各种嵌入式系统中,包括条码采集设备...

    nandwrite.rar_Flash鐑у啓_NAND_davinci_davinci板烧写应用_nand 6446

    在嵌入式系统开发中,NAND Flash 是一种常见的非易失性存储器,用于存储固件、操作系统和用户...提供的"nand烧写"文件很可能是实现这一过程的具体程序或脚本,对于学习和实践Davinci平台的NAND烧写具有很大的参考价值。

    高密度多电平闪存信道参数估计算法_参数估计_nandflash_NAND_

    在现代存储技术中,NAND Flash作为一种非易失性存储器,因其高容量、低功耗和快速读取速度等特点,被广泛应用于各种设备中,包括智能手机、笔记本电脑、固态硬盘等。随着技术的发展,高密度多电平闪存(MLC, Multi-...

    TQ335x学习笔记——Nand&&网卡驱动移植

    ### TQ335x学习笔记——Nand&&网卡驱动移植 #### 一、Nand驱动移植 在本文档中,我们详细介绍了Nand驱动的移植过程。TQ335x是一款基于德州仪器(TI)技术的开发平台,其Nand Flash设备通过通用内存控制器(GPMC)...

    USB大容量存储器学习笔记-STM32 FLASH实现U盘

    ### USB大容量存储器学习笔记-STM32 FLASH实现U盘 #### STM32的USB控制器 在构建基于STM32的USB大容量存储设备时,STM32微控制器内部集成的USB控制器扮演着核心角色。STM32F103系列微控制器配备了一个符合USB 2.0 ...

    arm学习笔记(1)

    在ARM架构的学习过程中,了解和...以上就是ARM学习笔记中涉及的关键知识点,包括处理器的启动、调试工具的使用、程序下载策略以及编译器的特性等。理解这些概念对于深入理解和开发基于ARM架构的嵌入式系统至关重要。

    USB Mass Storage 学习笔记-STM32+FLASH实现U 盘

    本学习笔记主要探讨如何利用STM32微控制器结合大页NAND Flash存储器(K9F1G08U0A)来实现一个128MB的U盘。文章深入分析了STM32的USB控制器特性、大页NAND Flash的工作原理以及USB Mass Storage类的Bulk-Only传输协议...

    TQ2440学习笔记(全集)

    【TQ2440学习笔记(全集)】是一份综合性的学习资源,主要针对TQ2440开发板进行深入讲解。TQ2440是一款基于ARM920T内核的高性能微处理器,常用于嵌入式系统开发。这份笔记集合涵盖了从基础环境搭建到高级功能实现的...

    韦东山视频学习笔记

    韦东山视频学习笔记 - U-boot 学习笔记 韦东山老师的 Linux 视频学习笔记,涵盖了 U-boot 的学习笔记,本节笔记将详细介绍 U-boot 的生成、配置、编译和烧写过程。 U-boot 生成 U-boot 是一个开源的 Bootloader ...

    S5PV210学习笔记.pdf

    S5PV210学习笔记.pdf 本学习笔记主要介绍了S5PV210嵌入式系统的学习笔记,涵盖...本学习笔记涵盖了S5PV210嵌入式系统的基础知识、ARM架构、Linux系统、bootloader等方面的内容,为学习者提供了一个系统化的学习资源。

    s5pv210嵌入式linux学习笔记.pdf

    在深入了解s5pv210嵌入式Linux学习笔记之前,首先应掌握一系列的预备知识,这涉及到计算机系统结构的基础,包括IO与内存编址的区别、冯诺依曼结构和哈佛结构的特点、CPU与外部存储器接口的差异,以及ARM处理器的基本...

    驱动二期学习笔记

    "驱动二期学习笔记"显然聚焦于这一领域的深入探索,特别是针对JZ2440处理器的驱动程序开发和U-Boot引导加载器的理解。JZ2440是一款常见的嵌入式微处理器,常用于教学和开发用途,因其简洁的结构和丰富的资源而受到...

Global site tag (gtag.js) - Google Analytics