请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:MSP430FR4133 工具/软件:Code Composer Studio
HII
如何使用 MSP430FR4133在 FRAM 中进行写入和读取
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
工具/软件:Code Composer Studio
HII
如何使用 MSP430FR4133在 FRAM 中进行写入和读取
您好 、博萨尔、
请参阅以下代码示例:
/*-版权所有-、BSD_EX
*版权所有(c) 2014、德州仪器(TI)公司
*保留所有权利。
*
*
只要
符合以下条件*、允许以源代码和二进制形式重新分发和使用:
*
*源代码的重新分发必须保留上述版权
声明*、此条件列表和以下免责声明。
*
***二进制形式的再发行必须在
*随发行提供的文档和/或其他材料中复制上述版权声明、本条件列表和以下免责声明。
*
***未经
事先书面许可、不得使用德州仪器公司的名称或*其贡献者的名称认可或推广从本软件衍生的产品*。
*
*本软件由版权所有者和贡献者"按原样"提供
*、
不承担任何明示或暗示的保证、包括但不限于*适销性和特定用途适用性的暗示保证*。 在任何情况下、版权所有者或
*贡献者都不对任何直接、间接、偶然、特殊、
*模范、 或相应的损害(包括但不限于
*采购替代产品或服务;丧失使用、数据或利润;
*或业务中断)、但出于任何责任理论
、*无论是在合同中、严格责任还是由于
使用本软件而以任何方式产生的侵权行为(包括疏忽或*其他)
、*即使已获悉可能会发生此类损坏。
*
***
*
* MSP430代码示例免责声明
*
* MSP430代码示例是自包含的低级程序
,通常*以
高度*简明的方式演示单个外设功能或器件功能。 为此、代码可能依赖于器件的加电默认
值*寄存器值和时钟配置等设置、
并且在组合多个示例中的代码时必须*小心以避免潜在的副作用
*。 另请参阅 www.ti.com/grace 了解 GUI、并参阅 www.ti.com/msp430ware
*了解外设配置的 API 函数库方法。
*
*--/版权--*
//*********
// MSP430FR413x 演示- FRAM 的长字写入
//
说明:使用长字写入来写入 FRAM 的512字节块。
//每100次写入后切换 LED。
//注意:长时间运行此示例将影响 FRAM
//耐久性。
// ACLK = REFO、MCLK = SMCLK =默认 DCODIV =~1MHz
//
MSP430FR4133
// --------
// /|\| |
// || |
// -|RST |
// | |
// | P1.0 |-->LED
//
Cen Fang
// Texas Instruments Inc.
// 2013年8月
//使用 IAR 嵌入式工作平台 v5.60和 Code Composer Studio v5.5构建
//*********
#include
void FRAMWrite (void);
unsigned char count = 0;
unsigned long * FRAM_WRITE_ptr;
unsigned long data;
#define FRAM_TEST_START 0x1800
int main (void)
{
WDTCTL = WDTPW | WDTHOLD; //停止看门狗计时器
P1OUT &=~BIT0; //清除已定义加电状态的 P1.0输出锁存器
P1DIR |= BIT0; //将 P1.0设置为输出 directionOUT
PM5CTL0 &=~LOCKLPM5; //禁用 GPIO 上电默认高阻抗模式
//激活先前配置的端口设置
数据= 0x11111111; //初始化虚拟数据
while (1)
{
数据+= 0x00010001;
FRAM_WRITE_PTR =(unsigned long *) FRAM_TEST_START;
FRAMWrite();
count++;
如果(计数> 100)
{
P1OUT ^= 0x01; //切换 LED 以显示512K 字节
计数= 0; //..have been written (已写入)
数据= 0x111111;
}
}
void FRAMWrite (void)
{
unsigned int i=0;
SYSCFG0 &=~DFWP;
对于(I = 0;I < 128;I++)
{
*FRAM_WRITE_PTR++=数据;
}
SYSCFG0 |= DFWP;
}
此致、
灵