main.c
来自「基于dragon_MX1_ads的装载启动代码armboot」· C语言 代码 · 共 57 行
C
57 行
#include "../../Include/type.h"
#include "AM29PDL127H_x16x2.c"
#define UART1_BASE 0x00206000
#define UART2_BASE 0x00207000
#define _reg_URXD (*((volatile U32 *)(gUartBase+0x00)))
#define _reg_UTXD (*((volatile U32 *)(gUartBase+0x40)))
#define _reg_USR2 (*((volatile U32 *)(gUartBase+0x98)))
#define ADET_MASK 0x8000 // auto-baud detection
#define TXFE_MASK 0x4000 // Tx buffer empty
#define RDR_MASK 0x0001 // receive data ready
int main(void)
{
S32 fd;
U32 SourceAddress = 0x0A000000;
U32 TargetAddress = 0x10000000;
U32 ByteSize = 0x00010000;
U32 FlashBaseAddress = 0x10000000;
U32 Offset = TargetAddress - FlashBaseAddress;
EUARTputString((U8 *)"Press any key to start programming ...");
fd=FlashOpen(&AM29PDL127H_x16x2, FlashBaseAddress);
EUARTputString((U8 *)"\nProgramming ...");
if(FlashProgram(fd, SourceAddress, Offset, ByteSize))
{
EUARTputString((U8 *)"\nProgram Error\n");
}
else
{
EUARTputString((U8 *)"\nProgram Completed\n");
}
EUARTputString((U8 *)"\nVerifying ...");
if(FlashVerify(fd, SourceAddress, Offset, ByteSize))
{
EUARTputString((U8 *)"\n*** Verify FAIL ***\n");
}
else
{
EUARTputString((U8 *)"\n*** Verify OK ***\n");
}
FlashClose(fd);
EUARTputString((U8 *)"\n\rProgramming finished.\n\rPress 'a' to continue ....");
JumpToAddr(0); // go back to boot-strap
return 0;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?