《數(shù)字邏輯》課程網(wǎng)絡(luò)虛擬實(shí)驗(yàn)系統(tǒng)設(shè)計(jì)綜述報(bào)告_第1頁
《數(shù)字邏輯》課程網(wǎng)絡(luò)虛擬實(shí)驗(yàn)系統(tǒng)設(shè)計(jì)綜述報(bào)告_第2頁
《數(shù)字邏輯》課程網(wǎng)絡(luò)虛擬實(shí)驗(yàn)系統(tǒng)設(shè)計(jì)綜述報(bào)告_第3頁
《數(shù)字邏輯》課程網(wǎng)絡(luò)虛擬實(shí)驗(yàn)系統(tǒng)設(shè)計(jì)綜述報(bào)告_第4頁
《數(shù)字邏輯》課程網(wǎng)絡(luò)虛擬實(shí)驗(yàn)系統(tǒng)設(shè)計(jì)綜述報(bào)告_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

數(shù)字邏輯課程網(wǎng)絡(luò)虛擬實(shí)驗(yàn)系統(tǒng)設(shè)計(jì)一設(shè)計(jì)概述11課題背景數(shù)字邏輯課是計(jì)算機(jī)相關(guān)專業(yè)的必修科目,數(shù)字邏輯實(shí)驗(yàn)是該課程的最重要的一個(gè)環(huán)節(jié)。數(shù)字邏輯實(shí)驗(yàn)時(shí)實(shí)驗(yàn)使用的是價(jià)格昂貴且容易損壞的傳統(tǒng)的由硬件組成的實(shí)驗(yàn)平臺(tái)。由于價(jià)格的關(guān)系,大多數(shù)學(xué)校沒有讓學(xué)生能夠獨(dú)立使用一臺(tái)機(jī)器而是以小組的方式多人使用一臺(tái)儀器實(shí)驗(yàn)。這樣導(dǎo)致實(shí)驗(yàn)所達(dá)到的效果有所降低。同時(shí)課堂時(shí)間有限,因此喜歡數(shù)字邏輯的同學(xué)們?cè)谄渌麜r(shí)間無法再次體會(huì)數(shù)字邏輯實(shí)驗(yàn)的樂趣。通過軟件我們能夠模擬實(shí)際情況中的一些簡(jiǎn)單的數(shù)字邏輯實(shí)驗(yàn),同樣能達(dá)到現(xiàn)實(shí)實(shí)驗(yàn)平臺(tái)的效果。我們通過C語言的編程能夠編寫一個(gè)模擬數(shù)字邏輯實(shí)驗(yàn)平臺(tái)的虛擬數(shù)字邏輯實(shí)驗(yàn)平臺(tái)。然后我們可以通過網(wǎng)站進(jìn)行發(fā)布,只要有電腦并且能聯(lián)網(wǎng)就可以隨時(shí)隨地的登錄遠(yuǎn)程服務(wù)器通過我們的系統(tǒng)進(jìn)行數(shù)字邏輯實(shí)驗(yàn)。這樣能夠很好的解決上面的問題。在本設(shè)計(jì)中將開發(fā)一種工具軟件通過網(wǎng)絡(luò)進(jìn)行發(fā)布,該軟件能夠模擬現(xiàn)實(shí)中數(shù)字邏輯實(shí)驗(yàn)平臺(tái)。該軟件的開發(fā)對(duì)學(xué)習(xí)數(shù)字邏輯的人來說是福音,同時(shí)也使得教師能隨時(shí)進(jìn)行課堂演示成為可能,對(duì)數(shù)字邏輯這門學(xué)科具有重要意義。同時(shí)對(duì)于愛好數(shù)字邏輯的人來說這是一大福利,只需登錄遠(yuǎn)程服務(wù)器就可以通過自己的電腦在任何地方通過我們的系統(tǒng)進(jìn)行數(shù)字邏輯的相關(guān)簡(jiǎn)單實(shí)驗(yàn)。同該系統(tǒng)開發(fā)和維護(hù)價(jià)格低昂,和實(shí)際的實(shí)驗(yàn)平臺(tái)相比較有很大的優(yōu)勢(shì)。同時(shí)由于開發(fā)的語言是C語言,現(xiàn)在的大學(xué)與計(jì)算機(jī)相關(guān)科目都把其作為專業(yè)課,因此在開發(fā)成功后維護(hù)人員的尋找也比較容易。因此該軟件的開發(fā)成本和維護(hù)成本都比較低。因此為該平臺(tái)的推廣提供了很好的保證。該系統(tǒng)給廣大學(xué)習(xí)“數(shù)字邏輯”課的學(xué)生提供了一種互動(dòng)的虛擬“數(shù)字邏輯”的實(shí)驗(yàn)環(huán)境。同學(xué)們可以在系統(tǒng)中找到各種仿真實(shí)驗(yàn)儀器和設(shè)備。同學(xué)們只需輕點(diǎn)電腦鼠標(biāo)操作軟件的各種功能(如布局、布線等),就可以自主設(shè)計(jì)實(shí)驗(yàn)程序和裝配虛擬實(shí)驗(yàn)儀器,完成和現(xiàn)實(shí)實(shí)驗(yàn)室中一樣的各種實(shí)驗(yàn)過程。虛擬實(shí)驗(yàn)技術(shù)在遠(yuǎn)程教育中的運(yùn)用。近幾年遠(yuǎn)程教育在摸索和探討中取得了很大的進(jìn)步,但由于遠(yuǎn)程教育的特點(diǎn)和實(shí)驗(yàn)條件的限制,遠(yuǎn)程教育中的實(shí)驗(yàn)教學(xué)成為制約遠(yuǎn)程教育發(fā)展的瓶頸,開展網(wǎng)上虛擬實(shí)驗(yàn)成為遠(yuǎn)程教育的必然,如何在網(wǎng)絡(luò)環(huán)境下建立為遠(yuǎn)程學(xué)習(xí)者提供交互的虛擬實(shí)驗(yàn)教學(xué)環(huán)境成為遠(yuǎn)程教育關(guān)注的熱點(diǎn)?;谔摂M現(xiàn)實(shí)技術(shù)的遠(yuǎn)程教育是現(xiàn)代教育發(fā)展的主要方向之一,隨著虛擬現(xiàn)實(shí)技術(shù)的不斷發(fā)展和完善、網(wǎng)絡(luò)技術(shù)的不斷進(jìn)步以及硬件設(shè)備價(jià)格的不斷降低,我們相信,虛擬實(shí)驗(yàn)作為一個(gè)新型的遠(yuǎn)程教育媒體,以其自身強(qiáng)大的教學(xué)優(yōu)勢(shì)和潛力,將會(huì)逐漸受到遠(yuǎn)程教育工作者的重視和青睞,最終在遠(yuǎn)程教育領(lǐng)域廣泛應(yīng)用并發(fā)揮其重要作用。12開發(fā)工具及環(huán)境簡(jiǎn)介1開發(fā)語言本設(shè)計(jì)采用的程序設(shè)計(jì)語言為C語言。C語言是一種面向過程的計(jì)算機(jī)程序設(shè)計(jì)語言,它是一種比較容易學(xué)習(xí)的編程語言。C語言的應(yīng)用十分廣泛,大量的軟件都是用它進(jìn)行開發(fā)的。同時(shí)該語言的代碼簡(jiǎn)單易懂,而且功能強(qiáng)大,同時(shí)幾乎是大學(xué)計(jì)算機(jī)相關(guān)科目必修的科目。因此在軟件開發(fā)后,維護(hù)人員比較容易尋找。C語言是一種計(jì)算機(jī)程序設(shè)計(jì)語言。它既具有高級(jí)語言的特點(diǎn),又具有匯編語言的特點(diǎn)。它可以作為系統(tǒng)設(shè)計(jì)語言,編寫工作系統(tǒng)應(yīng)用程序,也可以作為應(yīng)用程序設(shè)計(jì)語言,編寫不依賴計(jì)算機(jī)硬件的應(yīng)用程序。2開發(fā)環(huán)境開發(fā)環(huán)境選用的是MICROSOFTVISUALC60(微軟公司的開發(fā)工具),具有集成開發(fā)環(huán)境的功能,可提供編輯C語言,C以及C/CLI等編程語言。VISUALC集成了MFC60。VISUALC是一個(gè)功能強(qiáng)大的可視化軟件開發(fā)工具。自1993年MICROSOFT公司推出VISUALC10后,隨著其新版本的不斷問世,VISUALC已成為專業(yè)程序員進(jìn)行軟件開發(fā)的首選工具。雖然微軟公司推出了VISUALCNETVISUALC70,但它的應(yīng)用的很大的局限性,只適用于WINDOWS2000,WINDOWSXP和WINDOWSNT40。所以實(shí)際中,更多的是以VISUALC60為平臺(tái)。VISUALC60不僅是一個(gè)C編譯器,而且是一個(gè)基于WINDOWS操作系統(tǒng)的可視化集成開發(fā)環(huán)境(INTEGRATEDDEVELOPMENTENVIRONMENT,IDE)。VISUALC60由許多組件組成,包括編輯器、調(diào)試器以及程序向?qū)PPWIZARD、類向?qū)LASSWIZARD等開發(fā)工具。這些組件通過一個(gè)名為DEVELOPERSTUDIO的組件集成為和諧的開發(fā)環(huán)境。3開發(fā)技術(shù)B/S(BROWSER/SERVER,瀏覽器/服務(wù)器)模式又稱B/S結(jié)構(gòu)。它是隨著INTERNET技術(shù)的興起,對(duì)C/S模式應(yīng)用的擴(kuò)展。在這種結(jié)構(gòu)下,用戶工作界面是通過IE瀏覽器來實(shí)現(xiàn)的。B/S模式最大的好處是運(yùn)行維護(hù)比較簡(jiǎn)便,能實(shí)現(xiàn)不同的人員,從不同的地點(diǎn),以不同的接入方式(比如LAN,WAN,INTERNET/INTRANET等)訪問和操作共同的數(shù)據(jù)。MFC(MICROSOFTFOUNDATIONCLASSES)實(shí)際上是微軟提供的用于在C環(huán)境下編寫應(yīng)用程序的一個(gè)框架和引擎。MFC同VCL類似,是一種APPLICATIONFRAMEWORK,隨微軟開發(fā)工具發(fā)布。MFC是WINAPI與C的結(jié)合。MFC應(yīng)用程序的總體結(jié)構(gòu)通常由開發(fā)人員從MFC類派生的幾個(gè)類和一個(gè)CWINAPP類(應(yīng)用程序?qū)ο螅┙M成。MFC提供了MFCAPPWIZARD自動(dòng)生成框架。WINDOWS應(yīng)用程序中,MFC的主包含文件為“AFXWINH”。MFC實(shí)際上是微軟提供的,用于在C環(huán)境下編寫應(yīng)用程序的一個(gè)框架和引擎。VC是WINDOWS下開發(fā)人員使用的專業(yè)CSDKSDK,STANDARDSOFTWAREDEVELOPKIT,專業(yè)軟件開發(fā)平臺(tái),MFC就是掛在它之上的一個(gè)輔助軟件開發(fā)包。MFC作為與VC血肉相連的部分注意C和VC的區(qū)別C是一種程序設(shè)計(jì)語言,是一種大家都承認(rèn)的軟件編制的通用規(guī)范;而VC只是一個(gè)編譯器,或者說是一種編譯器源程序編輯器的IDE(IDE的英文全稱為“INTEGRATEDDEVELOPMENTENVIRONMENT”,即“集成開發(fā)環(huán)境”),WSPLATFORM,這跟PASCAL和DELPHI的關(guān)系一個(gè)道理。PASCAL是DELPHI的語言基礎(chǔ),DELPHI使用PASCAL規(guī)范來進(jìn)行WIN下應(yīng)用程序的開發(fā)和編譯,卻不同于BASIC語言和VB的關(guān)系。BASIC語言在VB開發(fā)出來被應(yīng)用的年代已經(jīng)成了BASIC語言的新規(guī)范,VB新加的BASIC語言要素,如面向?qū)ο蟪绦蛟O(shè)計(jì)的要素,是一種性質(zhì)上的飛躍,使VB既是一個(gè)IDE,又成長成一個(gè)新的程序設(shè)計(jì)語言。MFC同VC集成的VCL一樣是一個(gè)非外掛式的軟件包類庫,只不過MFC類是微軟為VC專配的。WINSOCK是一種標(biāo)準(zhǔn)API(APPLICATIONPROGRAMMINGINTERFACE,應(yīng)用程序編程接口),主要用于網(wǎng)絡(luò)中的數(shù)據(jù)通信,它允許兩個(gè)或者多個(gè)應(yīng)用程序(或進(jìn)程)在同一臺(tái)機(jī)器上或通過網(wǎng)絡(luò)相互通信。WINSOCK是一種網(wǎng)絡(luò)編程接口,而不是協(xié)議。使用WINSOCK編程接口,應(yīng)用程序可通過普通網(wǎng)絡(luò)協(xié)議如TCP/IP(TRANSMISSIONCONTROLPROTOCOL/INTERNETPROTOCOL,傳輸控制協(xié)議/網(wǎng)際協(xié)議)或IPX(INTERNETPACKETEXCHANGE,INTERNET數(shù)據(jù)包交換)協(xié)議建立通信。WINSOCK通信的基礎(chǔ)是套接口SOCKET,一個(gè)套接口是通訊的一端。在這一端上你可以找到與其對(duì)應(yīng)的一個(gè)名字。一個(gè)正在被使用的套接口都有它的類型和與其相關(guān)的進(jìn)程。套接口存在于通訊域中。通訊域是為了處理一般的線程通過套接口通訊而引進(jìn)的一種抽象概念。套接口通常和同一個(gè)域中的套接口交換數(shù)據(jù)(數(shù)據(jù)交換也可能穿越域的界限,但這時(shí)一定要執(zhí)行某種解釋程序)。WINDOWSSOCKETS規(guī)范支持單一的通訊域,即INTERNET域。各種進(jìn)程使用這個(gè)域互相之間用INTERNET協(xié)議族來進(jìn)行通訊(WINDOWSSOCKETS11以上的版本支持其他的域,例如WINDOWSSOCKETS2。套接口可以根據(jù)通訊性質(zhì)分類;這種性質(zhì)對(duì)于用戶是可見的。應(yīng)用程序一般僅在同一類的套接口間通訊。不過只要底層的通訊協(xié)議允許,不同類型的套接口間也照樣可以通訊。用戶目前可以使用兩種套接口,即流套接口和數(shù)據(jù)報(bào)套接口。流套接口提供了雙向的,有序的,無重復(fù)并且無記錄邊界的數(shù)據(jù)流服務(wù)。數(shù)據(jù)報(bào)套接口支持雙向的數(shù)據(jù)流,但并不保證是可靠,有序,無重復(fù)的。也就是說,一個(gè)從數(shù)據(jù)報(bào)套接口接收信息的進(jìn)程有可能發(fā)現(xiàn)信息重復(fù)了,或者和發(fā)出時(shí)的順序不同。數(shù)據(jù)報(bào)套接口的一個(gè)重要特點(diǎn)是它保留了記錄邊界。對(duì)于這一特點(diǎn),數(shù)據(jù)報(bào)套接口采用了與現(xiàn)在許多包交換網(wǎng)絡(luò)(例如以太網(wǎng))非常類似的模型。2系統(tǒng)分析21需求分析我們開發(fā)數(shù)字邏輯課程網(wǎng)絡(luò)虛擬實(shí)驗(yàn)系統(tǒng)的初衷,便是讓更多的人了解簡(jiǎn)單的邏輯電路的工作原理,相較于其他同類軟件,我們希望開發(fā)一套有著友好的界面、操作簡(jiǎn)單、結(jié)果輸出直觀化等特點(diǎn)的系統(tǒng)。并使之適用于更廣泛的人群,進(jìn)行科學(xué)普及教育的探索與研究。在程序開發(fā)之前,設(shè)計(jì)人員要對(duì)系統(tǒng)進(jìn)行需求分析,要認(rèn)真了解數(shù)字邏輯課程網(wǎng)絡(luò)虛擬實(shí)驗(yàn)系統(tǒng)需要實(shí)現(xiàn)那些功能。然后設(shè)計(jì)的程序確定由那些模塊組成,這樣能方便開發(fā)人員更高效的對(duì)程序進(jìn)行編寫。在虛擬數(shù)字邏輯實(shí)驗(yàn)平臺(tái)中,模擬現(xiàn)實(shí)中數(shù)字邏輯實(shí)驗(yàn)平臺(tái)是主體,遠(yuǎn)程網(wǎng)絡(luò)服務(wù)器是其外部框架。虛擬實(shí)驗(yàn)平臺(tái)主要有以下幾大部分組成電平信號(hào)和脈沖信號(hào)的控制實(shí)現(xiàn)、七段顯示器的實(shí)現(xiàn)、發(fā)光二極管的實(shí)現(xiàn)、芯片的選擇功能實(shí)現(xiàn)、芯片的邏輯功能實(shí)現(xiàn)和布線的實(shí)現(xiàn)。遠(yuǎn)程網(wǎng)絡(luò)服務(wù)器的主要模塊用戶注冊(cè)、用戶登錄、用戶信息的修改和對(duì)虛擬邏輯實(shí)驗(yàn)平臺(tái)的發(fā)布。根據(jù)實(shí)際情況與整個(gè)程序的工作流程抽象描述如下包括用戶名,賬戶,密碼,家庭住址和電話等用戶信息的記錄的用戶信息的注冊(cè)的功能。用戶登錄和信息的修改,可以與遠(yuǎn)程服務(wù)器端的用戶信息進(jìn)行匹配,當(dāng)正確時(shí)可以在網(wǎng)上使用服務(wù)器發(fā)布的虛擬實(shí)驗(yàn)平臺(tái)。進(jìn)入實(shí)驗(yàn)平臺(tái)。通過對(duì)實(shí)驗(yàn)平臺(tái)的導(dǎo)線連接、芯片選擇和信號(hào)的輸入等操作獲得實(shí)驗(yàn)結(jié)果。程序工作流程圖虛擬實(shí)驗(yàn)平臺(tái)工作流程通過用戶界面進(jìn)入實(shí)驗(yàn)平臺(tái)界面。按實(shí)驗(yàn)要求選擇芯片。連接導(dǎo)線,當(dāng)確定選擇芯片和接線連接無誤后,進(jìn)行下一步。打開平臺(tái)開關(guān)。按實(shí)驗(yàn)要求點(diǎn)擊脈沖開關(guān)或電平開關(guān),進(jìn)行信號(hào)輸入。輸入信號(hào)通過芯片的邏輯處理函數(shù)進(jìn)行處理。處理后的結(jié)果通過七段顯示器或者發(fā)光二極管進(jìn)行顯示。虛擬實(shí)驗(yàn)平臺(tái)工作流程圖功能需求經(jīng)過以上分析,在現(xiàn)行程序工作流程圖,基本可以確定系統(tǒng)設(shè)計(jì)必須達(dá)到的目標(biāo)。以下是本程序必須具備的功能用戶賬戶信息的注冊(cè)與保存。用戶賬戶的登錄和信息的修改。遠(yuǎn)程網(wǎng)絡(luò)服務(wù)器授權(quán)用戶虛擬數(shù)字邏輯實(shí)驗(yàn)平臺(tái)的發(fā)布。用戶使用數(shù)字邏輯課程網(wǎng)絡(luò)虛擬實(shí)驗(yàn)系統(tǒng)實(shí)現(xiàn)模擬實(shí)際數(shù)字邏輯實(shí)驗(yàn)平臺(tái)的功能。運(yùn)行需求數(shù)字邏輯課程網(wǎng)絡(luò)虛擬實(shí)驗(yàn)系統(tǒng)軟件配置如下系統(tǒng)軟件WIN7數(shù)據(jù)庫管理軟件SQLSERVER2000及以上版本22可行性分析在系統(tǒng)調(diào)查的基礎(chǔ)上,針對(duì)本設(shè)計(jì)的開發(fā)具有可操作性,對(duì)其進(jìn)行從經(jīng)濟(jì)、技術(shù)、社會(huì)三方面進(jìn)行分析和研究??尚行匝芯康哪康木褪怯米钚〉拇鷥r(jià)在盡可能短的時(shí)間內(nèi)確定問題是否能夠解決。該程序的可行性分析包括以下幾個(gè)方面的內(nèi)容。1經(jīng)濟(jì)可行性數(shù)字邏輯課程網(wǎng)絡(luò)虛擬實(shí)驗(yàn)系統(tǒng)開發(fā)成本較小,僅需要一臺(tái)計(jì)算機(jī)來進(jìn)行開發(fā),軟件方面需要正版軟件VISUALC60和SQLSERVER2000作為開發(fā)工具,總計(jì)花費(fèi)在一萬元以內(nèi)。同時(shí)該軟件適用于多數(shù)與計(jì)算機(jī)相關(guān)的專業(yè)的數(shù)字邏輯方面的實(shí)驗(yàn)。使用人數(shù)多,有很大的商業(yè)價(jià)值,同時(shí)由于會(huì)C語言的人比較多后期的維護(hù)人員不難尋找,因此維護(hù)費(fèi)用不會(huì)太昂貴。同時(shí)對(duì)該平臺(tái)的管理也比較簡(jiǎn)單,不需要太多的人即可實(shí)現(xiàn)。傳統(tǒng)的實(shí)驗(yàn)室都是由硬件設(shè)備構(gòu)成的,雖然硬件設(shè)施的仿真運(yùn)行速度比較快,運(yùn)行結(jié)果與真實(shí)效果也比較接近,但是由于硬件設(shè)施價(jià)格昂貴,實(shí)驗(yàn)室所能提供的實(shí)驗(yàn)設(shè)備種類、數(shù)量都有限,并且性能和仿真要求也不可能隨著社會(huì)科技的發(fā)展而同方向前進(jìn),仿真結(jié)果總是落后最新的科學(xué)技術(shù),同時(shí),實(shí)驗(yàn)設(shè)備每年的維護(hù)費(fèi)用也很高。由此而發(fā)展出來了在計(jì)算機(jī)上做仿真實(shí)驗(yàn),仿真結(jié)果同樣可以達(dá)到實(shí)驗(yàn)的要求。而計(jì)算機(jī)仿真平臺(tái)軟件可以隨著社會(huì)的不斷要求而更新和發(fā)展,這樣既節(jié)約了資源也提高了教學(xué)質(zhì)量。2技術(shù)可行性本程序采用MICROSOFT公司的VISUALC60作為開發(fā)工具,操作簡(jiǎn)單,代碼易懂,因此維護(hù)比較簡(jiǎn)單。通過大學(xué)期間我對(duì)VISUALC60的學(xué)習(xí),在編程方面有一定的積累,對(duì)本次的軟件使用的是C語言進(jìn)行編寫。同時(shí)C語言的學(xué)習(xí)人數(shù)比較多,在軟件開發(fā)出來之后的維護(hù)人員的尋找比較簡(jiǎn)單。使用VC網(wǎng)絡(luò)地址類型UNSIGNEDSHORTSIN_PORT服務(wù)端口STRUCTIN_ADDRSIN_ADDR無符號(hào)長整型的IP地址CHARSIN_ZERO8填充字段常用的套接字的操作用GETSOCKOPT和SETSOCKOPT來獲取和設(shè)置SOCKET屬性。用BIND來綁定套接字到本地網(wǎng)卡地址INTBINDSOCKETS,已經(jīng)創(chuàng)建的套接字CONSTSTRUCTSOCKADDRFARNAMESOCKET地址結(jié)構(gòu)INTNAMELEN地址結(jié)構(gòu)的長度數(shù)字邏輯課程網(wǎng)絡(luò)虛擬實(shí)驗(yàn)系統(tǒng)組成遠(yuǎn)程服務(wù)器,主要模塊為用戶信息的注冊(cè)界面、修改界面和平臺(tái)發(fā)布。網(wǎng)絡(luò)虛擬實(shí)驗(yàn)平臺(tái),主要包括電平信號(hào)和脈沖信號(hào)的控制實(shí)現(xiàn)、七段顯示器的實(shí)現(xiàn)、發(fā)光二極管的實(shí)現(xiàn)、芯片的選擇功能實(shí)現(xiàn)、芯片的邏輯功能實(shí)現(xiàn)和布線的實(shí)現(xiàn)。芯片由與門、非門、或門、與非門和異或門等門電路組成,但是有些芯片我們可以通過簡(jiǎn)單的代碼實(shí)現(xiàn),不一定要實(shí)現(xiàn)其內(nèi)部復(fù)雜的門電路組成,我們要做的只是模擬其邏輯功能。電平和脈沖信號(hào)控制實(shí)現(xiàn)通過界面上對(duì)應(yīng)的電平開關(guān)和脈沖信號(hào)按鈕進(jìn)行信號(hào)控制。當(dāng)點(diǎn)擊屏幕上的電平開關(guān)圖片處可以控制對(duì)應(yīng)輸出控所對(duì)應(yīng)的電平狀態(tài)。當(dāng)開關(guān)顯示的圖片為向下方向的圖片時(shí)說明當(dāng)前對(duì)應(yīng)孔輸出低電平,當(dāng)點(diǎn)擊該開關(guān)后變?yōu)橄蛏戏较虻膱D片時(shí)的開關(guān)圖片后,對(duì)應(yīng)的孔輸出的為高電平。通過點(diǎn)擊脈沖開關(guān)可以為相應(yīng)的插孔提供脈沖信號(hào)。當(dāng)點(diǎn)擊脈沖信號(hào)圖片處會(huì)使得對(duì)應(yīng)的孔產(chǎn)生一個(gè)脈沖信號(hào)。布線的實(shí)現(xiàn)當(dāng)點(diǎn)擊軟件界面的孔時(shí)可以進(jìn)行接線操作,當(dāng)點(diǎn)擊點(diǎn)1后在點(diǎn)擊點(diǎn)2可以時(shí)1和2間顯示一條聯(lián)線,表示1與2間的接口有電源線連接,同時(shí)使得連接后的兩點(diǎn)間的孔對(duì)應(yīng)的參數(shù)相同,用于模擬電路的連通時(shí)兩接口間的電平相同。同時(shí)當(dāng)在軟件界面上選擇對(duì)應(yīng)接線時(shí)可以進(jìn)行該線的刪除操作。接線插孔和芯片插孔的實(shí)現(xiàn)接線插孔和芯片插孔都是通過對(duì)插孔圖在界面上按一定排列實(shí)現(xiàn)的,即按一定排列順序在界面上顯示接線插孔和芯片接口。同時(shí)每個(gè)插孔的位置坐標(biāo)保存在數(shù)組里面,方便連接時(shí)找到對(duì)應(yīng)的接口為其賦值。芯片插孔和電源線接口都是在運(yùn)行程序時(shí)就在界面上顯示的,可以在程序開始時(shí)就進(jìn)行處理。七段顯示器和發(fā)光二極管的實(shí)現(xiàn)同電平的開關(guān)類似,七段顯示器的數(shù)字變化和發(fā)光二極管的明與暗都是通過對(duì)圖片的顯示實(shí)現(xiàn)的。發(fā)光二極管,當(dāng)對(duì)應(yīng)接口處的值表示低電平時(shí)對(duì)應(yīng)位置顯示暗的燈圖片,當(dāng)對(duì)應(yīng)接口的值表示高電平時(shí)顯示燈亮的圖片。七段顯示器則復(fù)雜點(diǎn),7個(gè)接口的電平滿足對(duì)應(yīng)數(shù)字的電平時(shí)顯示該數(shù)字的圖片,當(dāng)電平變化時(shí)顯示的圖片相應(yīng)進(jìn)行改變。芯片邏輯實(shí)現(xiàn)或門1或門,又稱或電路。如果幾個(gè)條件中,只要有一個(gè)條件得到滿足,某事件就會(huì)發(fā)生,這種關(guān)系叫做“或”邏輯關(guān)系。具有“或”邏輯關(guān)系的電路叫做或門?;蜷T有多個(gè)輸入端,一個(gè)輸出端,多輸入或門可由多個(gè)2輸入或門構(gòu)成。只要輸入中有一個(gè)為高電平時(shí)(邏輯1),輸出就為高電平(邏輯1);只有當(dāng)所有的輸入全為低電平時(shí),輸出才為低電平。與門2與門(英語ANDGATE)又稱“與電路”。是執(zhí)行“與”運(yùn)算的基本邏輯門電路。有多個(gè)輸入端,一個(gè)輸出端。當(dāng)所有的輸入同時(shí)為高電平(邏輯1)時(shí),輸出才為高電平,否則輸出為低電平(邏輯0)。非門3非門(英文NOTGATE)又稱反相器,是邏輯電路的基本單元,非門有一個(gè)輸入和一個(gè)輸出端。邏輯符號(hào)中輸出端的圓圈代表反相的意思。當(dāng)其輸入端為高電平(邏輯1)時(shí)輸出端為低電平(邏輯0),當(dāng)其輸入端為低電平時(shí)輸出端為高電平。也就是說,輸入端和輸出端的電平狀態(tài)總是反相的。4與非門由與門與非門組合而成?;蚍情T由或門和非門組合而成。其中,非門和或非門在數(shù)字電路中較為常見。數(shù)字邏輯課程網(wǎng)絡(luò)虛擬實(shí)驗(yàn)系統(tǒng)中的各種芯片基本是由以上幾種門電路構(gòu)成,在編碼時(shí)我們需要了解各種實(shí)驗(yàn)需要芯片的結(jié)構(gòu)圖,方便我們進(jìn)行芯片邏輯功能的實(shí)現(xiàn)。但是有的芯片功能我們可以通過簡(jiǎn)單的代碼實(shí)現(xiàn)我們不必嚴(yán)格的模擬出內(nèi)部的門電路,我們的目的只是模擬出其邏輯功能。數(shù)字邏輯課程網(wǎng)絡(luò)虛擬實(shí)驗(yàn)系統(tǒng)的層次概述總體上分為用戶管理和平臺(tái)管理的遠(yuǎn)程網(wǎng)絡(luò)服務(wù)器和虛擬數(shù)字邏輯實(shí)驗(yàn)平臺(tái)兩部分。遠(yuǎn)程網(wǎng)絡(luò)服務(wù)器由以下幾部分組成1、用戶注冊(cè)界面用于填寫用戶姓名、住址、賬戶、密碼等信息并提交到數(shù)據(jù)庫存儲(chǔ)。2、用戶登錄界面用于用戶輸入賬戶密碼,并和數(shù)據(jù)庫進(jìn)行匹配。3、用戶修改界面用于更改用戶的注冊(cè)資料。4、用戶登錄后平臺(tái)使用授權(quán)當(dāng)用戶賬戶和密碼與數(shù)據(jù)庫相同時(shí),用戶進(jìn)入用戶界面。5、進(jìn)入實(shí)驗(yàn)跳轉(zhuǎn)到服務(wù)器發(fā)布的虛擬數(shù)字邏輯實(shí)驗(yàn)平臺(tái)界面。數(shù)字邏輯實(shí)驗(yàn)平臺(tái)由以下幾部分組成1、電平信號(hào)和脈沖信號(hào)的控制主要功能為產(chǎn)生脈沖信號(hào)和高低電平。在實(shí)驗(yàn)軟件中可用不同的值代替以上各種狀態(tài)。2、布線功能用于實(shí)現(xiàn)各芯片、元件間的引腳賦值和在平臺(tái)界面上顯示各元件間如何連接的。3、芯片的選擇功能用于按照用戶的選擇調(diào)用對(duì)應(yīng)的芯片函數(shù)。按照實(shí)驗(yàn)平臺(tái)的需求編寫相應(yīng)芯片對(duì)應(yīng)的實(shí)現(xiàn)芯片邏輯功能的函數(shù)。4、實(shí)驗(yàn)結(jié)果的顯示主要是通過七段顯示器和發(fā)光二極管的狀態(tài)來顯示電平信號(hào)通過芯片函數(shù)的處理后的變化。24與實(shí)際平臺(tái)的比較傳統(tǒng)的實(shí)際數(shù)字邏輯實(shí)驗(yàn)平臺(tái),以簡(jiǎn)單的實(shí)驗(yàn)板為載體,以簡(jiǎn)單的門電路、電子元件、導(dǎo)線、開關(guān)、LED為主,搭建實(shí)驗(yàn)電路;通過開關(guān)的不同組合,人為的給電路提供輸入信號(hào),觀察LED亮、滅的狀態(tài),判斷電路設(shè)計(jì)是否正確。由于電子元件和門電路等實(shí)驗(yàn)材料和數(shù)量有限,且容易損壞導(dǎo)致使用傳統(tǒng)的實(shí)驗(yàn)平臺(tái)實(shí)驗(yàn)的代價(jià)比較高,而且由于操作不當(dāng)往往造成實(shí)驗(yàn)平臺(tái)短路、嚴(yán)重的甚至可能燒壞實(shí)驗(yàn)平臺(tái)。因此在成本方面和安全方面都不容樂觀。數(shù)字邏輯課程網(wǎng)絡(luò)虛擬實(shí)驗(yàn)系統(tǒng)很好的解決以上問題、由于其只是一個(gè)軟件,不會(huì)出現(xiàn)操作部當(dāng)而損壞的問題。同時(shí)理論上來說,導(dǎo)線、芯片等元器件基本等于無限提供,不存在損壞問題。因此大大的節(jié)省了實(shí)驗(yàn)成本。同時(shí)只要有電腦和網(wǎng)絡(luò),隨時(shí)隨地都能進(jìn)行數(shù)字邏輯方面的實(shí)驗(yàn),使得教師在課堂上的隨堂演示成為可能。同時(shí)也為對(duì)數(shù)字邏輯有濃厚興趣的同學(xué)提供了方便,只要通過軟件的下載和賬戶的注冊(cè),家里面也能成為虛擬數(shù)字邏輯實(shí)驗(yàn)平臺(tái)的實(shí)驗(yàn)室。因此如此的方便、價(jià)格的低廉使得除了學(xué)生外的電子愛好者也能體會(huì)學(xué)校里面做數(shù)字邏輯實(shí)驗(yàn)的樂趣。3總體設(shè)計(jì)31開發(fā)設(shè)計(jì)思想程序開發(fā)設(shè)計(jì)思想有以下幾點(diǎn)1盡量采用現(xiàn)有的軟硬件環(huán)境及先進(jìn)的開發(fā)技術(shù),從而達(dá)到充分利用現(xiàn)有資源,提高程序開發(fā)水平和應(yīng)用效果的目的。2程序應(yīng)實(shí)現(xiàn)實(shí)際中數(shù)字邏輯實(shí)驗(yàn)平臺(tái)的一些簡(jiǎn)單功能。3系統(tǒng)采用模塊化程序設(shè)計(jì)方法,既便于程序功能的各種組合和修改,又便于未參與開發(fā)的技術(shù)人員對(duì)其功能的補(bǔ)充。4開發(fā)的語言要選用簡(jiǎn)單易懂的,而且使用人數(shù)比較廣的,這樣方便使得開發(fā)出來的軟件的后期維護(hù)代價(jià)更低,C語言就是其中的一個(gè)很好的選擇。32系統(tǒng)功能設(shè)計(jì)系統(tǒng)設(shè)計(jì)是根據(jù)需求分析的結(jié)果,設(shè)計(jì)系統(tǒng)的模塊和結(jié)果之間的內(nèi)在聯(lián)系。系統(tǒng)功能模塊圖系統(tǒng)的功能模塊圖33各模塊功能設(shè)計(jì)遠(yuǎn)程網(wǎng)絡(luò)服務(wù)器功能主要是用戶注冊(cè)、登錄、信息修改和虛擬數(shù)字邏輯實(shí)驗(yàn)平臺(tái)的發(fā)布。數(shù)字邏輯課程網(wǎng)絡(luò)虛擬實(shí)驗(yàn)系統(tǒng)的主要功能有提供類似實(shí)際中數(shù)字邏輯實(shí)驗(yàn)平臺(tái)的各種虛擬插槽、接線、芯片、七段顯示器、發(fā)光二極管、高低電平產(chǎn)生開關(guān)和脈沖發(fā)生器。331遠(yuǎn)程服務(wù)器本模塊的是用來進(jìn)行用戶信息的注冊(cè),通過用戶注冊(cè)界面進(jìn)入用戶信息的輸入,當(dāng)正確填寫完信息后才能注冊(cè)成功。通過注冊(cè)后,能使用正確注冊(cè)的賬戶進(jìn)入數(shù)字邏輯課程網(wǎng)絡(luò)虛擬實(shí)驗(yàn)系統(tǒng)開始試驗(yàn)。如果在登錄時(shí)可以對(duì)自己的信息進(jìn)行完善,保證自己賬戶的安全。同時(shí)服務(wù)器通過數(shù)據(jù)庫保存用戶數(shù)據(jù),以便下次用戶登錄時(shí)進(jìn)行信息對(duì)比。同時(shí)也能對(duì)軟件維護(hù)者對(duì)用戶信息進(jìn)行掌握。可以對(duì)非法用戶進(jìn)行相應(yīng)的處理。332虛擬數(shù)字邏輯實(shí)驗(yàn)平臺(tái)主要功能為為用戶提供實(shí)驗(yàn)所用的軟件平臺(tái)。該平臺(tái)上有類似顯示中的數(shù)字邏輯實(shí)驗(yàn)平臺(tái)的的各種元件和接口。用戶可以通過自己的需求選擇實(shí)驗(yàn)所需的芯片,通過鼠標(biāo)可以實(shí)現(xiàn)電平發(fā)生器的接口和芯片的引腳相連、芯片和芯片間引腳相連和芯片和發(fā)光二極管接口或七段顯示器的相連。程序運(yùn)行圖333數(shù)字邏輯課程網(wǎng)絡(luò)虛擬實(shí)驗(yàn)系統(tǒng)遠(yuǎn)程傳輸我們可以通過遠(yuǎn)程服務(wù)器控制用戶是否有軟件的使用權(quán)限,通過客戶端可以進(jìn)行用戶賬戶和密碼的輸入并通過WINDOWSSOCKET通訊發(fā)送給服務(wù)器端,與服務(wù)器端的用戶信息進(jìn)行比較,當(dāng)正確時(shí)服務(wù)器端將回饋給用戶相應(yīng)信息,使得用戶能夠從登陸界面進(jìn)入虛擬實(shí)驗(yàn)平臺(tái)界面。我們需要用到套接字與WINSOCK編程。套接字是網(wǎng)絡(luò)編程的接口,在進(jìn)行網(wǎng)絡(luò)編程時(shí),為了進(jìn)行數(shù)據(jù)的傳輸,一般使用套接字進(jìn)行與網(wǎng)絡(luò)協(xié)議的交互。WINDOWSSOCKET是一套開放的WINDOWS下網(wǎng)絡(luò)應(yīng)用程序編程接口,是基于SOCKET模型的API。使得人們可以方便地使用WINDOWS的消息映射機(jī)制進(jìn)行編程。套接字有三中情形,分別是流式套接字,數(shù)據(jù)報(bào)套接字和原始套接字。在調(diào)用SOCKETINTAF,INTTYPE,INTPROTOCOL創(chuàng)建套接字的時(shí)候可以根據(jù)第二個(gè)參數(shù)來指定其類型。具體如下SOCK_STREAM流式套接字SOCK_DGRAM數(shù)據(jù)報(bào)套接字SOCK_RAW原始套接字原始套接字用來處理低層的協(xié)議機(jī)制,因此這里使用原始套接字。使用的套接字的地址結(jié)構(gòu)如下STRUCTSOCKADDR_INSHORTSIN_FAMILY網(wǎng)絡(luò)地址類型UNSIGNEDSHORTSIN_PORT服務(wù)端口STRUCTIN_ADDRSIN_ADDR無符號(hào)長整型的IP地址CHARSIN_ZERO8填充字段34程序系統(tǒng)設(shè)計(jì)重點(diǎn)網(wǎng)絡(luò)服務(wù)器主要由登錄界面、用戶信息修改界面和用戶注冊(cè)界面組成。當(dāng)用戶正確登錄后將轉(zhuǎn)到虛擬數(shù)字邏輯實(shí)驗(yàn)平臺(tái)界面。用戶信息將通過數(shù)據(jù)庫進(jìn)行存儲(chǔ),當(dāng)用戶登錄時(shí)將會(huì)將用戶輸入信息和數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行匹配,當(dāng)相同的時(shí)候才能正確進(jìn)入虛擬數(shù)字邏輯實(shí)驗(yàn)平臺(tái),否則返回登錄界面。同時(shí)如何將軟件在網(wǎng)上發(fā)布也是難點(diǎn)。遠(yuǎn)程服務(wù)器與客戶端的虛擬數(shù)字邏輯實(shí)驗(yàn)平臺(tái)間的交流時(shí)通過WINDOWSSOCKET編程實(shí)現(xiàn)的。用戶通過軟件的注冊(cè)界面輸入用戶相關(guān)信息,通過網(wǎng)絡(luò)發(fā)送給遠(yuǎn)程服務(wù)器,如果通過驗(yàn)證將會(huì)將用戶賬戶信息存儲(chǔ)進(jìn)服務(wù)器的數(shù)據(jù)庫中。用戶通過登錄界面輸入賬戶和密碼,通過網(wǎng)絡(luò)發(fā)送給服務(wù)器,服務(wù)器將通過與數(shù)據(jù)庫的對(duì)比確認(rèn)用戶信息是否正確,如果不正確則返回信息要求用戶輸入正確信息。如果信息通過驗(yàn)證則服務(wù)器發(fā)送指令讓用戶進(jìn)入虛擬數(shù)字邏輯實(shí)驗(yàn)平臺(tái)界面,并且正常進(jìn)行實(shí)驗(yàn)。本軟件的主體為芯片功能的調(diào)用,代碼中將各種芯片的功能將是通過在用戶選擇芯片時(shí)調(diào)用該芯片對(duì)應(yīng)的函數(shù)實(shí)現(xiàn)的,因此在編程時(shí)需將所需要的各種芯片的功能以部同的函數(shù)編寫出來。同時(shí)編寫一個(gè)芯片的選著函數(shù),設(shè)定一個(gè)變量,其值為各芯片的編號(hào),當(dāng)用戶通過界面選著芯片時(shí),芯片選著函數(shù)能通過芯片編號(hào)找到程序運(yùn)行時(shí)需要調(diào)用芯片的函數(shù)。要模擬出實(shí)際的數(shù)字邏輯實(shí)驗(yàn)平臺(tái)的開關(guān)的開與關(guān)、發(fā)光二極管的暗與滅、芯片的插與拔和七段顯示器的不同數(shù)字,我們都可以通過C語言對(duì)圖片的顯示來實(shí)現(xiàn)。比如發(fā)光二極管我們可以通過在界面上對(duì)應(yīng)區(qū)域在程序運(yùn)行后顯示一張燈滅的圖片,當(dāng)其接口處獲得高電平時(shí),取消燈滅圖片的顯示,用燈亮的圖片替代燈滅的圖片在對(duì)應(yīng)位置顯示,這樣就能產(chǎn)生當(dāng)接口處沒有電平或輸出為地電平時(shí)燈不亮、當(dāng)接口處獲得的為高電平時(shí)燈亮的效果。實(shí)驗(yàn)平臺(tái)的開始界面可以通過對(duì)各種接口圖片,插孔圖片在界面上的排列顯示達(dá)到模擬實(shí)際數(shù)字邏輯實(shí)驗(yàn)平臺(tái)的樣子的模擬。芯片的選擇我們可以通過鼠標(biāo)的右鍵彈出菜單來進(jìn)行選擇。35程序優(yōu)點(diǎn)1降低學(xué)習(xí)成本,可替代實(shí)驗(yàn)儀器,完成數(shù)字邏輯試驗(yàn)設(shè)計(jì)的仿真;2包含完整的數(shù)字邏輯教程,能指導(dǎo)用戶進(jìn)行自主學(xué)習(xí);3具有良好的用戶界面,更貼近用戶的使用習(xí)慣

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論