《单片机原理及接口技术-基于armcortexm3的stm32系列》课件64.ppt

上传人(卖家):晟晟文业 文档编号:3704520 上传时间:2022-10-06 格式:PPT 页数:24 大小:260.82KB
下载 相关 举报
《单片机原理及接口技术-基于armcortexm3的stm32系列》课件64.ppt_第1页
第1页 / 共24页
《单片机原理及接口技术-基于armcortexm3的stm32系列》课件64.ppt_第2页
第2页 / 共24页
《单片机原理及接口技术-基于armcortexm3的stm32系列》课件64.ppt_第3页
第3页 / 共24页
《单片机原理及接口技术-基于armcortexm3的stm32系列》课件64.ppt_第4页
第4页 / 共24页
《单片机原理及接口技术-基于armcortexm3的stm32系列》课件64.ppt_第5页
第5页 / 共24页
点击查看更多>>
资源描述

1、ARM Cortex-M3 的STM32系列复用功能寄存器组AFIO和NVIC寄存器组复用功能寄存器组AFIOAFIO可以实现GPIO端口的复用功能,这样,GPIOx就不再用来输入输出0和1,而是可以用来实现其他功能。要使用复用功能,必须在时钟控制寄存器中打开AFIO时钟!复用功能寄存器组AFIO事件控制寄存器AFIO_EVCR内部事件输出到外部引脚的过程中,当内部事件发生时,事件控制寄存器就在相应引脚上输出一个时钟周期的脉冲。复用功能寄存器组AFIOAFIO_EVCR寄存器内部结构事件控制寄存器AFIO_EVCR复用功能寄存器组AFIOEVOE:允许事件输出(Event out enable

2、)置位该位,Cortex的EVENTOUT将连接到由PORT2:0和PIN3:0选定的I/O口。事件控制寄存器AFIO_EVCR复用功能寄存器组AFIOPORT2:0:端口选择(Port selection)选择用于输出Cortex的EVENTOUT信号的端口。000:选择PA;001:选择PB;010:选择PC;011:选择PD;100:选择PE事件控制寄存器AFIO_EVCR复用功能寄存器组AFIOPIN3:0:引脚选择(Pin selection)选择用于输出Cortex的EVENTOUT信号的引脚。0000:选择Px0;0001:选择Px1;1111:选择Px15PIN的值与所选引脚的

3、序号对应。复用重映射和调试I/O配置寄存器(AFIO_MARP)为了使64脚或100脚封装的外设I/O数量达到最优,通过配置复用重映射和调试I/O配置寄存器(AFIO_MAPR),可以把一些复用功能重新映射到其他引脚上。这时,复用功能就不再重新映射到它们的原始引脚上了。复用功能寄存器组AFIO复用重映射和调试I/O配置寄存器(AFIO_MARP)复用功能寄存器组AFIO例如,USART1_REMAP位可以修改串口通信USART1映射:0:PA9作为发送端TX,PA10作为接收端RX(默认值)1:PB6作为发送端TX,PB7作为接收端RX(把串口1的端子映射到PB6和PB7)外部中断配置寄存器(

4、AFIO_EXTICR 4)外部中断配置寄存器用来配置GPIOx的某个引脚作为外部中断信号输入,总共可以配置16个外部中断请求线,编号为0-15。总共有4个32位的AFIO_EXTICR寄存器,每个寄存器只有低16位有效,高16位无效。复用功能寄存器组AFIO复用功能寄存器组AFIO外部中断配置寄存器(AFIO_EXTICR 4)每个EXTICR寄存器的低16位管理4个外部中线的配置:EXTICR0管理0-3号;EXTICR1管理4-7号;EXTICR2管理8-11号;EXTICR3管理11-15号。EXTIy3:0:EXTIx配置(x=0 3)(EXTI x configuration)00

5、00:PAx引脚为外部中断的输入源;0001:PB x引脚为外部中断的输入源;0010:PCx引脚;0011:PDx引脚;0100:PEx引脚;0101:PFx引脚;0110:PGx引脚复用功能寄存器组AFIO外部中断配置寄存器(AFIO_EXTICR 4)例:设置PC13作为外部中断请求输入线。13号对应EXTI13,而EXTI13在EXTICR3上。让EXTI133:0=0010,0010表示C口被设置位外部中断请求线。C语言实现如下:AFIO-EXTICR3&=0 xFF0F;/清除EXTI133:0AFIO-EXTICR3|=0 x0020;/设置EXTI133:0为0010复用功能寄

6、存器组AFIO配置寄存器CRH和CRL通过中断可以实现多任务操作,以及相应外部的各种突发事件。CM3最多可以管理240个外部中断,根据厂家型号不同而不同,一般少于240个。中断功能通过中断程序来实现。中断程序的调用涉及到中断使能和除能(允许中断或禁止中断)、中断的挂起与解挂(中断请求标识与清除)、中断优先级和中断激活等多种概念和技术,并使用相应的寄存器。中断控制寄存器NVIC中断使能寄存器SETENA0_SETENA7与除能寄存器CLRENA0_CLRENA7SETENAx(x=07)都是32位的寄存器,每一位对应一个外部设备中断使能(允许),因此8个SETENA寄存器就允许256个中断,但其

7、中015号中断是系统的内部中断,这些内部中断对于CPU的正常工作来说非常重要,不允许用户使能和除能。因此,SETENA7寄存器的高16位是无效的SETENA0SETENA6的7*32=224位,加上SETENA7的低16位,总共构成240位。中断控制寄存器NVIC同理,CLRENA0CLRENA6的7*32=224位,加上CLRENA7的低16位,总共构成240位,用来除能(禁止)外部240个外部中断。中断控制寄存器NVIC名称类型地址复位值描述SETNA0R/W0 xE000_E1000中断031的使能寄存器,共32个使能位n,异常号16+nSETNA1R/W0 xE000_E1040中断3

8、263的使能寄存器,共32个使能位SETNA7R/W0 xE000_E11C0中断224239的使能寄存器,共16个使能位CLRNA0R/W0 xE000_E1800中断031的除能寄存器,共32个除能位n,异常号16+nCLRNA1R/W0 xE000_E1840中断3263的除能寄存器,共32个除能位CLRNA7R/W0 xE000_E19C0中断224239的除能寄存器,共16个除能位中断挂起寄存器SETPEND0SETPEND7与解挂寄存器CLRPEND0CLRPEND7中断挂起/解挂寄存器与中断使能/除能寄存器结构一样,每位代表的外设也一样。当中断允许时,外部的设备若发出中断请求,则

9、挂起寄存器置1。中断控制寄存器NVIC中断控制寄存器NVIC名称类型地址复位值描述SETPEND0R/W0 xE000_E2000中断031的挂起寄存器,共32个挂起位n,异常号16+nSETPEND1R/W0 xE000_E2040中断3263的挂起寄存器,共32个挂起位SETPEND7R/W0 xE000_E21C0中断224239的挂起寄存器,共16个挂起位CLRPEND0R/W0 xE000_E2800中断031的解挂寄存器,共32个解挂位n,异常号16+nCLRPEND1R/W0 xE000_E2840中断3263的解挂寄存器,共32个解挂位CLRPEND7R/W0 xE000_E2

10、9C0中断224239的解挂寄存器,共16个解挂位中断挂起寄存器SETPEND0SETPEND7与解挂寄存器CLRPEND0CLRPEND7例如,SETPEND1的第2位被置1,代表34号外部中断有请求;当中断程序响应结束,解挂寄存器相应的位就会被置1,代表请求已经被响应。中断控制寄存器NVIC中断激活寄存器ACTIVE0ACTIVE7当某个中断被响应,且该中断程序还没有结束,则中断激活寄存器ACTIVEx的相应位就会被置1。此时,若该中断被更高级别的中断打断,它的激活位仍然保持为1,并且新的高级别中断的相应位也会被置1,处于激活状态。直到中断响应结束。中断控制寄存器NVIC中断控制寄存器NV

11、IC名称类型地址复位值描述ACTIVE0R/W0 xE000_E3000中断031的活动状态寄存器,共32个挂起位n,异常号16+nACTIVE1R/W0 xE000_E3040中断3263的活动状态寄存器,共32个挂起位ACTIVE7R/W0 xE000_E31C0中断224239的活动状态寄存器,共16个挂起位中断优先级寄存器PRI0PRI239PRI0-PRI239对应的地址范围是0 xE000E400-0 xE000E4EF。每个外部中断都有一个对应的优先级寄存器,每个寄存器占8 位,但是允许最少只使用最高3 位。4 个相临的优先级寄存器拼成一个32 位寄存器。根据优先级组设置,优先级

12、可以被分为高低两个位段,分别是抢占优先级和亚优先级。抢占优先级和亚优先级分别占几位,则由寄存器AIRCR的PRIGROUP决定。中断控制寄存器NVICAIRCR寄存器结构中断控制寄存器NVICVECTKEY:访问钥匙任何时候对该寄存器的写操作,都必须同时把0 x05FA写入此段,否则写操作被忽略。若要读取此半字,则0 xFA05。AIRCR寄存器结构中断控制寄存器NVICENDIANESS:指示端设置。1:大端0:小端此值是在复位时确定的,不能更改。AIRCR寄存器结构中断控制寄存器NVICPRIGROUP:优先级分组。复位值为0。具体分组情况跟芯片厂家和型号有关。在STM32芯片中,只使用了8位当中的高4位(低4位无效),AIRCR的10:8如果是111,代表0位抢占优先级,4位响应优先级;如果是110,代表1位抢占优先级,3位响应优先级,以此类推。数值越小,优先级越高。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(《单片机原理及接口技术-基于armcortexm3的stm32系列》课件64.ppt)为本站会员(晟晟文业)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|