JZ2440学习笔记之第一个裸机程序(Keil-MDK),s3c2440裸机开发环境的搭建,基于KEIL4开发ARM9(S3C2440)的裸机程序
CPU:S3C2440, ARM920T, 4KB RAM, Support boot from NAND flash, 128MB for each bank。
JZ2440:Memory接到Bank6,所以内存地址从0x3000,0000(128MBx6)开始。
SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。Keil-MDK5已经不支持ARM9,需要安装额外的pack支持:http://www2.keil.com/mdk5/legacy/
参考::s3c2440裸机开发环境的搭建
通过图形界面设置,配置完之后.s文件会变化,GPIO的设置放在C code里面。
地址需要设置成如下:
设置不同的地址,bin文件不一样(地址的设定待研究):
/* * Leds.c * Light leds in turn. */ // S3C2440 registers define #define GPFCON (*(volatile unsigned long *)0x56000050) #define GPFDAT (*(volatile unsigned long *)0x56000054) // Set GPF4/5/6 as output. #define GPF4_out (1<<(4*2)) #define GPF5_out (1<<(5*2)) #define GPF6_out (1<<(6*2)) // Delay void Delay(volatile unsigned long delay) { for(; delay>0; delay--); } int main(void) { // Set GPF4/5/6 as output. GPFCON = GPF4_out|GPF5_out|GPF6_out; // Pull down will light led, so pull up here. GPFDAT = 0xFF; while(1){ Delay(300000); GPFDAT = 0xEF; // 1110,1111 Delay(300000); GPFDAT = 0xDF; // 1101,1111 Delay(300000); GPFDAT = 0xBF; // 1011,1111 } return 0; }
通过oflash.exe烧写bin文件到nand flash的地址0位置:https://blog.csdn.net/thisway_diy/article/details/52808038

更多精彩