码迷,mamicode.com
首页 > 其他好文 > 详细

PIO学习

时间:2018-08-15 22:53:38      阅读:359      评论:0      收藏:0      [点我收藏+]

标签:cti   int   out   gen   generate   level   err   clear   双向   

边沿捕获

   PIO可以对输入进行边沿捕获,它可以捕获上升沿、下降沿和双沿,当检测到边沿时PIO会把它存在edgecapture 寄存器之内;

  打开Synchronously capture 时,会生成一个边沿捕获寄存器,edgecapture ,

Enable bit-clearing for edge capture register 打开之后,可以清除单独位的沿捕获寄存器,清除给定的位时,要向相应的捕获寄存器写入1;

如果Enable bit-clearing for edge capture register 关闭,向edgecaputre写入任何值都会清楚所有寄存器中所有位,否则写入1到指定的位只

清除该位。

 

IRQ生成

打开Generate IRQ 选项之后生成interruptmask 寄存器,关闭时则不存在;

中断mask决定那个输入端口可以触发中断。interruptmask 寄存器来控制。

Level-sensitive :检测到高电平时触发中断,所以如果输入为低电平,可以在输入端加个非门。

 

Edge-sensitive :当edgecapture寄存器中的指定位为高时,PIO IP生成中断;

所以可以说,电平中断应该是检测输入寄存器,边沿中断检测的是edgecapture寄存器。edgecapture的值是不能自动清除的,需要清除,所以触发中断后要清除该位。

direction Register :该寄存器只存在于双向口。

interruptmask Register :设置相应的PIO输入,打开或者关闭相应位的中断;复位之后寄存器为0,关闭所有中断。

outset and outclear Register :Enable individual bit set/clear output register
打开存在该寄存器。

 

PIO学习

标签:cti   int   out   gen   generate   level   err   clear   双向   

原文地址:https://www.cnblogs.com/zhongguo135/p/9484084.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!