⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.c

📁 LM3S系列Flash例程:简单擦写,周立功
💻 C
字号:
#include  "systemInit.h"
#include  "uartGetPut.h"
#include  <hw_flash.h>
#include  <flash.h>
#include  <stdio.h>


//  定义Flash扇区号(每个扇区1024字节)
#define  SECTION    62


//  Flash读取操作
char flashRead(unsigned long ulAddress)
{
    char *pcData;

    pcData = (char *)(ulAddress);

    return(*pcData);
}


//  主函数(程序入口)
int main(void)
{
    char cString[] = "Hello, world\r\n";
    unsigned long *pulData;
    int i;
    char c;
    long size;

    jtagWait();                                             //  防止JTAG失效,重要!
    clockInit();                                            //  时钟初始化:晶振,6MHz
    uartInit();                                             //  UART初始化
    FlashUsecSet(TheSysClock / 1000000);                    //  设置每微秒的CPU时钟数

    pulData = (unsigned long *)cString;

    if (FlashErase(SECTION * 1024))
    {
        uartPuts("<Erase error>\r\n");
        for (;;);
    }

    uartPuts("<Erase ok>\r\n");
    size = 4 * (1 + sizeof(cString) / 4);

    if (FlashProgram(pulData, SECTION * 1024, size))
    {
        uartPuts("<Program error>\r\n");
        for (;;);
    }

    uartPuts("<Program ok>\r\n");

    for (i = 0; i < sizeof(cString); i++)
    {
        c = flashRead(SECTION * 1024 + i);
        uartPutc(c);
    }

    uartPuts("<Read ok>\r\n");

    for (;;)
    {
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -