推荐阅读最新更新时间:2024-11-09 11:18
STM32学习笔记—片内FLASH读写失败问题分析
FLASH,指Flash Memory,是一种非易失性存储器(闪存),掉电能正常保存数据。 STM32的存储器通常包含内部SRAM、内部FLASH,部分系列还包含EEPROM。其中FLASH通常用于存储代码或数据,可被读写访问。 STM32 FLASH 基础内容 STM32的FLASH组织结构,可能因不同系列、型号略有不同。比如大家熟悉的STM32F1中小容量一页大小只有1K,而F1大容量一页有2K。 还比如有些系列以扇区为最小单元,有的扇区最小16K,有的128K不等。 本文主要结合F4系列来描述关于FLASH的相关内容。 1.Flash 结构 通常Flash包含几大块,这里以F40x为例: 主存储器:用来存放用户
[单片机]
NAND_FLASH(K9F1208U0C)驱动分析
一、编写目的 在移植Bootstrap V1.9至9260核心板时,出现NAND FLASH无法正确读取数据(可以读取ID)的情况。由于之前一直没有系统地学习NAND FLASH驱动,因此分析问题也比较慢,所以把Bootstrap V1.9移植工作暂时停止,先来学习NAND FLASH驱动部分再继续移植工作。 本文档用户记录NAND FLASH驱动分析的过程。本文档中使用的NAND为K9F1208U0C,为9260核心板上使用的64MB NAND。使用的源码为Bootstrap V1.9。 二、NAND FLASH(K9F1208U0C) 1. 引脚说明 2. memory组织方式 由上图
[单片机]
STM32的Flash读写保护,SWD引脚锁的各种解决办法汇总
问题现象: MDK,J-Flash,IAR等无法连接芯片,有时候链接上了,但是无法下载。 注意:如果下载器线的接触不良,也会有这个问题。 问题描述: 1、Flash读写保护 根本原因是工程设计有问题,特别是实际晶振大小与程序中HSE_VALUE大小不一致,很容易导致Flash读保护。 而读保护的本质是芯片的选项字节被设置了,因为读保护就在选项字节里面,详情看此贴:链接 2、SWD锁 SWD接口锁住就是SWD引脚被锁住了,根本原因是用户使用这个引脚做其它功能了。 解决办法: 1、SWD引脚锁解决办法: (1)、SWD引脚被锁住的解决办法比较简单,只要下载器带了复位引脚,并且板子的SWD接口也留出了RST复位引脚,就可以
[单片机]
u-boot移植(十)---代码修改---支持nor flash
一、问题定位 开发板重启后打印了2个提醒和一个错误,caches的提醒先不看,看看flash和nand下面的提醒,bad CRC,Using default enviroment,我们可以定位Using default enviroment定位到 代码位置,如下: Env_common.c (common) 传入的参数应该是 !badCRC,再次定位函数set_default_env 看是在哪里调用此函数: 基本上文件都在common文件夹下,有common中的调用和 dataflash,nand,sf,ubi。暂且不知道是哪个,要看看u-boot.di
[单片机]
实验四--nand flash的使用
一。环境和编译器 开发板:jz2440 系统:ubuntu12.04 编译器:gcc 二。验证代码 1.head.S 1 @****************************************************************************** 2 @ File:head.s 3 @ 功能:设置SDRAM,将程序复制到SDRAM,然后跳到SDRAM继续执行 4 @auther: 5 @******************************************************************************
[单片机]
mini2440的Nor Flash启动与Nand Flash启动
CPU 处理器 - Samsung S3C2440A,主频400MHz,最高533Mhz SDRAM 内存 - 在板64M SDRAM - 32bit 数据总线 - SDRAM 时钟频率高达100MHz FLASH 存储 - 在板 128M Nand Flash, 掉电非易失 - 在板 2M Nor Flash,掉电非易失,已经安装BIOS Mini2440的启动时读取的第一条指令是在0x00上,分为成nand flash和nor flash上启动。 Nor flash的有自己的地址线和数据线,可以采用类似于memory的随机访问方式,在nor flash上可以直接运行程序,所以nor flash可以直接用来做
[单片机]
LCD实验学习笔记(七):NAND FLASH
s3c2440 CPU内置NAND FLASH控制器。相关寄存大器起始地址为0x4e000000。 通过设置NFCONF寄存器,设置NAND FLASH 时序。 通过设置NFCONT寄存器,使能NAND FLASH、初始化ECC等。 代码: #define GSTATUS1 (*(volatile unsigned int *)0x560000B0) //读此寄存器可以知道CPU芯片型号 #define BUSY 1 #define NAND_SECTOR_SIZE_LP 2048 //大页每页2048字节 #define NAND_BLOCK_MASK_LP (NAND_SECTOR_SIZE_LP - 1) //大页掩码?
[单片机]