编译原子哥的SYSTEM出现错误 Inline assembler not permitted when generating Thumb code

转载 2015年11月20日 21:23:22

原文地址::http://www.openedv.com/posts/list/0/55803.htm;jsessionid=BF32A849CB8EF733FEEC85010EBCE48C


void WFI_SET(void)
{
__ASM volatile("wfi");  
}
//关闭所有中断
void INTX_DISABLE(void)
{  
__ASM volatile("cpsid i");
}
//开启所有中断
void INTX_ENABLE(void)
{
__ASM volatile("cpsie i");  
}
//设置栈顶地址
//addr:栈顶地址
__asm void MSR_MSP(u32 addr) 
{
    MSR MSP, r0 //set Main Stack value
    BX r14
}

//=========================================修改如下就可以了==============================================


01 //THUMB指令不支持汇编内联
02 //采用如下方法实现执行汇编指令WFI 
03 __asm void WFI_SET(void)
04 {
05     WFI;         
06 }
07 //关闭所有中断
08 __asm void INTX_DISABLE(void)
09 {
10     CPSID I;         
11 }
12 //开启所有中断
13 __asm void INTX_ENABLE(void)
14 {
15     CPSIE I;         
16 }
17 //设置栈顶地址
18 //addr:栈顶地址
19 __asm void MSR_MSP(u32 addr)
20 {
21     MSR MSP, r0             //set Main Stack value
22     BX r14
23 }



KEIL Real view MDK中插入空操作NOP

折腾了大半天,才搞明白一个空操作的指令 先在网上查有的说是__asm{NOP;},从intrins.h里调用,可犄角旮旯全找了,也没看到什么intrint.h的文件。如果直接用,就出现error: #...
  • gasbi
  • gasbi
  • 2010年05月02日 00:48
  • 15126

STM32系统文件(SYSTEM)

这篇文章主要是针对STM32中原子有这样一个文件夹 SYSTEM 里面有Sys.c 和 Delay.c 以及 Usart.c 这样三个函数,在剖析这三个函数的同时也针对遇到的概念性东西进行解析,同...
  • sky_Buddha
  • sky_Buddha
  • 2016年10月18日 08:49
  • 1488

Keil4 每次选build 编译(F7)都全部编译的解决办法

Keil4 每次选build 编译(F7)都全部编译的解决办法: 网上搜索加验证: project--option for target 'xxx' ---target---Code Genera...
  • wchengshen
  • wchengshen
  • 2015年12月31日 10:38
  • 2906

Keil4编译原子哥的SYSTEM出现错误 Inline assembler not permitted when generating Thumb code

 原文地址::http://www.openedv.com/posts/list/0/55803.htm;jsessionid=BF32A849CB8EF733FEEC85010EBCE48C ...
  • csshuke
  • csshuke
  • 2017年12月30日 17:33
  • 44

GCC inline assembler 基本说明

GCC inline assembler
  • naclkcl9
  • naclkcl9
  • 2010年08月04日 13:49
  • 1585

Keil MDK从未有过的详细使用讲解

转自博客:http://blog.csdn.net/zhzht19861011/article/details/5846510 这博主关于MDK 的使用的文章,写的得TM的好  TM的实用! 真心收...
  • yx_l128125
  • yx_l128125
  • 2013年06月21日 14:08
  • 49111

Keil综合(03)_map文件全解析

相关标题:Keil map文件 内存分布文件0、写在前面相信有较大项目开发经验的朋友都曾遇到内存溢出的问题,那么大家都是如何分析这类问题的呢?大家遇到HardFault_Handler 有对map分析...
  • ybhuangfugui
  • ybhuangfugui
  • 2017年07月23日 21:45
  • 3591

KEIL MDK输出map文件分析

原作者:nthq2004   标题:KEIL MDK输出map文件分析01   零、前言   前面写了一篇文章对__main函数的执行过程做了一个粗略的跟踪描叙,对一个烧录了程序的...
  • Ropai
  • Ropai
  • 2012年04月24日 12:40
  • 18518

把程序从ROM中拷贝到RAM中运行模块的设计【ARM指令和Thumb指令的区分】

需要一个升级APP程序功能,但是又不想再Bootloader里面做,因为一开始没有设计BootLoader。 所以只能在APP添加一个Update模块了。             Update的逻辑...
  • YUAN1125
  • YUAN1125
  • 2012年02月19日 21:46
  • 3837

编译原子哥的SYSTEM出现错误 Inline assembler not permitted when generating Thumb code

原文地址::http://www.openedv.com/posts/list/0/55803.htm;jsessionid=BF32A849CB8EF733FEEC85010EBCE48C ...
  • xqhrs232
  • xqhrs232
  • 2015年11月20日 21:23
  • 3402
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:编译原子哥的SYSTEM出现错误 Inline assembler not permitted when generating Thumb code
举报原因:
原因补充:

(最多只允许输入30个字)