基于海為PLC的8路競(jìng)賽搶答器系統(tǒng)
一、海為PLC——實(shí)現(xiàn)8路競(jìng)賽搶答器:
完全用程序判斷各個(gè)選手按鍵搶答的先后,從實(shí)現(xiàn)上沒有什么問(wèn)題,但由于PLC是循環(huán)掃描運(yùn)行,它會(huì)一次性讀入X0-X7的所有輸入狀態(tài),然后再執(zhí)行程序,最后將結(jié)果輸出。如果在一個(gè)掃描周期有一個(gè)以上選手同時(shí)按鍵搶答即有多個(gè)X輸入為ON,這時(shí)必然是依靠人為的程序去評(píng)判先后順序,這會(huì)產(chǎn)生本質(zhì)上的不公平。如何避免這種情況的發(fā)生,最好的方法是使用“開關(guān)量輸入上升沿捕捉”功能,以硬件中斷產(chǎn)生的先后來(lái)判斷選手按鍵的先后。
完全用程序判斷各個(gè)選手按鍵搶答的先后,從實(shí)現(xiàn)上沒有什么問(wèn)題,但由于PLC是循環(huán)掃描運(yùn)行,它會(huì)一次性讀入X0-X7的所有輸入狀態(tài),然后再執(zhí)行程序,最后將結(jié)果輸出。如果在一個(gè)掃描周期有一個(gè)以上選手同時(shí)按鍵搶答即有多個(gè)X輸入為ON,這時(shí)必然是依靠人為的程序去評(píng)判先后順序,這會(huì)產(chǎn)生本質(zhì)上的不公平。如何避免這種情況的發(fā)生,最好的方法是使用“開關(guān)量輸入上升沿捕捉”功能,以硬件中斷產(chǎn)生的先后來(lái)判斷選手按鍵的先后。
假如對(duì)X輸入和Y輸出定義如下:
X0:選手1搶答按鍵
X1:選手2搶答按鍵
X2:選手3搶答按鍵
X3:選手4搶答按鍵
X4:選手5搶答按鍵
X5:選手6搶答按鍵
X6:選手7搶答按鍵
X7:選手8搶答按鍵
Y0:選手1搶答成功
Y1:選手2搶答成功
Y2:選手3搶答成功
Y3:選手4搶答成功
Y4:選手5搶答成功
Y5:選手6搶答成功
Y6:選手7搶答成功
Y7:選手8搶答成功
在“PLC硬件配置”窗口選擇X0-X7的“上升沿捕捉”,打開X0-X7的中斷捕捉功能。如下圖:
二、主程序——實(shí)現(xiàn)中斷綁定和自動(dòng)復(fù)位:
相關(guān)推薦
技術(shù)專區(qū)
- FPGA
- DSP
- MCU
- 示波器
- 步進(jìn)電機(jī)
- Zigbee
- LabVIEW
- Arduino
- RFID
- NFC
- STM32
- Protel
- GPS
- MSP430
- Multisim
- 濾波器
- CAN總線
- 開關(guān)電源
- 單片機(jī)
- PCB
- USB
- ARM
- CPLD
- 連接器
- MEMS
- CMOS
- MIPS
- EMC
- EDA
- ROM
- 陀螺儀
- VHDL
- 比較器
- Verilog
- 穩(wěn)壓電源
- RAM
- AVR
- 傳感器
- 可控硅
- IGBT
- 嵌入式開發(fā)
- 逆變器
- Quartus
- RS-232
- Cyclone
- 電位器
- 電機(jī)控制
- 藍(lán)牙
- PLC
- PWM
- 汽車電子
- 轉(zhuǎn)換器
- 電源管理
- 信號(hào)放大器
評(píng)論