欢迎来到天天文库
浏览记录
ID:56825622
大小:17.50 KB
页数:3页
时间:2020-07-15
《DSP C与汇编混合编程例子.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第一个:以下是用的MSP430型号单片机4.1 C语言函数和汇编语言函数相互调用 在这个示例中C语言函数main()调用汇编语言函数get_rand()以得到一个随机数;汇编语言函数get_rand()首先调用C语言的标准库函数rand()得到一个整型随机值,然后用调用C语言函数mult()的方法把这个随机值乘以main()函数传递给自己的实参,并把乘积值返回给main()函数。4.1.1 C语言源文件/**************************************************************//*文件名:c_source.c
2、 2003-01-05*//*C语言和汇编语言混合编程,C源程序 *//*这段源程序调用汇编语言函数get_rand() *//*注意工程必需包含汇编语言源文件"asm_source.s43" *//**************************************************************/#include /*头文件
3、*/externunsignedlongget_rand(unsignedcharseed); /*汇编语言函数原型声明*//****************************************************************//*主函数 *//****************************************************************/voidmain(void){ unsignedch
4、arseed; /*局部变量定义*/ unsignedlongvalue;//===系统初始化========================================== IFG1=0; /*清除中断标志1*/ WDTCTL=WDTPW+WDTHOLD; /*停止看门狗*/ P1DIR=0xff;//===系统初始化结束======================================== seed=0x55; value=get_rand(seed); /*调用汇编语言函数get_rand()得到一个随机
5、数*/ while(1); /*程序结束*/}//===主程序结束==================================================/******************************************************************//*乘法子程序,供汇编语言函数调用*//******************************************************************/unsignedlongmult(intx,inty){ return(x*y);
6、 /*x乘y*/}//===乘法子程序结束================================================4.1.2汇编语言源程序;******************************************************************;文件名:asm_source.s43;C语言和汇编语言混合编程,汇编语言源程序;这段源程序调用两个C语言函数,标准库函数rand()和用户自定义函数mult();*******************************************************
7、************ #include"msp430x14x.h" ;头文件 NAMEasmfile EXTERNrand ;C语言标准库函数rand() EXTERNmult ;c_source.c中用户自定义函数 ;====================================================================;get_rand;======================
8、=====
此文档下载收益归作者所有