bigluo
級(jí)別: 家園?
![]() |
最近準(zhǔn)備用MT500連接松下的PLC,出于成本考慮,PLC沒(méi)有時(shí)鐘模塊,由觸摸屏在上電時(shí)將時(shí)鐘寫(xiě)入到PLC的寄存器。 觸摸屏的時(shí)鐘格式是BCD碼,而松下的時(shí)鐘貯存格式是二進(jìn)制,而且是一個(gè)字里面貯存年/月兩個(gè)內(nèi)容,這樣就要使用二進(jìn)制轉(zhuǎn)換。 我的宏指令是這樣的: Macro_Command main() short iYear, iMonth, iDay, iHour, iMinute, iSecond short iTemp //取得年月日 GetData(iYear, RW_Bcdplc, 60005, 1) GetData(iMonth, RW_Bcdplc, 60004, 1) GetData(iDay, RW_Bcdplc, 60003, 1) GetData(iHour ,RW_Bcdplc ,60002,1) GetData(iMinute ,RW_Bcdplc ,60001,1) GetData(iSecond ,RW_Bcdplc ,60000,1) iTemp = 0xFF And iYear SetData(iTemp ,RW_Binplc ,0,1) End Macro_Command 在iTemp = 0xF and iYear這一行,本來(lái)是想得到數(shù)字8的,沒(méi)想到結(jié)果竟是1! 想來(lái)想去,這是不是因?yàn)楹杲忉屍靼袮ND作為了布爾運(yùn)算符了? 這該怎樣解決呢? 謝謝了! |
---|---|
|
bigluo
級(jí)別: 家園?
![]() |
找到原因了。 原來(lái)二進(jìn)制運(yùn)算的“與”是用"&"作為標(biāo)識(shí)符的。 |
---|---|
|
天外飛仙
級(jí)別: 工控俠客
![]() |
不要這么復(fù)雜,觸摸屏有個(gè)傳輸功能的,只要把這個(gè)時(shí)間地址傳送到寄存器就行了。不要用到宏指令功能的。 |
|
---|---|---|
|