在单片机开发中,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位的,其它的可能不同,不要类比,需要重新计算相应数据类型的值。
上一篇:关于STC单片机IO口的状态
下一篇:如何为单片机的按键加一个锁防止多次触发
推荐阅读
史海拾趣
随着电子技术的快速发展,ELM意识到只有不断创新才能保持市场竞争力。因此,公司加大了研发投入,专注于新技术的研发和应用。经过数年的努力,ELM成功推出了一系列具有创新性和领先性的电子产品,如高性能的集成电路、先进的传感器等。这些产品的推出不仅丰富了ELM的产品线,也进一步提升了公司的市场地位。
Data Translation一直以客户为中心,致力于为客户提供优质的产品和服务。公司不断创新产品设计和制造技术,以满足客户对数据采集和处理性能、稳定性、易用性等方面的需求。同时,公司还建立了完善的客户服务体系,为客户提供从产品咨询、选型、安装、调试到售后维护等全方位的服务。这些举措赢得了客户的广泛赞誉和信任,为公司赢得了更多的市场份额和声誉。
经过多年的技术积累和市场拓展,西博臣成功研发出了一系列高性能、高可靠性的湿度传感器产品,广泛应用于家电、医疗、气象、仓储等多个领域。同时,公司积极拓展国内外市场,与众多知名企业建立了长期稳定的合作关系,产品销售网络遍布全球多个国家和地区。
宝乘公司自创立之初,便立志于在电子行业中开创新天地。面对国内外激烈的市场竞争,宝乘团队凭借对半导体功率器件领域的深入研究和不断创新,成功研发出一系列具有竞争力的产品。从芯片到整流桥,再到高压硅堆和电力电子模块,宝乘的产品线逐渐丰富,产品质量和技术水平也得到了业界的认可。
自1969年成立以来,Horn公司便致力于开发和生产切槽、侧铣和槽铣刀具。起初,公司聚焦于为小型机械加工企业提供高质量的工具解决方案。在创始人Paul Horn的领导下,公司迅速建立了技术团队,专注于刀具材料的研发与生产工艺的改进。这一时期,Horn公司凭借其出色的产品质量和定制化的服务,在行业内逐渐树立了良好的口碑。
力芯微公司在数字信号处理器领域拥有丰富的经验和深厚的技术积累,是行业内领先的企业之一。公司拥有一支高素质的研发团队,不断推进技术创新和产品升级。通过持续的研发投入和技术创新,力芯微在数字信号处理器领域保持了领先地位,并赢得了客户的广泛认可。
目前只有丝印图,先欣赏一下吧。 不知坛里有没有做,给大家分享下 [ 本帖最后由 gauson 于 2009-12-16 11:00 编辑 ]… 查看全部问答∨ |
|
往1394接口的SONY摄像机里发一个4字节的写请求没有响应,但是读请求确有响应,而且还能返回要读的数据,我仔细检查了一下发送的数据包,应该没有什么错误,都是按协议来的,以前用Basler的摄像机都是好的,不知道为什么换了Sony的就不行了,请高手 ...… 查看全部问答∨ |
我要在CE里面打开并浏览一个文件夹。。发现下面在PC机上的代码在CE下执行后缺总失败。。 各位有啥好的API提供下啊。。 SHELLEXECUTEINFO ShExecInfo = {0}; ShExecInfo.cbSize = sizeof(SHELLEXECUTEINFO); ShExecInfo.fMask = SEE_MASK_NOCLOS ...… 查看全部问答∨ |
这几天在移植UCOS3.02,遇到很奇怪的问题。我使用的CPU是TMS320F2812。表面的现象就是仿真时一运行程序就跑飞。单步运行跟踪代码后发现,程序总是在某些地方调用完子程序后RPC寄存器发生了突变,指向了非 ...… 查看全部问答∨ |
|
我现在想给DSP外扩一块AD芯片,采样率要求10M左右。看到网上好多人外扩AD的话一般都会用到FPGA或者CPLD。但是我想如果AD是并口的话,那数据口直接和DSP的数据口连接,然后其他的片选,时钟等连接到DSP的IO口不是直接就可以了吗?为什么看到网上好多 ...… 查看全部问答∨ |
|
本帖最后由 dontium 于 2015-1-23 12:41 编辑 楼主现在遇到了很棘手的一个问题。用AFE5801这个芯片调试的时候,读不出SPI的信号。。。可以读出通用寄存器设置的值,但是读不出TVG寄存器的值。有谁用过这个芯片啊,不吝赐教啊。。。。。谢谢各位啦 ...… 查看全部问答∨ |
读实例程序如下:interrupt void cpu_timer0_isr(void) { CpuTimer0.InterruptCount++;// Acknowledge this interrupt to receive more interrupts from group 1 PieCtrlRegs.PIEACK.all = PIEACK_GROUP1; }请问中断标志位TIF为什么没有清空呢 ...… 查看全部问答∨ |