历史上的今天

今天是:2024年11月19日(星期二)

2018年11月19日 | 在单片机开发中NOR_FLASH的应用

发布者:ShimmeringMoon 来源: eefocus关键字:单片机开发  NOR_FLASH 手机看文章 扫描二维码
随时随地手机看文章

 在单片机开发中,NOR_FLASH常用的有4M和8M的大小:


4M的FLASH在程序中可以这样表示:Ptr < 0x220000


8M的FLASH在程序中可以这样表示:Ptr < 0x400000(最大只能读到0x3fffff)


有了这个关系,在判断NOR_FLASH好坏的方法上我们可以采用计算checksum的方式来校验。


在程序中,我们一般把地址的指针定义为unsigned short *ptr 类型。然后通过指针不断的往后移动可以简引用获取到FLASH中的每一个byte,如果此时定义成unsigned short类型,那么用一个temp变量来接收的话,一次是可以接收到2个byte的数据,如果此时定义成unsigned long类型,同样用temp变量来接收这时一次性可以读到4个byte的数据,所以在处理数据方面可以采用位运算来进行处理。


以下这段程序是每1024byte获取前16个byte的数据依次累加返回,注意,这里累加是以word的形式累加,1 word = 2byte,所以读512相当于读了1024byte


注意,这里的单片机是16位的,其它的可能不同,不要类比,需要重新计算相应数据类型的值。


1.png


关键字:单片机开发  NOR_FLASH 引用地址:在单片机开发中NOR_FLASH的应用

上一篇:关于STC单片机IO口的状态
下一篇:如何为单片机的按键加一个锁防止多次触发

推荐阅读

1、业界|特种机器人: 荷兰IDS为ExRobotics提供“机器人眼睛”ExRobotics是一家荷兰石油和天然气行业远程控制系统制造商,因其成本,硬件和软件功能而使用IDS产品。在某些工业领域,在极端条件下工作至关重要。机器人越来越多地被用来最小化员工的风险。根据与多国石油和天然气集团多年合作的经验,ExRobotics开发了一系列机器人,专门用于危险区域的检查...
从智能驾驶发展主线中,目前辅助驾驶系统围绕着不同的驾驶场景和对车主的影响进行分类。由于要满足消费者的期望,部分自动驾驶的功能存在很大的分类问题。我们能看到的由于市场竞争,由于车辆溢价的问题,目前基于辅助这条线,不过多介入控制的 ADAS 配置的功能,开始逐步成为标配。一方面这有助于消费者的喜欢,从功能的角度,目前车辆把感知的环境和相...
专注于引入新品并提供海量库存的电子元器件分销商贸泽电子 (Mouser Electronics) 即日起备货Analog Devices LTC6228和LTC6229低失真730MHz运算放大器。LTC6228单通道运算放大器和LTC6229双信道运算放大器可提供高速、低噪声的轨到轨输出,支持高精度模数转换,可满足测试和测量、光学电子元件、医疗影像和数据采集等应用的需求。 贸泽电子分销的Analog ...
11月19日早上6点,联发科面向全球媒体召开2021年度高管媒体会,正式发布了2022年度旗舰5G SoC——天玑9000,并且带来了10项全球第一,直接对标苹果A15以及高通即将发布的骁龙989,全力冲击高端旗舰智能手机市场。早在2019年11月,联发科发布旗下首款高端旗舰5G SoC芯片——天玑1000之时,在联发科的倾力打造之下,天玑1000就曾一口气拿下了十多个全球第...

史海拾趣

问答坊 | AI 解惑

摩托车双向报警系统

摩托车液晶双向报警系统,它是 --最新防盗技术的尖端产品,采用无绳智能循环跳码 --进行遥控控制,编码绝对保密,防截码,防拷贝。 --在功能等各方面匠心独具,锐意创新。遥控器和主 --机均采用微电脑控制、液晶显示、遥控智能防盗、 --双向报警防 ...…

查看全部问答∨

用Spartan-6片了做的板子,请大家先过过目吧(转)

目前只有丝印图,先欣赏一下吧。 不知坛里有没有做,给大家分享下 [ 本帖最后由 gauson 于 2009-12-16 11:00 编辑 ]…

查看全部问答∨

【请问】1394异步写请求为何无响应?

往1394接口的SONY摄像机里发一个4字节的写请求没有响应,但是读请求确有响应,而且还能返回要读的数据,我仔细检查了一下发送的数据包,应该没有什么错误,都是按协议来的,以前用Basler的摄像机都是好的,不知道为什么换了Sony的就不行了,请高手 ...…

查看全部问答∨

CE下怎么去浏览一个文件夹啊???

我要在CE里面打开并浏览一个文件夹。。发现下面在PC机上的代码在CE下执行后缺总失败。。 各位有啥好的API提供下啊。。 SHELLEXECUTEINFO ShExecInfo = {0}; ShExecInfo.cbSize = sizeof(SHELLEXECUTEINFO); ShExecInfo.fMask = SEE_MASK_NOCLOS ...…

查看全部问答∨

求助pic16f877a单片机ht-picc编程中一条语句的示意

ADValue=GetADValue(0);哪位大侠可以帮小弟解释一下其具体含义,感激不尽啊…

查看全部问答∨

UC0S3.02移植到F2812的奇怪问题

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 这几天在移植UCOS3.02,遇到很奇怪的问题。我使用的CPU是TMS320F2812。表面的现象就是仿真时一运行程序就跑飞。单步运行跟踪代码后发现,程序总是在某些地方调用完子程序后RPC寄存器发生了突变,指向了非 ...…

查看全部问答∨

图像数据缓存

关于图像的缓存问题,在做用FPGA做图像处理的过程中,都要用到图像数据的缓存,一般都是用到FIFO或是双端口的RAM来进行缓存,我现在想做直接从存储器中读取图像数据,构成3*3或是5*5的数据缓存窗口,然后在进行下一步的运算,想请教个位,用RAM和FI ...…

查看全部问答∨

为什么要用CPLD或FPGA?

我现在想给DSP外扩一块AD芯片,采样率要求10M左右。看到网上好多人外扩AD的话一般都会用到FPGA或者CPLD。但是我想如果AD是并口的话,那数据口直接和DSP的数据口连接,然后其他的片选,时钟等连接到DSP的IO口不是直接就可以了吗?为什么看到网上好多 ...…

查看全部问答∨

有谁用过AFE5801这个芯片啊。。。

本帖最后由 dontium 于 2015-1-23 12:41 编辑 楼主现在遇到了很棘手的一个问题。用AFE5801这个芯片调试的时候,读不出SPI的信号。。。可以读出通用寄存器设置的值,但是读不出TVG寄存器的值。有谁用过这个芯片啊,不吝赐教啊。。。。。谢谢各位啦 ...…

查看全部问答∨

F28027 中timer中断为什么没有将中断标志为清0?

读实例程序如下:interrupt void cpu_timer0_isr(void) { CpuTimer0.InterruptCount++;// Acknowledge this interrupt to receive more interrupts from group 1 PieCtrlRegs.PIEACK.all = PIEACK_GROUP1; }请问中断标志位TIF为什么没有清空呢 ...…

查看全部问答∨
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved