2.启动ads,创建项目文件led.mcp ,汇编文件 S.s 以及c文件 main.c ~
3.编写代码,如下:
S.s
area init,code,readonly
start
ldr sp,=4096
import main
bl main
end
main.c
#define rGPBCON (*((volatile unsigned*)0x56000010))
#define rGPBDAT (*((volatile unsigned*)0x56000014))
#define LED1_ON rGPBDAT&=(~(1<<5))
#define LED2_ON rGPBDAT&=(~(1<<6))
#define LED3_ON rGPBDAT&=(~(1<<7))
#define LED4_ON rGPBDAT&=(~(1<<8))
#define LED1_OFF rGPBDAT|=(1<<5)
#define LED2_OFF rGPBDAT|=(1<<6)
#define LED3_OFF rGPBDAT|=(1<<7)
#define LED4_OFF rGPBDAT|=(1<<8)
void delay(unsigned int a)
{
while(a--);
}
int main()
{
rGPBCON = 0x15400;
rGPBDAT=0xffffffff;
while(1)
{
LED1_ON;
LED2_ON;
LED3_ON;
LED4_ON;
delay(100000);
LED1_OFF;
LED2_OFF;
LED3_OFF;
LED4_OFF;
delay(100000);
}
return 0;
}
4.ADS对应项的设置,有以下项~
Target
-------Target Settings
Language Setting
-------ARM Assembler
-------ARM C Compiler
ARM Linker
-------ARM Linker Output
-------ARM Linker Options
-------ARM Linker Layout
5.H-JTAG调试器设置,有以下项~
Setting
----USB/LPT Selection
----LPT Port Setting
Detect Target
6.在AXD下调试与运行~
实验中遇到的问题有:
(1)没有电路基础,看mini2440原理图很是吃力
(2)汇编一窍不通,需要补补
(3)操作不够熟练,理解不到位,实践少了
(4)英语水平有待提高