設計要求:
設計一個計數器程序,要求計數到10萬次時,Q0.0等于1。
先來看下I/O分配的情況:
根據要求編寫符號表,然后分析下題目要求:
要求對于10萬次進行計數,而單個計數器的計數上限是32767,低于10萬。
先來復習一下計數器的基本信息,如計數器的數量,是從C0-C255共計256個,高速計數器是從HC0-HC5共計6個,累加器是從AC0-AC3共計4個。
問題:既然單個計數器無法完成結果的計數,那么需要幾個計數器,計數器之間的關系是累加還是相乘?
有些人可能覺得應該用加法,有的則認為應該用乘法。先來用一個實例推演下,比如某啤酒公司生產罐裝啤酒,其中20聽為1箱,如果生產100聽啤酒,應該怎么統計?
20聽為1箱,5箱正好100聽,那就是統計下滿足5個整箱時,結構就實現了(就可以點亮QO.O了)。
下面開始設計程序:
逐行解讀一下:
第一步:I0.0啟動計數器,開始計數,并在C0累加到設定值時,C0常開觸點導通,C0被復位;
第二步:C0常開觸點導通,則C1計數器計數1次,累計達到設定值時,C1常開觸點導通;I0.1可以實現計數器復位;
第三步:C1常開觸點導通,Q0.0被點亮,技術結果完成。
那么,上電之后,實測下看看效果。按下20次,C1計數1次,直到按到100次后,果然Q0.0點亮了。
但是,隨著按下復位按鈕后,問題就出現了,這個大家可以思考一下。