登录 免费注册 首页 | 行业黑名单 | 帮助
维库电子市场网
技术交流 | 电路欣赏 | 工控天地 | 数字广电 | 通信技术 | 电源技术 | 测控之家 | EMC技术 | ARM技术 | EDA技术 | PCB技术 | 嵌入式系统
驱动编程 | 集成电路 | 器件替换 | 模拟技术 | 新手园地 | 单 片 机 | DSP技术 | MCU技术 | IC 设计 | IC 产业 | CAN-bus/DeviceNe

大侠帮帮忙:在c中嵌入汇编语言报错(问题解决)

作者:geergeer 栏目:DSP技术
大侠帮帮忙:在c中嵌入汇编语言报错(问题解决)
首先对浏览帖子的大侠表示感谢!!小弟在ccs的C541 DEVICE simulator环境下编了一个串口输出的小程序,编译没报错,但是run起来功能没实现,单步调的时候发现:用*st1=0x0000;的语句赋值给st1时,该寄存器的INTM(全局中断使能)位没有变,依然为复位时的1,看了一下书,书上说该位不能用存储器写的方式设置,于是小弟程序改为嵌入汇编语句:
asm(“RSBX INTM”);让INTM清0以使能全局中断
结果系统编译报错:
-------------------------  dsptestprogram.pjt - Debug  -------------------------
[dsptestprogram.c] "C:\CCStudio_v3.1\C5400\cgtools\bin\cl500" -g -fr"C:/CCStudio_v3.1/MyProjects/dsptestprogram/Debug" -d"_DEBUG" -@"Debug.lkf" "dsptestprogram.c"
"C:\DOCUME~1\haoyun\LOCALS~1\TEMP\TI33610", ERROR!   at LINE 165: [E0002]
         Invalid mnemonic specification   <————错误提示
    RSBX INTM

1 Assembly Error, No Assembly Warnings

Errors in Source - Assembler Aborted

>> Compilation failure

[vectors.asm] "C:\CCStudio_v3.1\C5400\cgtools\bin\cl500" -g -fr"C:/CCStudio_v3.1/MyProjects/dsptestprogram/Debug" -d"_DEBUG" -@"Debug.lkf" "vectors.asm"

Build Complete,
  1 Errors, 0 Warnings, 0 Remarks.
有没有大侠知道是怎么回事吗??小弟实在菜得很~~
ps:小弟在定义芯片寄存器的头文件里只定义了几个程序要用到的寄存器,程序中也只是对要用到的寄存器进行了初始化

* - 本贴最后修改时间:2006-10-18 9:23:16 修改者:geergeer

2楼: >>参与讨论
56789
c54 的汇编指令好像分为两类,好像不能同时用的
0

3楼: >>参与讨论
geergeer
感谢
感谢 56789 的回复,小弟在c中嵌入仅有的一条汇编语句难道会冲突??这条语句没有语法错误吧??

4楼: >>参与讨论
geergeer
问题解决
在嵌入的汇编语句里的引号与汇编语句之间要存在空格!!!
例如 asm("RSBX INTM") 不行,而asm(" RSBX INTM ")是可以的,这个错误对于菜鸟级的小弟而言,查得好苦啊

参与讨论
昵称:
讨论内容:
 
 
相关帖子
DM642板子的FLASH烧写问题
请问能否把变量保存到片内flash的特定地址空间
好心人给俺些C54的子程序资料吧(有注释的),多谢
DSP开发项目外包!!人民币面值识别。
请教一个比较基础的TI F2812的问题
免费注册为维库电子开发网会员,参与电子工程师社区讨论,点此进入


Copyright © 1998-2006 www.dzsc.com 浙ICP证030469号