怎么实时监听一个IO引脚的电平变化
如题,菜鸟求教。我只知道读取gpio口电平可使用DigitalIn的read函数,怎么样做到实时监听呢?只能在while(1)里面循环读取吗?
用中断吧,上下降沿都进中断,这样就实时了。 是AD输入口的话,配置成ADC模式,不断的读AD值 或者一直读IO口,或者采用上下沿中断来解决。 IO中断最直接,要是有操作系统也可以 做一个任务检测也可以 如果真的要做到实时,估计中断才能解决吧
如果放在while(1)里面,还有其他的代码的情况下无法做到
所以,用中断,把这个IO设置成中断触发,一旦发生变动,马上响应中断 中断是最好的办法,或者定时扫描,按键都是这样的 用中断吧,上下降沿都进中断 视精度的要求和实际任务,只是看电平的高低使用IO口即可,若看精细的变化就要用A/D引脚了。功能不复杂的情况下,循环比较简单;而使用中断则不易丢失关键的信息变化。 1、GPIO_ReadInputDataBit()函数可以直接读取I/O变化,加一下判断就可以了
2、设置I/O口的外部中断,可以判断上升、下降或者上升下降都判断
页:
[1]
2