表6-18 讀實時時鐘和設定實時時鐘指令格式
LAD | STL | 功能說明 |
![]() |
TODR T | 讀取實時時鐘指令:系統讀取實時時鐘當前時間和日期,并將其載入以地址T起始的8個字節的緩沖區 |
![]() |
TODW T | 設定實時時鐘指令:系統將包含當前時間和日期以地址T起始的8個字節的緩沖區裝入PLC的時鐘 |
![]() |
(1)8個字節緩沖區(T)的格式如表6-19所示。所有日期和時間值必須采用BCD碼表示,例如:對于年僅使用年份最低的兩個數字,16#05代表2005年;對于星期,1代表星期日,2代表星期一,7代表星期六,0表示禁用星期。
表6-19 8字節緩沖區的格式
地址 | T | T+1 | T+2 | T+3 | T+4 | T+5 | T+6 | T+7 |
含義 | 年 | 月 | 日 | 小時 | 分鐘 | 秒 | 0 | 星期 |
范圍 | 00~99 | 01~12 | 01~31 | 00~23 | 00~59 | 00~59 | 0~7 |
(3)不能同時在主程序和中斷程序中使用TODR/TODW指令,否則,將產生非致命錯誤(0007),SM4.3置1。
(4)對于沒有使用過時鐘指令或長時間斷電或內存丟失后的PLC,在使用時鐘指令前,要通過STEP-7軟件“PLC”菜單對PLC時鐘進行設定,然后才能開始使用時鐘指令。時鐘可以設定成與PC系統時間一致,也可用TODW指令自由設定。
【例6-9】編寫程序,要求讀時鐘并以BCD碼顯示秒鐘。程序如圖6-19 所示。
說明:時鐘緩沖區從VB0開始,VB5中存放著秒鐘,第一次用SEG指令將字節VB100的秒鐘低四位轉換成七段顯示碼由QB0輸出,接著用右移位指令將VB100右移四位,將其高四位變為低四位,再次使用SEG指令,將秒鐘的高四位轉換成七段顯示碼由QB1輸出。
【例6-10】編寫程序,要求控制燈的定時接通和斷開。要求18:00時開燈,06:00時關燈。時鐘緩沖區從VB0開始。程序如圖6-20所示。
