请问一下keil version 5中怎么使用内联汇编语句

Oliver_chen4440 2019-03-30 01:37:18
最近在学习官方freertos中文实用教程中,在二值信号量单元,我跑文档给的实例时,发现__asm(0x82)这一段怎么也通不过编译,是不是keil version 5中插入这种汇编代码段需要什么设置?请各位大佬告知一下。

static void vPeriodicTask(void *pvParameters)
{
for(;;)
{
vTaskDelay(500/portTICK_RATE_MS);
SEGGER_RTT_printf(0,"periodic task - About to generate an interrupt.\r\n");
__asm{int 0x82};
SEGGER_RTT_printf(0,"periddic task - Interrupt generate.\r\n\r\n\r\n");
}
}

他给报的错误如下:
..\Main\main.c(20): error: #2901: Expected an inline assembly instruction
__asm{int 0x82};
..\Main\main.c(20): error: #3081: expected end of line or a ";"
__asm{int 0x82};

这种情况是不是我不能直接使用__asm{}这样的语句?或是我有其他什么错误,望各位大佬告知一下。谢谢各位了
...全文
480 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
weixin_43773869 2020-09-13
  • 打赏
  • 举报
回复
KEIL5不支持内联汇编
bug退散 2019-06-14
  • 打赏
  • 举报
回复
楼主你好,我也遇到了同样的问题,一个延时的内嵌汇编函数,报错,你解决了吗

1,068

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧