工具/软件:Code Composer Studio
大家好
我是M430G2553 MCU MSP430启动板的完全新手。 我想执行以下任务,
1.从C程序调用汇编器函数,但不传递参数和返回值。
2.从C程序调用汇编器函数并传递参数和返回值
3.汇编器函数/或从主循环调用标准C库函数rand(),并调用用户制作的C函数mult(a,b)
4.更多
我得到了一个教程pdf:slaa140.pdf,它包含了以上所有示例的完整图示,但不幸的是,它是IAR的,只是复制和粘贴代码在CCS中不起作用
所以我决定自己尝试: 我尝试了第一个:从C程序调用汇编器函数,而不传递参数和返回值。
我在CCS项目中制作了两个文件
1. blink.c
#include <MSP4S.h>
/*--------------------------- 外部函数原型----------------------- */
extern void set_port(void);/* ASM函数原型*/
int main(void){
WDTCTL = WDTPW | WDTHOLD; //停止看门狗计时器
P1DIR |=0x01; //将WFP 1.0 设置为输出方向
(;){
volatile unsigned int I;// volatile防止优化
set_port(); //
= 1万 1.0 I // SW delay
do I--;
while (I !=0);
}
返回0;
}
和2. asmFile.asm
******************* .cdecls C,list,"MSP430.h" ;=================================================================== ;set_port ;=========================================================================== 文本 ;代码可重定位 set_port: _main xoropr xor.b #01h,&P1OUT ; Toggle 0x01 bit Port 1 output ret .end
但是在建造这个项目时我遇到了错误
说明 资源 路径 位置 类型
#1.001万链接时出错;“callingASMinC.out”未构建 调用ASMinC C/C++问题
<ahref="processors.wiki.ti.com/.../1.0234万"> 未解析的符号仍 在调用ASMinC C/C++问题
gmake:***[All]错误2 调用ASMinC C/C++问题
gmake [1]:***[callingASMinC.out错误1 调用ASMinC C/C++问题
未解析的符号set_port,首先在./blink.obj 调用ASMinC中引用 C/C++问题
请帮助我,我非常需要帮助
提前感谢
无耐心等待您的回复,请尽快回复
谢谢