12f629的问题

[复制链接]
3693|2
 楼主| chen3bing 发表于 2007-10-23 20:28 | 显示全部楼层 |阅读模式
ov, IO, go, gp, hm
&nbsp;我用12F629写了一个产生30秒脉冲波的程序。<br /><br />GP3脚接一个按键,按下之后,在GP0脚上产生一个<br /><br />30秒钟周期为250毫秒的脉冲波。<br /><br />可是按键按下之后,只产生一个周期的脉冲波。<br /><br />请高手指教。程序如下:<br /><br />trisio&nbsp;&nbsp;&nbsp;equ&nbsp;&nbsp;&nbsp;85h<br />option_reg&nbsp;equ&nbsp;81h<br />wpu&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;equ&nbsp;&nbsp;&nbsp;95h<br />tmr0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;equ&nbsp;&nbsp;&nbsp;01h<br />status&nbsp;&nbsp;&nbsp;EQU&nbsp;&nbsp;&nbsp;03H<br />gpio&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;EQU&nbsp;&nbsp;&nbsp;05H<br />intcon&nbsp;&nbsp;&nbsp;equ&nbsp;&nbsp;&nbsp;0bh<br />cmcon&nbsp;&nbsp;&nbsp;&nbsp;equ&nbsp;&nbsp;&nbsp;19h<br />rp0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;equ&nbsp;&nbsp;&nbsp;5h<br />rp1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;equ&nbsp;&nbsp;&nbsp;6h<br />c&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;equ&nbsp;&nbsp;&nbsp;0<br />data1&nbsp;&nbsp;&nbsp;&nbsp;equ&nbsp;&nbsp;&nbsp;7h<br />data2&nbsp;&nbsp;&nbsp;&nbsp;equ&nbsp;&nbsp;&nbsp;8h<br />count1&nbsp;&nbsp;&nbsp;equ&nbsp;&nbsp;&nbsp;9h<br />count2&nbsp;&nbsp;&nbsp;equ&nbsp;&nbsp;&nbsp;11h<br /><br />org&nbsp;&nbsp;&nbsp;00h<br />main&nbsp;&nbsp;nop<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bcf&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;status,rp0<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bcf&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;status,rp1<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;movlw&nbsp;&nbsp;&nbsp;1fh<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;movwf&nbsp;&nbsp;&nbsp;cmcon<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bsf&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;status,rp0<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bcf&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;status,rp1<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;movlw&nbsp;&nbsp;&nbsp;08h&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;5入0出<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;movwf&nbsp;&nbsp;&nbsp;trisio<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;movlw&nbsp;&nbsp;&nbsp;37h<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;movwf&nbsp;&nbsp;&nbsp;wpu<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bcf&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;status,rp0<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;clrf&nbsp;&nbsp;&nbsp;&nbsp;gpio<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;movlw&nbsp;&nbsp;&nbsp;01h&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;5高电平<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;movwf&nbsp;&nbsp;&nbsp;gpio<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;clrf&nbsp;&nbsp;&nbsp;&nbsp;intcon<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;goto&nbsp;&nbsp;&nbsp;&nbsp;$<br />check&nbsp;btfss&nbsp;&nbsp;&nbsp;gpio,3<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;goto&nbsp;&nbsp;&nbsp;&nbsp;check<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;call&nbsp;&nbsp;&nbsp;&nbsp;delay<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;btfss&nbsp;&nbsp;&nbsp;gpio,3<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;goto&nbsp;&nbsp;&nbsp;&nbsp;check<br />chshh&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;clrf&nbsp;&nbsp;&nbsp;&nbsp;count1<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;clrf&nbsp;&nbsp;&nbsp;&nbsp;count2<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;clrf&nbsp;&nbsp;&nbsp;&nbsp;tmr0<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MOVLW&nbsp;&nbsp;&nbsp;0ch<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MOVWF&nbsp;&nbsp;&nbsp;tmr0<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;movlw&nbsp;&nbsp;&nbsp;87h<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;movwf&nbsp;&nbsp;&nbsp;option_reg<br />del30&nbsp;movlw&nbsp;&nbsp;&nbsp;0ffh<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;subwf&nbsp;&nbsp;&nbsp;tmr0,0<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;btfss&nbsp;&nbsp;&nbsp;status,c<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;goto&nbsp;&nbsp;&nbsp;&nbsp;del30<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;clrwdt<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;movlw&nbsp;&nbsp;&nbsp;0ch<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;movwf&nbsp;&nbsp;&nbsp;tmr0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;incf&nbsp;&nbsp;&nbsp;&nbsp;count1,1<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;movlw&nbsp;&nbsp;&nbsp;02h&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;subwf&nbsp;&nbsp;&nbsp;count1,0<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;btfss&nbsp;&nbsp;&nbsp;status,c<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;goto&nbsp;&nbsp;&nbsp;&nbsp;del30<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;clrf&nbsp;&nbsp;&nbsp;&nbsp;count1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;125ms<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;movlw&nbsp;&nbsp;&nbsp;01h<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;xorwf&nbsp;&nbsp;&nbsp;gpio,1<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;incf&nbsp;&nbsp;&nbsp;&nbsp;count2,1<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;movlw&nbsp;&nbsp;&nbsp;0f0h<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;subwf&nbsp;&nbsp;&nbsp;count2,0<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;btfss&nbsp;&nbsp;&nbsp;status,c<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;goto&nbsp;&nbsp;&nbsp;&nbsp;del30<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;clrf&nbsp;&nbsp;&nbsp;&nbsp;count2<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;movlw&nbsp;&nbsp;&nbsp;01h<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;movwf&nbsp;&nbsp;&nbsp;gpio<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;goto&nbsp;&nbsp;&nbsp;&nbsp;check<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;goto&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />delay&nbsp;movlw&nbsp;&nbsp;&nbsp;0dh<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;movwf&nbsp;&nbsp;&nbsp;data1<br />lp0&nbsp;&nbsp;&nbsp;movlw&nbsp;&nbsp;&nbsp;0ffh<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;movwf&nbsp;&nbsp;&nbsp;data2<br />lp1&nbsp;&nbsp;&nbsp;decfsz&nbsp;&nbsp;data2,1<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;goto&nbsp;&nbsp;&nbsp;&nbsp;lp1<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;decfsz&nbsp;&nbsp;data1,1<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;goto&nbsp;&nbsp;&nbsp;&nbsp;lp0<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><br />&nbsp;<br />&nbsp;<br />&nbsp;<br />
LXRLXR 发表于 2007-10-24 10:38 | 显示全部楼层

不习惯小写,再加点注释吧

  
 楼主| chen3bing 发表于 2007-10-24 17:43 | 显示全部楼层

谢谢

问题解决了,是硬件的毛病。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

439

主题

2540

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部