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

📄 sectorerase.asm

📁 ADI 公司的DSP ADSP21369 EZ-KIT LITE开发板的全部源代码
💻 ASM
字号:
/* This program erases the sector and updates the sector addresses until
all the sectors are erased
Input - None
Output - None */


#include <def21369.h>
#include "flashprogrammer.h"

.global SECTOR_ERASE;
.extern External_Sector_Address;
.extern FLASH_ERASED,my_file;

.section/dm seg_dmda;
//these are the SECTOR ERASE Command for the AMD 29LV081B
.var erase_command[] = {0xaa, 0x55, 0x80, 0xaa, 0x55, 0x30};

.section/pm seg_pmco;
SECTOR_ERASE:

    r1=SECTOR_SIZE-1;//Calculate second to last address of sector
    r2=FLASH_START_ADDRESS;
    r2=r2+r1;                         //create address within 1st sector
    dm(External_Sector_Address) = r2; //first sector address
    i3 = r2;                          //first sector address
    m3 = 0;  
    r0=NUMBER_SECTORS;

    lcntr=r0, do sectors until lce; //this loop erases and verifies one sector per iteration

        i2=erase_command;
        m2 = 1;

        lcntr = 6, do send_erase_command until lce;
            r0=dm(i2,m2);
        send_erase_command: dm(i3,m3)=r0;

        nop;nop;
        call FLASH_ERASED;  //check if sector is erased

        r1 = SECTOR_SIZE;
        r0 = dm(External_Sector_Address);
        r0=r0+r1;           //add for next sector
        dm(External_Sector_Address) = r0;
        i3 = r0;

    sectors:nop;

SECTOR_ERASE.END:
    rts;




⌨️ 快捷键说明

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