基于單片機(jī)的多計(jì)算機(jī)外設(shè)共享控制器的設(shè)計(jì)與實(shí)現(xiàn)
啟動(dòng)過(guò)程的程序流程圖見(jiàn)圖4。本文引用地址:http://2s4d.com/article/172429.htm
本文用Keil C開(kāi)發(fā),它提供了豐富的數(shù)據(jù)類型,極大地增強(qiáng)了程序處理能力和靈活性,它能夠自動(dòng)實(shí)現(xiàn)中斷服務(wù)程序的現(xiàn)場(chǎng)保護(hù)和恢復(fù),目標(biāo)程序效率高、可移植性好,是一種高級(jí)語(yǔ)言,可讀性強(qiáng),維護(hù)使用方便靈活。軟件由主程序和中斷服務(wù)子程序組成。主程序完成系統(tǒng)的初始化和計(jì)算機(jī)命令的響應(yīng)、鍵盤(pán)鼠標(biāo)數(shù)據(jù)的發(fā)送。中斷程序主要包括鍵盤(pán)熱鍵切換、外部按鍵切換。軟件功能模塊結(jié)構(gòu)清晰可讀。程序流程圖見(jiàn)圖4和圖5。
系統(tǒng)上電,外設(shè)共享控制器上電并開(kāi)始對(duì)AT89S8252初始化。包括對(duì)變量、串口、定時(shí)器、中斷控制、看門(mén)狗進(jìn)行初始化操作。在這個(gè)過(guò)程中還需要對(duì)外部的計(jì)算機(jī)的PS/2外設(shè)進(jìn)行初始化應(yīng)答。并且自動(dòng)掃描啟動(dòng)計(jì)算機(jī),PS/2、VGA外設(shè)連接啟動(dòng)計(jì)算機(jī),并顯示啟動(dòng)計(jì)算機(jī)的畫(huà)面。
當(dāng)完成BIOS檢測(cè)和操作系統(tǒng)檢測(cè)應(yīng)答后,單片機(jī)進(jìn)入主程序,執(zhí)行正常鍵盤(pán)鼠標(biāo)的操作功能。讀取P1.1上鍵盤(pán)給主機(jī)的數(shù)據(jù)看是否有“切換前/后臺(tái)計(jì)算機(jī)”的熱鍵按下,如果是,將切換;否則,連接當(dāng)前計(jì)算機(jī)。
3 設(shè)計(jì)小結(jié)
本論文完成了主機(jī)1和主機(jī)2的鍵盤(pán)、鼠標(biāo)、顯示器幾種外設(shè)的共享,解決了PS/2口、VGA接口共享時(shí)遇到的問(wèn)題。實(shí)物經(jīng)過(guò)篩選試驗(yàn)、環(huán)境適應(yīng)性試驗(yàn)、電磁兼容試驗(yàn),性能良好,安全可靠。
評(píng)論