历史上的今天
返回首页

历史上的今天

今天是:2025年05月07日(星期三)

正在发生

2020年05月07日 | MSP430F149内部Flash操作

2020-05-07 来源:eefocus

一般,在单片机中的Flash存储器用于存放程序代码,属于只读型存储器。而在MSP430些列的单片机中,都可以通过内置的Flash控制器擦除或改写任何一段的内容。另外,msp430的单片机内部还专门留有一段Flash区域(information memory),用于存放掉电后需要永久保存的数据。利用430内部的Flash控制器,可以完成较大容量的数据记录、用户设置参数在掉电后的保存等功能。

  1. 硬件介绍:

    要对Flash读写,首先要了解MSP430的存储器组织。430单片机的存储器组织结构采用冯诺依曼结构,RAM和ROM统一编址在同一寻址空间中,没有代码空间和数据空间之分。


  2. 一般430的单片机都统一编址在0-64k地址范围中,只有少数高端的型号才能突破64k(如:FG461x系列)。绝大多数的msp430单片机都编址在64kB范围内。地址的大概编码方式如下:

    可以通过MERAS、ERASE 位来设置擦除的模式:段擦除,主Flash擦除,全部擦除。


  3. 对要擦除段内的一个地址空写入启动擦出周期:空写入可以启动时序发生器和擦除操作。空写入后BUSY位立即变高直到擦除周期结束,这一位变为低(0)。BUSY, MERAS和 ERASE位在擦除周期结束后会自动复位。擦除周期的时间和要擦出的Flash大小无关,每次擦除的时间对于MSP430F1xx系系列单片机来说,所需时间是一样的。擦除的时序如下:

    从RAM中启动擦除操作:任意擦除周期都可以从RAM启动,这时CPU不再暂停而是继续从RAM中运行接下来的程序。CPU可以访问任何Flash地址之前,必须检查BUSY位以确定擦除周期结束。如果BUSY = 1访问Flash,这是一个访问冲突,这时ACCVIFG将被设置,而擦除的结果将是不可预测的的。

    从RAM中启动擦除操作时,过程如下:

    写Flash操作:写入的模式由WRT和BLKWRT位来确定:

    BLKWRT      WRT         Write Mode
    0           1           Byte/word write
    1           1           Block write

    这两种模式中块写入大约是字或字节写操作时的两倍快,因为在块写入完成之前,变成电压一直维持直到块写入完成。同一个位置不能在擦除周期之前写入两次或以上,否则将发生数据损坏。写操作时,BUSY位被置1,写入完成后,BUSY被自动清零。如果写操作是从RAM发起的,在BUSY=1时,程序不能访问Flash,否则会发生访问冲突,置位ACCVIFG,Flash写入操作不可以预料。

    字或字节写入:字或字节写入可以从Flash内部发起,也可以从RAM中发起。如果是从Flash中启动的写操作,时序将由Flash控制,在写入完成之前CPU运行将被暂停。写入完成后CPU将继续运行。

    操作时序如下:

    image_thumb7

    若是从RAM中启动写Flash,程序将继续从RAM中运行。CPU再次访问Flash之前必须确认BUSY位已经清零,否则会发生访问冲突,置位ACCVIFG,写入的结果将不可预料。

    字或字节写入模式下,内部产生的编程电压时适用于完整的64个字节块的写入
    In byte/word mode, the internally-generated programming voltage is applied
    to the complete 64-byte block, each time a byte or word is written, for 32 of the
    35 fFTG cycles. With each byte or word write, the amount of time the block is
    subjected to the programming voltage accumulates. The cumulative
    programming time, tCPT, must not be exceeded for any block. If the cumulative
    programming time is met, the block must be erased before performing any
    further writes to any address within the block.

    从Flash发起写字节或字时:

    image_thumb10

    ; Byte/word write from flash. 514 kHz < SMCLK < 952 kHz
    ; Assumes 0FF1Eh is already erased
    ; Assumes ACCVIE = NMIIE = OFIE = 0.MOV #WDTPW+WDTHOLD,&WDTCTL      ; Disable WDTDINT ; Disable interrupts
    MOV #FWKEY+FSSEL1+FN0,&FCTL2    ; SMCLK/2MOV #FWKEY,&FCTL3               ; Clear LOCKMOV #FWKEY+WRT,&FCTL1           ; Enable writeMOV #0123h,&0FF1Eh              ; 0123h −> 0FF1EhMOV #FWKEY,&FCTL1               ; Done. Clear WRTMOV #FWKEY+LOCK,&FCTL3          ; Set LOCK...                             ; Re-enable WDT?EINT                            ; Enable interrupts

    从RAM中启动写入操作时:

    image_thumb12

    ; Byte/word write from RAM. 514 kHz < SMCLK < 952 kHz
    ; Assumes 0FF1Eh is already erased
    ; Assumes ACCVIE = NMIIE = OFIE = 0.MOV #WDTPW+WDTHOLD,&WDTCTL      ; Disable WDTDINT                            ; Disable interruptsL1 BIT #BUSY,&FCTL3             ; Test BUSYJNZ L1                          ; Loop while busyMOV #FWKEY+FSSEL1+FN0,&FCTL2    ; SMCLK/2MOV #FWKEY,&FCTL3               ; Clear LOCKMOV #FWKEY+WRT,&FCTL1           ; Enable writeMOV #0123h,&0FF1Eh              ; 0123h −> 0FF1EhL2 BIT #BUSY,&FCTL3             ; Test BUSYJNZ L2                          ; Loop while busyMOV #FWKEY,&FCTL1               ; Clear WRTMOV #FWKEY+LOCK,&FCTL3          ; Set LOCK...                             ; Re-enable WDT?EINT                            ; Enable interrupts

推荐阅读

史海拾趣

CIF公司的发展小趣事

D公司始终坚持品质至上的经营理念,以提供高品质的电子产品为己任。在CIF交易模式下,D公司严格控制产品质量,从原材料采购到生产流程中的每一个环节都进行严格把关。凭借出色的产品质量和良好的售后服务,D公司赢得了客户的信任和好评。

中电熊猫(CEC)公司的发展小趣事

技术创新是中电熊猫持续发展的关键。公司不断深化技术改革,加大研发投入,推动产业升级。例如,在液晶面板生产线上,中电熊猫采用了世界一流的技术和设备,不仅提高了屏幕分辨率和良品率,还降低了生产成本。此外,中电熊猫还积极参与国家重大科研项目和行业标准制定工作,为行业发展做出了积极贡献。

绿索超容(GreenSource)公司的发展小趣事

技术创新是中电熊猫持续发展的关键。公司不断深化技术改革,加大研发投入,推动产业升级。例如,在液晶面板生产线上,中电熊猫采用了世界一流的技术和设备,不仅提高了屏幕分辨率和良品率,还降低了生产成本。此外,中电熊猫还积极参与国家重大科研项目和行业标准制定工作,为行业发展做出了积极贡献。

Exel Microelectronics Inc公司的发展小趣事

随着全球对环保问题的日益关注,Exel Microsystems Inc公司也积极响应,履行环保责任。公司在XXXX年开始实施绿色生产战略,通过采用环保材料、优化生产流程等措施,降低了生产过程中的能耗和废弃物排放。此外,Exel还积极参与环保公益活动,推动行业和社会的可持续发展。这些举措不仅彰显了公司的社会责任感,也为公司赢得了良好的社会声誉。

BERGQUIST公司的发展小趣事

为了进一步提升竞争力,BERGQUIST公司开始寻求产业链整合和战略合作。公司与上游原材料供应商建立了长期稳定的合作关系,确保原材料的质量和供应稳定性。同时,公司还与下游电子设备制造商开展深度合作,共同研发定制化的热管理解决方案。这些举措不仅降低了公司的运营成本,还提高了产品的市场竞争力。

Dongguan Jingyue Electronics Co Ltd公司的发展小趣事

在电子行业的激烈竞争中,Dongguan Jingyue Electronics Co Ltd始终将技术创新作为公司发展的核心驱动力。公司自成立之初就投入大量资源用于研发新技术和新产品。通过不断的努力,公司成功推出了一系列具有市场竞争力的电子产品,赢得了消费者的广泛认可。这些技术创新不仅提升了公司的品牌形象,也为公司带来了丰厚的利润。

问答坊 | AI 解惑

200W  ATX电源

是电脑电源,来跟大家分享一下…

查看全部问答>

基于FPGA的通信系统基带验证平台的设计

基于FPGA的通信系统基带验证平台的设计pdf 论文。…

查看全部问答>

mini2440手册最新版

这是2010年2月的最新手册…

查看全部问答>

低价转让TRACE32 型号LA-7708

低价转让TRACE32   型号LA-7708 价格2万, 接受小刀, 需要的联系:13713676870…

查看全部问答>

EBOOT中SDRAM读写测试

各位英雄: 我的系统基于pxa255+wce4.2,外挂2个bank的sdram,每个bank接64M,由两片32M组成。我在eboot中为测试sdram,就分别对两个bank的地址进行读写(每个bank的低400字节),发现bank0可以正常读写,也即读写数据一致;bank1读写数据不一致, ...…

查看全部问答>

【低价转让】UT6410CV01核心板

核心板是在gooolgman处购得,仅上过一次点,读ID,由于导师项目临时有变,所以出掉,回收资金,继续开发!光盘资料齐全,将刻录成DVD随核心板发送。也可以提供其他6410开发板的光盘资料,详请联系。 本人平时较忙,所以若不在线请手机短信联系:13 ...…

查看全部问答>

wince下串口2出错(Data Abort)

请教:板子为ARM2410,在wince下,我的应用程序一打开串口2,串口1上就会有打印信息 Data Abort: Thread=8fadf914 Proc=8e028d08 \'device.exe\' AKY=00001009 PC=024d2a30 RA=03f87e64 BVA=08000000 FSR=00000007 而且串口2不能收发数据,请问 ...…

查看全部问答>

Windows硬件工程大会七折票价倒计时!通过eeworld购票可获赠全年12期程序员杂志,如此优惠,不要错过!

“Windows 硬件工程大会”是微软公司面向个人电脑终端、服务器、硬件设备以及驱动程序的最具前瞻性的全球硬件技术信息盛会,在北美地区已成功举办16届,今年是首次在中国独立举办。因此,此次大会将是一场极具营养的大会。 WinHEC 会上将前瞻性全 ...…

查看全部问答>

msp430f147.148.149中有没有上电自动复位功能,需要外接上电复位电路吗?

在仿真过程中,通过仿真器将程序写入片子里,拔掉仿真器有时候会遇上程序不运行情况,请问:msp430f147.148.149中有没有上电自动复位功能,需要外接上电复位电路吗?…

查看全部问答>

51单片机经典程序合集

51单片机经典程序合集:各种例子,从入门到实战,所有程序以及电路仿真,快来学习啦!…

查看全部问答>