bigluo
級別: 家園常客
|
如附件所示。程序想實現一個看門狗,當3秒鐘的計數器時間到了后,即調用子程序P0,在子程序P0里面將C0復位。 現在的問題是,附件中的程序在監視時,發現子程序是隨時有效的,即C0永遠處于復位狀態,這是為什么?把子程序的內容放到主程序里面的話,一切正常。 請指教。。。 |
---|---|
|
wsir123
日子在忙碌中才會顯得充實,我喜歡這樣的生活。
級別: 論壇版主
|
圖片:
樓主的這個情況就像你叫一個人去10公里外游泳,結果,那人在河里玩的不回來了,你卻還讓他再去游泳,能行么?一定要讓他回來,然后,再讓他去。。。 不知這個比喻合適不? |
|
---|---|---|
本帖最近評分記錄:
|
bigluo
級別: 家園常客
|
謝謝了!照你的方法已經改好了。 不過,我還是不明白為什么不能在子程序里面復位? |
---|---|
|
wsir123
日子在忙碌中才會顯得充實,我喜歡這樣的生活。
級別: 論壇版主
|
測試里那個m0其實就是一個在子程序里溜達了一圈的一個標志,這個標志要在主程序里call前對c0 操作一下。 你可以把主程序里那個m0復位的和call對調一下,那個c0就一直是處于復位狀態。 所以,子程序結尾要m0標志一下(溜達了一圈的一個標志),主程序call前要根據這個標志復位一下就可以了。 |
|
---|---|---|
|
bigluo
級別: 家園常客
|
謝謝指點。 在我的程序里面,在C0被置位的掃描周期,應該就會進入子程序,然后,在子程序里對C0復位,這樣,下一個掃描周期時,C0就被復位了,應該就不能再進入子程序了,這樣不對嗎? |
---|---|
|