![从零开始学ARM](https://wfqqreader-1252317822.image.myqcloud.com/cover/19/53181019/b_53181019.jpg)
上QQ阅读APP看书,第一时间看更新
2.1.3 创建工程
创建工程,步骤如下。
(1)使用鼠标双击桌面图标 ,然后单击“Project”菜单栏中的“New µVision Project…”选项,如图2-8所示。
(2)选择工程存放的路径,单击“保存”如图2-9所示。
![](https://epubservercos.yuewen.com/D9C419/31664879103159206/epubprivate/OEBPS/Images/figure-0044-0046.jpg?sign=1739279080-7n7qkSRWYwbrM3prxS6vOYmvoltTxfMz-0-22f4ab7ef9ae527f19ee312966b870de)
图2-8 创建新工程
![](https://epubservercos.yuewen.com/D9C419/31664879103159206/epubprivate/OEBPS/Images/figure-0044-0047.jpg?sign=1739279080-scnLQmYdyS9Xmu0lXPqdGfkANqLtsArq-0-9a1ecfd54f028147e782fde91eaaea37)
图2-9 创建工程文件名
(3)在各CPU中,ARM指令集的常用指令并没有太多差别,本书通过SoC S3C2440A来介绍ARM指令,选择“CPU”选项菜单“Samsung”子菜单下的“S3C2440A”选项,如图2-10所示。单击“OK”选项,选择“是”,弹出“µVision”对话框,如图2-11所示。
![](https://epubservercos.yuewen.com/D9C419/31664879103159206/epubprivate/OEBPS/Images/figure-0044-0048.jpg?sign=1739279080-rDz2oplDVYCgeRSV6o6RGfSvk83AJTDS-0-61a59bee58feb6de96c2375583a1b0da)
图2-10 选择S3C2440A处理器
![](https://epubservercos.yuewen.com/D9C419/31664879103159206/epubprivate/OEBPS/Images/figure-0044-0049.jpg?sign=1739279080-qeBFr5JRnMAys1Y4HouKqNsVnMlwLKQV-0-2f93a2ce4f3afb057c9b7b3b83dea356)
图2-11 “µVision”对话框
(4)此时,主程序界面如图2-12所示。
![](https://epubservercos.yuewen.com/D9C419/31664879103159206/epubprivate/OEBPS/Images/figure-0044-0050.jpg?sign=1739279080-hGSopRyvECbLKJ9tgHc0W3sgNtkWRn2X-0-f0baafc7d1a262794ae7d3a927b9b6ea)
图2-12 主程序界面
(5)文件“S3C2440.s”中的程序是KEIL提供的基于处理器S3C2440A的初始化程序,我们暂时先不关心这些程序,直接删除该文件的所有程序,输入如下程序(注意缩进)。
area example,code,readonly ;声明程序段Example entry;程序入口 start ;程序中的标号,本质上是内存单元(地址)的别名 mov r0,#0 ;设置实参,将传递给子程序的实参存放在R0和R1内 mov r1,#10 bl add_sum ;调用子程序ADD_SUM b over ;跳转到OVER标号处,程序结束 add_sum add r0,r0,r1 ;实现两数相加 mov pc,lr ;返回子程序,R0内为返回的结果 over end