ARM--day7(cortex_M4核LED实验流程、异常源、异常处理模式、异常向量表、异常处理流程、软中断编程、cortex_A7核中断实验)

这篇具有很好参考价值的文章主要介绍了ARM--day7(cortex_M4核LED实验流程、异常源、异常处理模式、异常向量表、异常处理流程、软中断编程、cortex_A7核中断实验)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

ARM--day7(cortex_M4核LED实验流程、异常源、异常处理模式、异常向量表、异常处理流程、软中断编程、cortex_A7核中断实验),arm开发,stm32,c语言,linuxARM--day7(cortex_M4核LED实验流程、异常源、异常处理模式、异常向量表、异常处理流程、软中断编程、cortex_A7核中断实验),arm开发,stm32,c语言,linuxARM--day7(cortex_M4核LED实验流程、异常源、异常处理模式、异常向量表、异常处理流程、软中断编程、cortex_A7核中断实验),arm开发,stm32,c语言,linux
ARM--day7(cortex_M4核LED实验流程、异常源、异常处理模式、异常向量表、异常处理流程、软中断编程、cortex_A7核中断实验),arm开发,stm32,c语言,linux

 

 软中断代码:(keil软件)文章来源地址https://www.toymoban.com/news/detail-664407.html

.text
.global _start
_start:
	@1.构建异常向量表
	b reset
	b undef_interrupt
	b software_interrupt
	b prefetch_dataabort
	b data_abort
	b .
	b irq
	b fiq
reset:
	@2.系统一上电,程序运行在SVC模式
		@1>>初始化SVC模式,栈指针
		ldr sp,=0x40000800
	@3.从SVC模式切换到user模式
		msr cpsr,#0xD0
	@4.user模式	下代码
		@1>>初始化user模式,栈指针
		ldr sp,=0x40000700
		mov r0,#0x1
		mov r1,#0x2
		@5.执行软中断指令--->保存现场(四大部三小步)
		swi 2
		add r0,r0,r1  @ r0=0x3
		b stop
		
undef_interrupt:
software_interrupt:
	@1.压栈保存现场
	stmfd sp!,{r0-r12,lr}
	mov r0,#0x3
	mov r1,#0x4
	add r0,r0,r1 @ r0=0x7
	@2.出栈恢复现场
	ldmfd sp!,{r0-r12,pc}^
	@ ^:将SPSR_<MODE>寄存器中的值,给到CPSR寄存器中

	
prefetch_dataabort:
data_abort:
irq:
fiq:
	

	
stop:
	b stop
	.end
		

到了这里,关于ARM--day7(cortex_M4核LED实验流程、异常源、异常处理模式、异常向量表、异常处理流程、软中断编程、cortex_A7核中断实验)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • arm:day7

    1.软中断处理    

    2024年02月12日
    浏览(39)
  • ARM异常处理(异常源的分类、异常的响应流程)

    目录 一、异常的概念 1、什么是异常? 2、处理异常时,处理器要考虑哪些问题? 二、ARM异常源 1、异常源的分类 2、异常模式 三、ARM异常响应 1、CPSR寄存器内容备份(自动执行) 2、修改CPSR的值(自动执行) (1) 修改模式 (2) 修改中断禁止位 (3) 修改状态位 3、保存返回地址(

    2023年04月15日
    浏览(34)
  • ARM day7 (串口协议)

    键盘输入一个字符\\\'a\\\',串口工具显示\\\'b\\\' uart4.h uart4.c main.c 键盘输入一个字符串,串口工具回显输入的字符串 uart4.h uart4.c main.c  

    2024年02月12日
    浏览(38)
  • 4.16 day7 ARM

    mykey.h mykey.c do_irq.c main.c

    2024年04月28日
    浏览(31)
  • ARM处理器有哪些工作模式和寄存器?各寄存器作用是什么?ARM异常中断处理流程?

    快速学习嵌入式开发其他基础知识? 返回专栏总目录 《嵌入式工程师自我修养/C语言》 Tip📌:鼠标悬停双虚线/句,可获得更详细的描述   ARM处理器有多种工作模式,如下表所示。应用程序正常运行时,ARM处理器工作在 用户模式(User mode) ,当程序运行出错或有中

    2024年02月21日
    浏览(116)
  • ARM day7 day8 UART串口、PWM蜂鸣器、WDT看门狗、ADC数模转换

            GPA1_0: RXD2         GPA1_1: TXD2         1)对外设置 (GPIO)             GPA1CON: 0x11400020   3:0-0x2(RXD2)  7:4-0x2(TXD2)         2)对内设置(uart)             ULCON2: 0x13820000   0x3             UCON2:  0x13820004   1:0-01(polling)  3:2-01(polling)             UTRSTAT2: 0-1(r

    2024年02月21日
    浏览(34)
  • ARM开发(cortex-A7核,UART总线实验)

    ---.h头文件--- ---.c功能实现文件--- ---.c主函数测试文件--- 结果: 字符:  字符串: 

    2024年02月12日
    浏览(42)
  • ARM day9 (按键中断控制led亮灭)

     保存现场 异常的处理流程,保存现场会做哪些事情(四大步三小步) ----CPU自动完成 1.保存CPSR寄存器中的值,到SPSR_mode寄存器中 2.修改CPSR寄存器对应的位         1修改CPSR寄存器对应的状态位(T位)         2根据需要,禁止相应中断位(I位 / F位)         3修改CPSR寄存

    2024年02月13日
    浏览(44)
  • 如何评估现代处理器的性能——以ARM Cortex-A53为例

    现代处理器内核的性能可以从以下几个方面进行评估: 时钟速度(Clock Speed):它是CPU内部时钟发生器的频率,以赫兹(Hz)为单位。时钟速度越高,每秒钟内执行的指令数就越多,因此性能也会更好。 指令级并行性(ILP):现代处理器采用了一些技术来提高指令级并行性,

    2024年02月03日
    浏览(67)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包