关于STM8Sstm8s 软件中断优先级级求助

据悉,该女子身体携带艾滋病毒及梅毒等传染性疾病。
当地3200人不分国籍,全数裸体并将涂成不同色调的蓝。
声明:本文由入驻搜狐公众平台的作者撰写,除搜狐官方账号外,观点仅代表作者本人,不代表搜狐立场。
  具有最多32的 ,在中断的处理上类似于cortexm系列的芯片,首先是每个中断的向量都是固化在系统内部的,用户需要向相应的中断向量flash位置写入中断处理函数,其二,每个中断向量都具有 的优先级,共有两位优先级,两个BIT的优先级可以催化出4个优先级,具体如下
  中断控制器内部有一些寄存器专门用来存放相应的中断的中断优先级,同同时,在系统内部也有一个系统寄存器CC他的第三位和第五位分别表示当前正在处理的中断的优先级
  可以这样认为,中断发生的时候,系统寄存器在执行中断向量跳转的时候自动载入了相应的中断优先级到系统寄存器CC中.
  中断的处理遵循先判断软件优先级后判断硬件优先级的模式,当几个中断同时发生的时候,系统会根据其固化的硬件优先级进行相应,
  另外,STM8支持中断嵌套,因为软件优先级就4级,最多也就软件优先级三层嵌套
  对STM8的中断进行操作其实也简单
  1. 配置系统中断的打开或关闭
  2. 配置想要使用的中断向量的软件优先级
  3. 打开相应的外设中断源的中断,就可以响应了
  针对于来说,首先,STM8的每一个引脚都能支持外部中断,但是在中断向量上,不是每一个引脚都有
  独立的中断向量,而是每个端口共用一个中断向量,在端口中断向量处理函数中检查到底是哪一个引脚出现了问题,
  对于外部中断的配置,如下
  可以定义中断的触发模式,电平触发,下降沿触发等,这个寄存器存放了A B CD四个向量的中断模式
  该寄存器存放了E向量的中断
  另外,外部中断中有一个特殊的中断叫做TLI不可屏蔽中断,也就是PD7,他不属于D中断向量而是拥有自己的TLI中断向量
  使用外部中断的过程
  1. 根据前面的描述配置中断向量
  2. 配置中断端口的触发模式
  3. 对相应的GPIO口选择中断输入模式
  在使用中断函数的时候需要注意,外部中断的中断函数我们并没有一个寄存器告诉我们哪一个中断向量的哪一个引脚发生了中断
  需要我们读取端口的信息,假设是下降沿中断触发,那么中断处理函数在运行的时候,该引脚应该是电平的,检查哪一个引脚是低电平,我们就可以知道哪一个引脚发生了中断
  从而进行正确的处理
  所以最好是一个端口只有一个引脚中断,这样易于判断,省去了一些读引脚的过程
  具体操作请查看一下代码
  #include &exti.h& void ExtiInit(void) { //首先禁用中断 disableInterrupts(); //配置IO口为输入中断模式 //D7初始化 GPIOD-&DDR &= ~(1&&7);//设置为输入 GPIOD-&CR1 = (1&&7); GPIOD-&CR2 = (1&&7);//中断上拉输入 //E3初始化 GPIOE-&DDR &= ~(1&&3);//设置为输入 GPIOE-&CR1 = (1&&3); GPIOE-&CR2 = (1&&3);//中断上拉输入 //设定中断优先级,TLI是最高的不可屏蔽中断优先级,所以不需要设置软件优先级,只 //需要设置E3也就是端口E的优先级即可,中断向量号为7 对应寄存器ITC_SPR2 ITC-&ISPR2 &= (3&&6);//清楚中断优先级 ITC-&ISPR2 = (1&&6);//中断优先级01 //设置中断触发模式 EXTI-&CR2 &= ~(1&&2);//TLI下降沿触发 EXTI-&CR2 &= ~(3&&0);//清除PORTE EXTI-&CR2 = (2&&0);//Porte仅仅下降沿触发 enableInterrupts();//打开中断 } //TLI中断处理函数 INTERRUPT_HANDLER(TLI_IRQHandler, 0) { keyValue = KEY_VALUE1; } //PORT E中断处理函数 INTERRUPT_HANDLER(EXTI_PORTE_IRQHandler, 7) { //保险起见,这里进行一次电平 if((GPIOE-&IDR&0X08) == 0)//检测是不是低电平 { keyValue = KEY_VALUE2; } }
  #ifndef __EXTI_H_ #define __EXTI_H_ #include &stm8s.h& #include &key.h& //我们是用两个按键作为中断触发,其中,D7是TLI中断,E3是portE中断 void ExtiInit(void); #endif
  原文链接:
欢迎举报抄袭、转载、暴力色情及含有欺诈和虚假信息的不良文章。
请先登录再操作
请先登录再操作
微信扫一扫分享至朋友圈
搜狐公众平台官方账号
生活时尚&搭配博主 /生活时尚自媒体 /时尚类书籍作者
搜狐网教育频道官方账号
全球最大华文占星网站-专业研究星座命理及测算服务机构
电子工程世界(EEWorld)是一家专为中国电子工程师和电...
13256文章数
主演:黄晓明/陈乔恩/乔任梁/谢君豪/吕佳容/戚迹
主演:陈晓/陈妍希/张馨予/杨明娜/毛晓彤/孙耀琦
主演:陈键锋/李依晓/张迪/郑亦桐/张明明/何彦霓
主演:尚格?云顿/乔?弗拉尼甘/Bianca Bree
主演:艾斯?库珀/ 查宁?塔图姆/ 乔纳?希尔
baby14岁写真曝光
李冰冰向成龙撒娇争宠
李湘遭闺蜜曝光旧爱
美女模特教老板走秀
曝搬砖男神奇葩择偶观
柳岩被迫成赚钱工具
大屁小P虐心恋
匆匆那年大结局
乔杉遭粉丝骚扰
男闺蜜的尴尬初夜
客服热线:86-10-
客服邮箱:STM8S第1章~第5章_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
STM8S第1章~第5章
上传于||暂无简介
阅读已结束,如果下载本文需要使用0下载券
想免费下载更多文档?
下载文档到电脑,查找使用更方便
还剩10页未读,继续阅读
你可能喜欢关于stm8s207的定时器同时进入中断的问题
11:31:20&&&来源:eefocus &&
调试时候,发现拔掉后,再插上电源,程序莫名其妙的死了。起初以为是没有复位,查看电容0.1uf,还好啊。没问题,配上10k的电阻t=rc=1ms,再说以前的都是这样的设计。后来发现我开通了两个,T1和T2,并且两者的中断时间竟然一样,都是50ms,难道是一上电,同时卡死了。
函数名 :TIM1_Init
功能 :计数器管理
说明 :(64/Sys_Clk)*125*50=50ms //Sys_Clk/(7+1)x(9999+1) = 10ms//
*******************************************************************************/
void TIM1_Init(void)
TIM1_DeInit(); //定时器1相关寄存器复位
TIM1_TimeBaseInit(64, TIM1_COUNTERMODE_UP, 125*50, 0); //中断时间50ms&
// TIM1_TimeBaseInit(7, TIM1_COUNTERMODE_UP, 9999, 0); //中断时间10ms&
// TIM1_TimeBaseInit(8, TIM1_COUNTERMODE_UP, 1500, 0); //中断时间ms&
TIM1_ITConfig(TIM1_IT_UPDATE, ENABLE);&
ITC_SetSoftwarePriority(ITC_IRQ_TIM1_OVF, ITC_PRIORITYLEVEL_2);//设置d定时器中断优先级 2&
TIM1_Cmd(ENABLE); //使能TIM1
void TIM2_Init(void)
TIM2_DeInit();
TIM2_TimeBaseInit(TIM2_PRESCALER_64, 125*50);//50ms中断
TIM2_ITConfig(TIM2_IT_UPDATE, ENABLE); //使能中断
ITC_SetSoftwarePriority(ITC_IRQ_TIM2_OVF, ITC_PRIORITYLEVEL_2);//设置d定时器中断优先级 2
TIM2_Cmd(ENABLE);//使能定时器1&
后来,我将定时器1中断时间改为10ms
void TIM1_Init(void)
TIM1_DeInit(); //定时器1相关寄存器复位
// TIM1_TimeBaseInit(64, TIM1_COUNTERMODE_UP, 125*50, 0); //中断时间50ms&
TIM1_TimeBaseInit(7, TIM1_COUNTERMODE_UP, 9999, 0); //中断时间10ms&
// TIM1_TimeBaseInit(8, TIM1_COUNTERMODE_UP, 1500, 0); //中断时间ms&
TIM1_ITConfig(TIM1_IT_UPDATE, ENABLE);&
ITC_SetSoftwarePriority(ITC_IRQ_TIM1_OVF, ITC_PRIORITYLEVEL_2);//设置d定时器中断优先级 2&
TIM1_Cmd(ENABLE); //使能TIM1
然后卡死的现象消失了。
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
stm8s207相关资源
定时器相关资源
进入中断相关资源
编辑:什么鱼
本文引用地址:
本周热门资源推荐
EEWORLD独家君,已阅读到文档的结尾了呢~~
51单片机中的中断优先级总结[整..
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
51单片机中的中断优先级总结[整理版]
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer--144.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口还没有帐号? 赶紧
帖子用户版块本版
134/125511
Powered by & Copyright Time now is:07-11 09:53 &
版权所有 Gzip enabled
Total 0.065587(s) query 3,

我要回帖

更多关于 stm8l中断优先级设置 的文章

 

随机推荐