(二) 将周工的工程模板下的.c .s .h文件都考到Keil工程文件夹下,在工程下添加所有的.c .s文件。
(三) 打开startup.s,在以下语句:AREA vectors,CODE,READONLY的上一行添加一行代码:PRESERVE8,否则编译会报error。网上解释如下:
ADS1.2代码直接考到Keil中编译,产生错误:
2400.axf: Error: L6238E: startup.o(vectors) contains invalid call from '~PRES8 (The user did not require code to preserve 8-byte aligment of 8-byte data objects)' function to 'REQ8 (Code was permitted to depend on the 8-byte aligment of 8-byte data items)' function FIQ_Exception.
解释:~PRES8 == 非(~)按8字节对齐代码段; REQ8 == 要求代码段按8字节对齐
解决:在汇编代码前加入伪指令PRESERVE8。
例: AREA vectors,CODE,READONLY
改为:PRESERVE8
AREA vectors,CODE,READONLY