|
师傅们,老师们,各位好,目前用STM32开发板,数码管和串口显示18b20,温度值,程序按照教程来的,和教程程序略有不同(编译不过,按照自己的方法改的),教程里面的程序没有数码管,目前的问题是,前10秒显示正常温度值,后3秒现在零,在10秒显示正常值,在3秒显示0,一直往返,串口读出的温度值也是一样的情况,教程程序没有此问题,我的数码管显示是采用定时中断来写的,我怀疑用定时中断程序干扰18b20采集数据,我之前用C51写过这种程序,要加中断开和中断关,于是我在网上找到这两种语句(详情见图片),加上之后,数码管可以看轻微闪烁,但是数值还是有出现0的情况,后来我才用中断函数NvIC里面的两个函数来控制函数中断开,关(nvic_setprimask(); nvic_resetprimask();)加入后,编译不过,意思是确实函数,请问各位老师,各位师傅,这种情况是定时中断造成的吗?如果是定时中断造成的,这个位置怎么关中断,开中断,或者还有没有其它的好的方法解决此问题,谢谢
|
|