当前位置: 首页 > wzjs >正文

农林网站建设营销策略是什么

农林网站建设,营销策略是什么,怎么用vs2010做网站,十堰网站建设报价根据您提供的图片,我们可以看到一个S3C2440微控制器的中断处理流程图。这个流程图展示了从中断请求源到CPU的整个中断处理过程。以下是流程图中各个部分与您提供的寄存器之间的关系: 请求源(带sub寄存器): 这些是具体的…

根据您提供的图片,我们可以看到一个S3C2440微控制器的中断处理流程图。这个流程图展示了从中断请求源到CPU的整个中断处理过程。以下是流程图中各个部分与您提供的寄存器之间的关系:

  1. 请求源(带sub寄存器)

    • 这些是具体的中断源,例如UART0-ERR、UART0-RXD、UART0-TXD等。

    • 每个请求源可能有一个对应的子中断源挂起标志(SUBSRCPND),用于指示该请求源下的具体中断事件。

  2. 子中断源开关(SUBMASK)

    • 这个开关用于使能或禁用子中断源的中断请求。

    • 例如,如果SUBMASK寄存器的某位被清除(即设置为0),则对应的子中断源的中断请求将被屏蔽。

  3. 源挂起标志(SRCPND)

    • 这个寄存器用于记录哪些中断源的中断请求已经发生但尚未被处理。

    • 在流程图中,SRCPND寄存器的值会被传递到开关(MASK)和优先级(MODE)模块。

  4. 开关(MASK)

    • 这个模块用于使能或禁用中断请求的传递。

    • 它使用INTMSK寄存器的值来决定是否允许中断请求通过。

    • 在代码中,INTMSK &= ~(1 << 5);操作使能了EINT8_23中断组。

  5. 优先级(MODE)

    • 这个模块用于设置中断的优先级。

    • 它可能涉及到优先级寄存器(例如INTPR),但在您提供的代码中没有直接使用。

  6. 中断挂起标志(INTPND)

    • 这个寄存器用于记录哪些中断已经发生但尚未被处理。

    • 在流程图中,INTPND寄存器的值会被传递到CPU。

    • 在代码中,INTPND = INTPND;操作用于清零中断挂起寄存器。

  7. CPSR(I, F)

    • 这是当前程序状态寄存器(CPSR)中的两个位,用于控制中断使能和禁止。

    • CPSR寄存器的I位用于使能或禁止IRQ中断,F位用于使能或禁止FIQ中断。

    • 在代码中,通过修改CPSR寄存器来使能IRQ中断。

  8. CPU(ARM920T)

    • 最终,处理完的中断请求会被传递到CPU进行处理。

    • CPU会根据中断的优先级和当前的中断使能状态来决定是否响应中断。

总结来说,流程图中展示了从中断请求源到CPU的整个中断处理过程,而您提供的寄存器在这个过程中起到了关键的作用。每个寄存器都有其特定的功能,共同协作以确保中断能够被正确地处理。

发生中断处理

  1. mrs r0, cpsr

    • 这条指令将当前程序状态寄存器(CPSR)的值移动到通用寄存器r0中。

    • CPSR包含了处理器的状态信息,如条件标志、中断使能位等。

  2. bic r0, r0, #0x1f

    • 这条指令对r0寄存器进行位清除(Bit Clear)操作,用于清除CPSR中的模式位(最低的5位,即0x1F)。

    • 这样做是为了将当前的处理器模式位清零,为下一步设置新的模式做准备。

  3. orr r0, r0, #0x12

    • 这条指令对r0寄存器进行位或(Bit OR)操作,将模式位设置为0x12。

    • 在ARM架构中,0x12代表IRQ模式。

  4. msr cpsr_c, r0

    • 这条指令将r0寄存器的值移回CPSR。

    • 由于使用了cpsr_c而不是cpsr,这条指令仅修改CPSR中的条件码标志位和模式位,而不会影响其他位(如中断使能位)。

    • 这一步完成了处理器模式从当前模式切换到IRQ模式的操作。

  5. ldr sp, =0x40000C00

    • 这条指令将立即数0x40000C00加载到栈指针(SP)寄存器中。

    • 这样做是为了初始化IRQ模式的栈指针,为即将到来的中断处理程序准备栈空间。

    • 0x40000C00是为IRQ模式预设的栈地址。

INTOFFSET为中断的偏移量,反映的是那种中断

在S3C2440微控制器中,涉及到中断处理的寄存器有多个,每个寄存器都有其特定的作用。以下是您提供的代码中涉及到的寄存器及其作用的详细说明:

1. GPGCON

  • 作用:配置GPIO端口G的引脚功能。

  • 操作

    • GPGCON &= ~(0x3 << 0);:清除GPG0引脚的功能设置,确保其不被其他功能占用。

    • GPGCON |= (0x2 << 0);:将GPG0引脚设置为外部中断(EINT8)模式。

2. EXTINT1

  • 作用:外部中断控制寄存器,用于设置外部中断的触发方式。

  • 操作

    • EXTINT1 &= ~(0x7 << 0);:清除EINT8的触发方式设置,确保其不被其他设置影响。

    • EXTINT1 |= (0x2 << 0);:将EINT8设置为下降沿触发。

3. EINTMASK

  • 作用:外部中断屏蔽寄存器,用于使能或禁用特定的外部中断。

  • 操作

    • EINTMASK &= ~(1 << 8);:使能EINT8中断,即清除屏蔽位,允许EINT8中断请求被发送到中断控制器。

4. INTMSK

  • 作用:中断屏蔽寄存器,用于使能或禁用一组中断。

  • 操作

    • INTMSK &= ~(1 << 5);:使能EINT8_23中断组,即清除屏蔽位,允许EINT8_23组中的中断请求被发送到中断控制器。

5. EINTPEND

  • 作用:外部中断挂起寄存器,用于记录哪些外部中断已经发生但尚未被处理。

  • 操作

    • EINTPEND |= (1 << 8);:清零EINT8的挂起位,表示EINT8中断已经被处理。

6. SRCPND

  • 作用:源挂起寄存器,用于记录哪些中断源的中断请求已经发生但尚未被处理。

  • 操作

    • SRCPND |= (1 << irq_num);:清除特定中断源的挂起位,表示该中断已经被处理。

7. INTPND

  • 作用:中断挂起寄存器,用于记录哪些中断已经发生但尚未被处理。

  • 操作

    • INTPND = INTPND;:通过将寄存器的值写回自身,清零所有挂起的中断位,表示所有挂起的中断已经被处理。

8. INTOFFSET

  • 作用:中断偏移量寄存器,用于提供当前发生的中断的编号。

  • 操作

    • unsigned int irq_num = INTOFFSET;:读取当前中断的编号,用于确定是哪种中断发生了。

这些寄存器共同工作,实现了S3C2440微控制器的中断处理机制,确保了系统能够正确响应和处理各种中断请求。

将value读取出来计算电压为3.3/1024*value

http://www.dtcms.com/wzjs/265390.html

相关文章:

  • 阿里巴巴网站威海哪里做微信朋友圈营销文案
  • 换模板搭建网站怎么做站长工具忘忧草
  • 怎么给一个花店做网站建设二维码推广赚佣金平台
  • 用户体验设计书籍seo门户网站
  • 什么行业应该做网站市场营销计划方案
  • 张家港城市建设规划局网站优化搜索引擎营销
  • 提供手机网站建设随机关键词生成器
  • 网站接入商排名外链在线发布工具
  • wordpress轮翻图参数seo算法培训
  • 报告文学seo是什么意思中文
  • 机械类网站如何做网站优化广东广州网点快速网站建设
  • 昆山网站建设公司怎么样今日新闻头条官网
  • 服务器上怎么做网站免费seo工具汇总
  • 岗厦网站建设英语培训机构
  • 做网站需要注意的网销怎么销售的
  • 黄金网站大全免费如何制作网站最简单的方法
  • 网站建设的实验的结论2023年8月新冠又来了
  • 多语言版本网站制作线上销售培训机构
  • 汽车建设网站开发流程网站流量数据分析
  • 抖音小程序变现真的能赚钱吗seo推广方案怎么做
  • 建设手表商城网站多少钱百度推广平台收费标准
  • 电影网站建设java非企户百度推广
  • 今天的国内新闻刷seo排名
  • 汽车网站建设方案网站设计公司北京
  • 北京asp网站设计制作上海疫情最新数据
  • 网站建设培训合肥免费私人网站建设软件
  • 抄底券网站怎么做的柳市网站制作
  • 做户外照明有哪些网站浏览器大全
  • 房产网站开发百度关键词在线优化
  • 网站文件夹权限设置一键制作网站