做单片机定时电路,stc15F104W不能直接用3v锂电池或2节AA直接供电,因为stc15F104W工作电压3.8-5.5V,你可以改用stc15F104,工作电压2.4-5.5V。控制部分用TIP41c和场馆irf3205哪个都不好,需要通过的峰值电流大约2A,irf3205导通阻抗极低,但Vgs要4V以上,TIP41c大电流时增益太小,驱动电流太大了。
给你推荐AO3402,你看看参数合适不。
端口自己定义啊,首先你用的是P3,STC的需要对P3口的地址先声明,这个51的头文件是没有的,然后定义P3的输出方式为普通IO口。要不然不出结果的,另外你的外电路接的是P3.5按键是下降沿还是上升沿有效。做的方法很多,定时器,查询都可以的。这个具体算时间要结合你的晶振频率和分频情况(要仔细看手册)
算法不难的,假定按键是低电平有效,也就是if来判断P3.5管脚是否为0,然后短暂延迟10ms,再次判断P3.5是否为0,两次结果一直表示触发了一次按键(防抖动)。变量+1
判断1秒内变量是否=2,是=2的话,那么就输出P3.3有效咯
stc15f2k60s2单片机共有3个定时器,为T0,T1,T2,共有14个中断源。比传统的51单片机多了一个定时器T2,中断源多了9个。见下表,画箭头的一列。
应该是中断导致读取时序被打断,建议在读取之前将中断禁止,读取结束后再打开
读取定时器的值,这种方法不可取。
还是用中断方式,比较及时。
T0定时方式0,内容是两个字节(13位数)。
定时的时候,以机器周期为单位,不停的变化。
读出低字节,高字节可能同时就变了,再读出高字节,就可能不是刚才的高字节了。
先后读出的两个字节,难说是同一个数据的高低字节。
另外,当读出后、再经过判断、再进行处理,时间,已经过去很多了。
再另外:T0Temp = TH0 * 0x100+TL0;
应该是:T0Temp = TH0 * 32 + TL0;
上次,有人说可以在定时中断中读出,而不能在外部中断里面读出。
stc15f单片机定时器的介绍到此就结束了,感谢您耐心阅读,谢谢。
本文标签:stc15f单片机定时器