发布于 2011-08-04 21:33:17
2楼
你这程序的主要问题是缺少状态标识判断,而无条件的计数所致!
1、程序每个扫描周期执行一次,触发条件满足后一直保持置“1”,如果不在每次扫描周期执行前,判断是否已计数,当然就会出现不停的计数。
2、这时,需要定义一个静态的BOOL类型变量(Static Variables),用于计数条件判断。
3、计数前,编程先将触发条件满足后将此BOOL变量置“1”,否则置“0”,然后再判断此BOOL变量为“1”,则计数;反之则不计数。
大学之道,在明明德,在亲民,在止于至善。