编译原子哥的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 }



STM32系统文件(SYSTEM)

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

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

转自博客:http://blog.csdn.net/zhzht19861011/article/details/5846510 这博主关于MDK 的使用的文章,写的得TM的好  TM的实用! 真心收...

KEIL Real view MDK中插入空操作NOP

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

stm32退出停止模式出现死机现象分析

stm32退出停止模式出现死机现象分析          根据《STM32中文参考手册》描述,STM32的低功耗模式有三种:睡眠模式,停止模式,待机模式。(有些资料说其实只有两种模式,不存在睡眠模式...
  • joqian
  • joqian
  • 2012年11月27日 14:05
  • 1629

GCC inline assembler 基本说明

GCC inline assembler

使用 Cocoapods 集成框架 Operation not permitted - /usr/bin/xcodeproj,以及项目出现 Invalid bitcode signature 编译错误

使用 Cocoapods 集成框架 Operation not permitted - /usr/bin/xcodeproj,以及项目出现 Invalid bitcode signature 编译错误...

Error message when you try to save a table in SQL Server 2008: "Saving changes is not permitted"

SYMPTOMS When you use Data Definition Language (DDL) to modify a table, and then you try to save th...

stm32f429discovery模板加入原子哥的延时串口和位带操作

今天拿到了stm32f429 discovery的开发板,板子很强大但是还是从基础的程序来吧,写着帖子主要是为了参加eeworld的活动,但是吃水不忘挖井人,在原子哥的群里跟大家在分享一下。 在已经...
  • STM32F4
  • STM32F4
  • 2014年01月07日 17:26
  • 1766

OSError: [Errno 1] Operation not permitted: '/tmp/pip-g3bg0s-uninstall/System/Library/Frameworks/Pyt

一、问题描述 在用下列名字安装时 sudo -H pip install Scrapy sudo pip install virtualenvwrapper   出现下列...

STM32--对原子哥USART实验中printf重定向进行分析

keli usart串口 半主机 重定义
  • Zach_z
  • Zach_z
  • 2017年06月19日 02:07
  • 349
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:编译原子哥的SYSTEM出现错误 Inline assembler not permitted when generating Thumb code
举报原因:
原因补充:

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