• <input id="zdukh"></input>
  • <b id="zdukh"><bdo id="zdukh"></bdo></b>
      <b id="zdukh"><bdo id="zdukh"></bdo></b>
    1. <i id="zdukh"><bdo id="zdukh"></bdo></i>

      <wbr id="zdukh"><table id="zdukh"></table></wbr>

      1. <input id="zdukh"></input>
        <wbr id="zdukh"><ins id="zdukh"></ins></wbr>
        <sub id="zdukh"></sub>
        公務(wù)員期刊網(wǎng) 精選范文 vb程序設(shè)計論文范文

        vb程序設(shè)計論文精選(九篇)

        前言:一篇好文章的誕生,需要你不斷地搜集資料、整理思路,本站小編為你收集了豐富的vb程序設(shè)計論文主題范文,僅供參考,歡迎閱讀并收藏。

        vb程序設(shè)計論文

        第1篇:vb程序設(shè)計論文范文

        關(guān)鍵詞:vb程序設(shè)計,過程調(diào)用,參數(shù)傳遞

         

        1 前言

        VB程序設(shè)計是采用面向?qū)ο蟮目梢暬僮鹘缑妫δ軓?qiáng)大,應(yīng)用廣泛,而相對于其他面向?qū)ο蟮木幊陶Z言,如VC,Delphi等容易學(xué)習(xí)掌握。在程序設(shè)計中,為了縮短程序運(yùn)行的時間,也為了方便、簡化程序設(shè)計,就需要建立相應(yīng)的過程,建立過程的目的之一就是減少重復(fù)代碼,將公共代碼放入過程中,并由其他事件過程調(diào)用它,調(diào)用過程有諸多技巧,經(jīng)常根據(jù)程序編寫的需要,按功能將程序分解成若干個相對獨(dú)立的部分,然后對每個部分進(jìn)行程序編寫測試,這樣就把每一個部分稱之為過程。免費(fèi)論文

        在全國VB等級考試中,要求學(xué)生掌握的過程主要有事件過程,Sub過程和Function過程。在過程調(diào)用中,Sub過程與Function過程相似,它們都是用來完成特定功能的獨(dú)立程序代碼,它們由一組符合VB語法的語句組成,但它們不同的是,F(xiàn)unction過程可以返回一個值給調(diào)用程序。但有一點(diǎn)需要特別注意,那就是Sub過程與Function過程必須在事件過程或其他過程中有調(diào)用它們,否則過程代碼將永遠(yuǎn)不會被執(zhí)行。在過程的調(diào)用中,由于二者參數(shù)傳遞的機(jī)制相同,為便于描述,本文就以Sub過程(即子過程)為例,對過程的定義、調(diào)用及參數(shù)傳遞進(jìn)行分析和說明。

        2 VB過程的調(diào)用與分析

        在調(diào)用過程時,主調(diào)過程的實(shí)參以一定的形式傳遞給被調(diào)過程的形參,完成實(shí)參與形參的配對結(jié)合,然后執(zhí)行被調(diào)用的過程體即語句塊。經(jīng)被調(diào)過程處理后,并可得到處理的結(jié)果,但如果被調(diào)過程為Function過程時,可將所得結(jié)果返回給主調(diào)過程。VB中,參數(shù)的傳遞有傳值和傳址(引用)兩種形式。免費(fèi)論文。

        2.1子過程的定義與調(diào)用

        自定義子過程的格式:

        [Public | Private] [ Static]Sub子過程名([形參表列] )

        局部變量和常量定義

        <語句塊>

        [Exit Sub]

        [語句塊]

        End Sub

        其中形參表列的每個參數(shù)的形式:[ByVal](變量名[()] [As類型,]……)

        形參表列中的參數(shù)稱為形參或啞元,只能是變量或數(shù)組名,不能是常量、函數(shù)、表達(dá)式等。在過程定義時,參數(shù)有傳值和傳址兩種定義形式,帶ByVal定義的參數(shù)為值傳遞,用于接收過程調(diào)用時實(shí)參傳遞過來的值,否則為地址(引用)傳遞,用于接收過程調(diào)用時實(shí)參傳遞過來的地址。

        子過程的調(diào)用格式:

        (1) Call過程名( [實(shí)參表列] )

        (2) 過程名[實(shí)參表列]

        子過程的調(diào)用是一條獨(dú)立的調(diào)用語句,有上述(1)、(2)兩種調(diào)用格式。其中:“實(shí)參表列”中的參數(shù)稱為實(shí)參,實(shí)參的個數(shù)、數(shù)據(jù)類型都要與被調(diào)用過程的形參一一對應(yīng),實(shí)參可以是同類型的常量、變量、數(shù)組、表達(dá)式等。

        2.2傳值方式(ByVal)

        VB中的傳值方式,實(shí)參與形參在內(nèi)存中占用不同的內(nèi)存單元,當(dāng)調(diào)用一個過程時,系統(tǒng)把實(shí)參的值復(fù)制給形參,當(dāng)執(zhí)行被調(diào)用的過程時,實(shí)參與形參并斷開聯(lián)系,過程的調(diào)用也將結(jié)束,形參的任何操作和變化都不會影響到實(shí)參。傳值方式是“單向”的,形參的值不能返回給實(shí)參。在教學(xué)中,通過總結(jié)給出了如下按傳值方式(ByVal)對過程調(diào)用的分析方法。

        例1:編寫兩個數(shù)相加的過程,執(zhí)行程序并輸出結(jié)果。

        Option Explicit

        Public Sub Add(ByValx As Integer, ByVal y As Integer)

        x =x + y : Print “x=” ;x

        End Sub

        Private Sub Command1_Click()

        Dim a AsInteger , b As Integer

        a = 20: b = 15: Call Add(a, b): Print “a=”; a;“b=”;b

        End Sub

        程序運(yùn)行后得到的結(jié)果為:x=35a=20 b=15,通過該方法能簡潔明了地得到正確結(jié)果,x的值由兩個數(shù)相加所得的結(jié)果,而a,b兩個數(shù)的值沒有變化,分析參數(shù)傳遞過程的情況如圖1所示,由于采用傳值方式,實(shí)參和形參在內(nèi)存中占用不同的內(nèi)存單元,當(dāng)調(diào)用過程Add時,系統(tǒng)把實(shí)參a, b的值復(fù)制一份給形參x和y,便斷開實(shí)參與形參的聯(lián)系,執(zhí)行Add過程中的語句塊后,形參x的值進(jìn)行了變化即為兩個數(shù)的和,但它的變化并不影響實(shí)參a和b,當(dāng)返回到主調(diào)過程時,形參所占的內(nèi)存被釋放。

        2.3傳址方式(ByRef)

        傳址方式也稱引用方式,是VB默認(rèn)的參數(shù)傳遞方式,當(dāng)調(diào)用一個過程時,系統(tǒng)將實(shí)參的地址傳遞給形參,實(shí)參與形參在內(nèi)存中占用相同的存儲單元,即過程接受的是實(shí)參變量的地址。因此在被調(diào)過程中對形參的任何操作都變成了對相應(yīng)實(shí)參的操作,實(shí)參的值會隨著形參的變化而改變,這種傳遞是“雙向”的。下面來分析一下傳址方式(ByRef)的一般情況,即形參與實(shí)參均為簡單類型的變量。免費(fèi)論文。

        當(dāng)形參是傳址方式的簡單類型變量,實(shí)參是同類型的簡單變量時,系統(tǒng)采用傳址方式實(shí)現(xiàn)虛實(shí)結(jié)合。下面采用傳址方式,改編例1的程序,分析能否改變a,b的值。Add子過程修改如下,其主調(diào)過程與傳值方式的主調(diào)過程相同。

        Public Sub Add(ByRefx As Integer, ByRef y As Integer)

        x =x + y : Print “x=” ;x

        End Sub

        執(zhí)行程序,運(yùn)行結(jié)果為:x=35 a=35 b=15。分析參數(shù)傳遞過程如圖2所示,由于采用傳址方式,實(shí)參和形參在內(nèi)存中占用同一存儲單元,當(dāng)調(diào)用過程Add時,系統(tǒng)把實(shí)參a, b的地址分別傳遞給形參x和y,使得x與a是同一存儲單元,y與b也是同一存儲單元,在這種情況下可以把x與a看成是同一個變量,y與b也可看成是同一個變量,執(zhí)行Add過程中的語句塊后,形參x的值進(jìn)行了改變,等同于實(shí)參a的值也進(jìn)行了變化,調(diào)用結(jié)束后,返回主調(diào)過程,這樣也就改變了a的值,由于y的值沒有變化,所以b的值也就沒有改變。

        第2篇:vb程序設(shè)計論文范文

        當(dāng)前社會職業(yè)的多樣化,學(xué)生就業(yè)的需求,高等教育中非計算機(jī)專業(yè)的計算機(jī)基礎(chǔ)課程體系也應(yīng)該有相應(yīng)的改革,使得新的課程體系,可以提供給理科、工科、文科、藝術(shù)類等其他不同的專業(yè)進(jìn)行計算機(jī)基礎(chǔ)教育時更豐富的選擇。使各個專業(yè)的畢業(yè)生將來在擇業(yè)時在計算機(jī)教育上能夠更貼近用人單位的要求。《非計算機(jī)專業(yè)計算機(jī)公共基礎(chǔ)課的教學(xué)改革與實(shí)踐》的主要的目標(biāo)針對我校非計算機(jī)專業(yè)計算機(jī)公共基礎(chǔ)課教學(xué)進(jìn)行課程體系改革的研究與實(shí)踐,與此相應(yīng)的教學(xué)方法、教學(xué)內(nèi)容、教學(xué)模式、實(shí)驗(yàn)教學(xué)、教材、計算機(jī)基礎(chǔ)課程考核方法應(yīng)同步改革。

        二、我校的計算機(jī)基礎(chǔ)教育新舊課程結(jié)構(gòu)的比較

        根據(jù)高等教育的發(fā)展,對我校非計算機(jī)專業(yè)的計算機(jī)基礎(chǔ)教學(xué)提出了新的要求,相應(yīng)的課程體系改革為:計算機(jī)基礎(chǔ)分為大學(xué)計算機(jī)基礎(chǔ)、計算機(jī)技術(shù)基礎(chǔ)和計算機(jī)應(yīng)用基礎(chǔ)三個層次,為必修課或選修課。其中:理工類建議選擇C語言程序設(shè)計、java語言程序設(shè)計等,文科類選擇VB程序設(shè)計、web程序設(shè)計等;第四、五學(xué)期各專業(yè)可根據(jù)專業(yè)培養(yǎng)需要選擇。同時為了使同學(xué)們能更好的掌握知識,將《C語言程序設(shè)計》《java語言程序設(shè)計》《VB程序設(shè)計》《web程序設(shè)計》《動漫設(shè)計》課程分為兩個學(xué)期完成,稱為《C語言程序設(shè)計(1)》《C語言程序設(shè)計(2)》,其他課程以此類推。

        三、教改具體措施以及效果

        (一)全程機(jī)房教學(xué),增強(qiáng)動手能力

        教學(xué)方法是為實(shí)現(xiàn)教學(xué)目標(biāo)、完成教學(xué)任務(wù)所采取的措施。傳統(tǒng)的三中心(教師、教材、課堂)教學(xué)方法既不適應(yīng)社會發(fā)展的需求,也不符合計算機(jī)教育的特色,必須改革。我校的《大學(xué)計算機(jī)基礎(chǔ)》由原來的課堂教學(xué),改為全程機(jī)房教學(xué),使同學(xué)們在邊聽教師講解的同時,可以直接上機(jī)進(jìn)行操作,在學(xué)習(xí)理論知識的同時,可以立刻得到對計算機(jī)操作的感性認(rèn)識。通過三個學(xué)期的教改實(shí)踐,完善了全程機(jī)房教學(xué)模式,對同學(xué)們使用計算機(jī)的動手能力有很大的提高。

        (二)配套教學(xué)軟件,提高學(xué)習(xí)能力

        本課程組為《大學(xué)計算機(jī)基礎(chǔ)》課程開發(fā)了一個《大學(xué)計算機(jī)基礎(chǔ)輔導(dǎo)練習(xí)系統(tǒng)》,該系統(tǒng)分為抽題模塊、答題模塊、判卷模塊,本系統(tǒng)為C/S結(jié)構(gòu),當(dāng)管理員在服務(wù)器端設(shè)置好本次模擬練習(xí)的題型比例后,系統(tǒng)自動生成一套模擬試卷;所有的同學(xué)們可以在客戶端進(jìn)行答題,當(dāng)答卷完畢時,由服務(wù)器端自動進(jìn)行判卷并將本次練習(xí)的結(jié)果反饋給同學(xué)們;該系統(tǒng)可以提供給學(xué)習(xí)本課程的同學(xué)們經(jīng)過教師的指導(dǎo)后,在課堂內(nèi)外自行進(jìn)行練習(xí)。以便同學(xué)們完成練習(xí)后,自己可以評判自身的學(xué)習(xí)程度,并在下一階段的課內(nèi)外學(xué)習(xí)中調(diào)整自己的學(xué)習(xí)狀態(tài)。本系統(tǒng)已經(jīng)提供給2005級大一學(xué)生進(jìn)行了初步使用,體現(xiàn)了較好的作用。

        (三)開發(fā)網(wǎng)絡(luò)平臺,整合教學(xué)資源

        本課程組在調(diào)研了周邊各高校的計算機(jī)基礎(chǔ)教育的情況,開發(fā)了一個本校的《計算機(jī)基礎(chǔ)教育中心教學(xué)平臺》,在本教學(xué)平臺上,提供了基礎(chǔ)部課程的相關(guān)介紹,教學(xué)信息的,教學(xué)資料的下載等等功能,可以提供給任課教師所任課程重點(diǎn)難點(diǎn)詳細(xì)介紹。對課堂教學(xué)起到了很好的補(bǔ)充作用,方便了同學(xué)們在課余時間繼續(xù)學(xué)習(xí)計算機(jī)基礎(chǔ)課程。在本課題的后續(xù)時間里,擬設(shè)計開發(fā)計算機(jī)基礎(chǔ)教學(xué)課程的基于校園網(wǎng)教輔系統(tǒng),使得同學(xué)們可以開展課余時間自由學(xué)習(xí)。該平臺具有以下優(yōu)點(diǎn):①發(fā)揮以計算機(jī)為基礎(chǔ)的現(xiàn)代多種媒體的作用,使教學(xué)信息組織超文本化。多媒體的超文本特性可實(shí)現(xiàn)教學(xué)信息最有效的組織與管理。②在培養(yǎng)高級認(rèn)知能力的場合中,因特網(wǎng)和校園網(wǎng)是協(xié)作學(xué)習(xí)的主要形式,實(shí)現(xiàn)了協(xié)作式教學(xué)。③教學(xué)過程的生動性是多媒體計算機(jī)的強(qiáng)大魅力之所在。在教學(xué)中可以同樣重視教與學(xué)這兩個部分。強(qiáng)調(diào)學(xué)生的參與意識,教與學(xué)成為兩個相輔相成的部分。調(diào)動學(xué)生學(xué)習(xí)的主動性,培養(yǎng)學(xué)生的“發(fā)現(xiàn)式”學(xué)習(xí)能力,使學(xué)生不僅學(xué)會,而且會學(xué)。④在短時間里要獲得大量的信息與知識,這在傳統(tǒng)的教學(xué)模式中是可望不可及的,而以多媒體網(wǎng)絡(luò)作為傳播信息的渠道,使教師與學(xué)生、學(xué)生與學(xué)生之間,可以同時傳播大量的信息,大大提高教學(xué)效率。

        (四)編制多媒體課件,增加課堂吸引力

        根據(jù)我校計算機(jī)基礎(chǔ)教學(xué)的實(shí)際情況,我們重新編制了《大學(xué)計算機(jī)基礎(chǔ)》《計算機(jī)程序設(shè)計A》《計算機(jī)程序設(shè)計B》的電子課件,使之更符合我校的實(shí)際教學(xué)情況,更符合浙江省計算機(jī)等級考試的要求。其中《計算機(jī)程序設(shè)計A》課件獲得中國計量學(xué)院首屆多媒體課件競賽二等獎。改編后的課件具有以下優(yōu)點(diǎn):界面清晰、美觀,結(jié)構(gòu)清晰,例題豐富、并附有書本外的課后習(xí)題。

        (五)出版教輔材料,同步教學(xué)改革

        根據(jù)高等教育中對計算機(jī)基礎(chǔ)教學(xué)提出的新要求,和結(jié)合浙江省計算機(jī)等級考試的要求,本課題組編制了《C語言程序設(shè)計實(shí)驗(yàn)與習(xí)題指導(dǎo)》面向21世紀(jì)高等院校計算機(jī)系列規(guī)劃教材,該教材由“科學(xué)出版社”出版,并于2005~2006學(xué)年第二學(xué)期開始投入我校、浙江工業(yè)大學(xué)等高校使用;根據(jù)我校學(xué)生應(yīng)考浙江省計算機(jī)等級考試的需要,本課題組編制了《C語言輔導(dǎo)與講義》、《VB程序設(shè)計輔導(dǎo)與講義》,并與2005~2006學(xué)年第一學(xué)期開始投入使用,學(xué)生們反映良好。

        (六)開發(fā)考試系統(tǒng),改革測試手段

        計算機(jī)基礎(chǔ)課程是一門應(yīng)用技術(shù)學(xué)科,主要憑試卷來檢測大學(xué)生的學(xué)習(xí)效果,并不能完全反映出學(xué)生的實(shí)際能力。而且試題類型目前多是測試學(xué)生對所學(xué)知識是否了解,不是考核學(xué)生解決問題的能力,并沒有掙脫應(yīng)試教育的樊籠,嚴(yán)重影響了創(chuàng)新型人才的培養(yǎng)。現(xiàn)在這種考試方法,使得學(xué)生為了考試而學(xué)習(xí),不能提高學(xué)生學(xué)習(xí)的積極性,不能發(fā)揮學(xué)生的創(chuàng)造力,這種考試方法與素質(zhì)教育大相徑庭。本課題組開發(fā)了《大學(xué)計算機(jī)基礎(chǔ)上機(jī)考試系統(tǒng)》,本系統(tǒng)具有抽題功能、答題功能、判卷功能、存儲功能、輸出功能,對其中的實(shí)踐部分從以前的“紙上談兵”改為“上機(jī)實(shí)戰(zhàn)”。其中的判卷功能、存儲功能、輸出功能也使得該課程實(shí)現(xiàn)無紙化考試,該考試系統(tǒng)于2004~2005學(xué)年第二學(xué)期開始投入使用。新的考核方法給了學(xué)生一個發(fā)揮才能的空間,變被動的死記硬背為靈活的實(shí)踐操作,使學(xué)生成為知識的主人。

        四、實(shí)際作用與效果

        通過對非計算機(jī)專業(yè)計算機(jī)公共基礎(chǔ)課的教學(xué)改革與實(shí)踐,對提高教學(xué)質(zhì)量,效果明顯。我校非計算機(jī)專業(yè)學(xué)生在學(xué)習(xí)C語言和準(zhǔn)備迎接浙江省計算機(jī)二級考試中,選擇了我校自行編制的《C語言程序設(shè)計輔導(dǎo)與講義》《VB程序設(shè)計輔導(dǎo)與講義》,取得了較好的成績。 在該完成該課題的過程中,陸慧娟老師等于2005年11月在“首屆大學(xué)計算機(jī)基礎(chǔ)課程報告論壇”發(fā)表了《多科性大學(xué)計算機(jī)基礎(chǔ)教學(xué)課程體系的改革與實(shí)踐》教改論文,該文以本校的計算機(jī)基礎(chǔ)教學(xué)為背景,探討了非計算機(jī)專業(yè)計算機(jī)基礎(chǔ)教學(xué)課程體系的設(shè)置、教學(xué)方法的改進(jìn)和師資隊(duì)伍建設(shè)等問題。黃俊老師等于2005年11月在“首屆大學(xué)計算機(jī)基礎(chǔ)課程報告論壇”發(fā)表了《配對編程教學(xué)模式在程序設(shè)計課程教學(xué)中的探索與實(shí)踐》教改論文,配對編程方法是兩學(xué)生并排在一臺計算機(jī)上工作,協(xié)同完成一個設(shè)計、代碼編寫和調(diào)試的新的程序設(shè)計學(xué)習(xí)方法,該文對配對編程教學(xué)模式在計算機(jī)基礎(chǔ)課程教學(xué)的應(yīng)用進(jìn)行了探索與實(shí)踐,提出了配對編程在程序設(shè)計基礎(chǔ)教學(xué)過程中存在的問題和解決的辦法。

        第3篇:vb程序設(shè)計論文范文

        【關(guān)鍵詞】科研;信息;管理;系統(tǒng)

        高校作為教學(xué)科研單位,其學(xué)術(shù)氛圍十分濃厚,科研工作取得了相當(dāng)大的成績,立項(xiàng)的國家級、省級課題數(shù)量、發(fā)表的論文數(shù)量以及專題講座數(shù)量等大幅度提高。為了科學(xué)的管理、查詢這些課題、論文和講座等信息,很有必要設(shè)計、開發(fā)一款適合高校的科研管理系統(tǒng),以提升學(xué)校的科學(xué)管理水平。

        本文所提到的科研信息管理系統(tǒng)將圍繞學(xué)校所立項(xiàng)的課題、已發(fā)表的論文、已開展的講座等信息,根據(jù)年份、院系、課題(論文)類別、姓名及職稱等條件進(jìn)行數(shù)據(jù)查詢,并以Excel的文件格式呈現(xiàn)查詢結(jié)果,以利于用戶對數(shù)據(jù)作進(jìn)一步的處理。系統(tǒng)將具備一般數(shù)據(jù)庫管理系統(tǒng)所具有的功能,設(shè)計了便于用戶信息錄入的功能,信息可分散錄入,分散錄入完成后再集中導(dǎo)入的方式進(jìn)行,也可以將Excel文件格式的信息導(dǎo)入系統(tǒng)中,大大減輕用戶信息錄入的負(fù)擔(dān),使軟件真正成為用戶的好幫手。

        一、系統(tǒng)總體設(shè)計框架

        從圖上可以看出,系統(tǒng)總體上包含了追加信息、插入信息等10個程序模塊。其中清除重復(fù)信息、以Excel文件格式導(dǎo)入、導(dǎo)出信息最具特色,可以避免數(shù)據(jù)庫的冗余,便于用戶對信息作進(jìn)一步的操作,這也是本文要著重介紹的程序片段。

        二、數(shù)據(jù)庫字段設(shè)計(僅以課題信息為例)

        課題信息、論文信息和講座信息分別用三個數(shù)據(jù)文件保存。課題信息字段如表一所示。

        表一

        數(shù)據(jù)字段共有14項(xiàng),各校可根據(jù)本校的實(shí)際情況適當(dāng)增加或減少,從我校實(shí)際使用經(jīng)驗(yàn)來看,第6、9項(xiàng)可以刪除。

        三、用戶界面設(shè)計

        (一)初始化界面設(shè)計[1],如圖一所示。

        圖一 初始化界面

        該界面是我校科研信息管理系統(tǒng)實(shí)際使用界面,僅供參考。本人比較喜歡直觀的瀏覽到某項(xiàng)主要信息,然后單擊它再看到相應(yīng)的其它更多的信息。

        (二)設(shè)置字段控件,如表二所示。

        表二

        均為常用控件,其中第1項(xiàng)就是用來顯示課題名稱的。

        四、部分源代碼設(shè)計(以VB語言程序設(shè)計為例)

        (一)代碼模塊中的程序[2]

        創(chuàng)建自定義數(shù)據(jù)類型stu,并聲明xit為該類型。

        (二)窗體模塊全程聲明段中的程序

        該模塊中的程序用于初始化系統(tǒng)、保存信息和顯示信息等。初始化系統(tǒng)時可以先創(chuàng)建一個隨機(jī)文件,如:

        Open "keyglkt.dbf" For Random As #1 Len = Len(xit)。

        保存信息和顯示信息程序代碼被多次重復(fù)調(diào)用,所以應(yīng)在全程聲明段中創(chuàng)建。

        (三)清除重復(fù)信息程序

        用戶在輸入或?qū)肟蒲行畔r,很有可能信息會重復(fù)操作。為了保證數(shù)據(jù)的唯一性,有必要設(shè)計清除重復(fù)信息程序。設(shè)計思想是先為重復(fù)出現(xiàn)的信息將其清除標(biāo)志代碼設(shè)置為1,再全部刪除之。程序如下:

        (四)批量導(dǎo)入Excel格式信息程序[3]

        當(dāng)用戶的原始數(shù)據(jù)是以Excel文件格式保存時,為了不做重復(fù)的工作,可用此項(xiàng)功能。先彈出一個打開文件對話框,用戶選擇一個要導(dǎo)入的Excel文件,信息將自動添加到最后面,程序如下:

        (五)導(dǎo)出查詢信息程序[3]

        當(dāng)用戶需要對課題信息作進(jìn)一步處理時,如排序、打印等,可以將信息以Excel文件格式導(dǎo)出,再用Excel對信息進(jìn)行處理,非常方便。程序如下:

        至此,主要程序模塊介紹完畢。目前,該系統(tǒng)正在我校試用,效果良好。

        參考文獻(xiàn):

        [1]劉炳文.Visual Basic 程序設(shè)計-基礎(chǔ)篇[M].北京:人民郵電出版社,1998:169-216.

        第4篇:vb程序設(shè)計論文范文

        論文摘要:現(xiàn)存的非計算機(jī)專業(yè)編程語言的教學(xué)弊端種種,本文提出了一種新的思路。即:使用VBScript語言在記事本中編寫程序,在IE瀏覽器環(huán)境下來運(yùn)行之,且通過實(shí)例論證該方法的實(shí)用性,使其真正為每個用戶服務(wù)。

        0引言

        說起我國非計算機(jī)專業(yè)編程語言教學(xué)的走向,就不得不提到我國高等學(xué)校計算機(jī)基礎(chǔ)教育發(fā)展的歷史。我國的計算機(jī)基礎(chǔ)教育始于20世紀(jì)80年代初期,從80年代初以來,高校的計算機(jī)基礎(chǔ)教育大致上經(jīng)歷了三個發(fā)展階段:80年代是起步階段,90年代是規(guī)范階段,進(jìn)入21世紀(jì),開始了第三階段,即深化提高階段。

        計算機(jī)基礎(chǔ)教育是指面向大學(xué)中非計算機(jī)專業(yè)學(xué)生的計算機(jī)教育,這部分學(xué)生約占全體大學(xué)生的95%以上。非計算機(jī)專業(yè)中進(jìn)行計算機(jī)教育的目的是培養(yǎng)大批能使用計算機(jī)的人才,而不同于計算機(jī)專業(yè)的培養(yǎng)計劃,可以說他們是計算機(jī)應(yīng)用人才,學(xué)習(xí)計算機(jī)的目的完全為了應(yīng)用,計算機(jī)只是作為一種現(xiàn)代工具來掌握,而不能當(dāng)做純理論的課程來學(xué)習(xí)。明確了這個培養(yǎng)目標(biāo),那就可以有的放矢。

        目前各高校非計算機(jī)專業(yè)編程語言教學(xué)的現(xiàn)狀是:學(xué)時是有限的,學(xué)習(xí)內(nèi)容是繁雜的,由此對學(xué)生產(chǎn)生的學(xué)習(xí)壓力不僅苦不堪言,而現(xiàn)實(shí)更是多數(shù)非計算機(jī)專業(yè)的學(xué)生在畢業(yè)后,對于大學(xué)期間學(xué)習(xí)的編程語言大部分是忘記,若想拾起來重新使用,也不是一件易事。如何解決非計算機(jī)專業(yè)編程語言教學(xué)和實(shí)際使用二者之間存在的矛盾這個問題,是我們每個從事高等計算機(jī)基礎(chǔ)教育的老師不得不思考的問題。

        1非計算機(jī)專業(yè)編程語言教學(xué)的現(xiàn)狀

        對于現(xiàn)存的高等院校非計算機(jī)專業(yè)編程語言教學(xué)的弊端,我們做以下幾點(diǎn)分析說明:

        (1)非計算機(jī)專業(yè)編程語言教學(xué)培養(yǎng)目標(biāo)定位有誤

        對于非計算機(jī)專業(yè)學(xué)生進(jìn)行的編程語言教學(xué),應(yīng)與計算機(jī)專業(yè)的學(xué)生有所不同。計算機(jī)專業(yè)培養(yǎng)的是計算機(jī)專門人才,將來從事信息技術(shù)理論研究、科研教學(xué)、系統(tǒng)開發(fā)等專業(yè)性的工作,而在非計算機(jī)專業(yè)中進(jìn)行編程語言教學(xué)的目的是培養(yǎng)大批能使用計算機(jī)的新型人才,他們需要達(dá)到的程度僅僅是使用計算機(jī)這個工具。作為高等院校非計算機(jī)專業(yè)編程語言教學(xué)計劃的制定者,對于專業(yè)和非專業(yè)要達(dá)到的目標(biāo)一定要明確,否則有可能南轅北轍。

        (2)非計算機(jī)專業(yè)的編程語言教學(xué)設(shè)置好大喜功

        經(jīng)過作者在國內(nèi)各大高校做的調(diào)查,幾乎各大高校對于非計算機(jī)專業(yè)編程語言教學(xué)一般從大學(xué)一年級就開始,陸續(xù)開有VB、C、FoxPro、SQL、C++、PB、Delphi、Java等,有的院校在高年級非計算機(jī)專業(yè)還開有計算機(jī)編程語言課程,美名其曰:多學(xué)點(diǎn)東西,增加就業(yè)砝碼。

        誠然多學(xué)點(diǎn)東西是不會有什么害處,但是不知道說這個話的人有沒有想過:對于非計算機(jī)專業(yè)的學(xué)生來說,能有多少比例的學(xué)生在真正學(xué)這些開設(shè)的計算機(jī)編程語言課程,更多的恐怕是在各種考試之間疲于應(yīng)付。當(dāng)大家手捧畢業(yè)證書的時候,手拿四年所修的學(xué)分成績單的時候,當(dāng)大家面試應(yīng)聘的時候,留在大家腦海中的計算機(jī)編程語言可能屈指可數(shù),可以炫耀的可能僅僅是修過的計算機(jī)課程的數(shù)量。

        作為從事高等教育的老師,我們不能為了這些表面的假象自欺欺人。如何在有限的學(xué)時內(nèi)進(jìn)行優(yōu)化選擇,使學(xué)生學(xué)到最需要的知識。當(dāng)然不僅是指當(dāng)前最需要,而且也包括今后踏上工作崗位,對于需要用到的計算機(jī)編程語言知識的時候也可以信手拈來,不用再重新學(xué)過。因此,對于非計算機(jī)專業(yè)的學(xué)生,我們應(yīng)該敢于摒棄學(xué)習(xí)那些當(dāng)前為了考試,今后根本用不多,僅僅是為了增加學(xué)分的計算機(jī)編程課程。

        (3)系統(tǒng)本身龐大,掌握的知識有限,學(xué)不能使其精

        對于現(xiàn)存的計算機(jī)程序設(shè)計的任何一門語言,如VB、VisualFox、SQL等,系統(tǒng)都是很龐大的。以一個簡單的例子,VB為例來說明,VB采用的事件驅(qū)動的編程機(jī)制,提供了動態(tài)數(shù)據(jù)交換(DDE)和對象鏈接與嵌入(OLE)等技術(shù)。在數(shù)據(jù)庫方面,VB具有很強(qiáng)的數(shù)據(jù)庫管理功能,不僅可以管理MSAccess格式的數(shù)據(jù)庫,還能訪問其他外部數(shù)據(jù)庫,如FoxPro、Paradox等格式的數(shù)據(jù)庫。另外,VB還提供了開放式數(shù)據(jù)連接(ODBC)功能。

        對于VB強(qiáng)大功能,我相信學(xué)過VB的用戶,都是普遍承認(rèn)的,這個不需要多說,但是對于這么大的一個系統(tǒng),如何能通過簡簡單單的幾個學(xué)時就能夠完全掌握呢?即使說你上課的時候多么專心地聽講,多么用功地做筆記,都是無濟(jì)于事的,非要通過系統(tǒng)地做上幾個項(xiàng)目才能掌握一二,更不要說是對于僅僅是通過教材上的幾個簡單例子學(xué)習(xí)的學(xué)生了,這幾乎是不太可能的事情。那么有沒有學(xué)習(xí)起來比較容易上手的工具了,答案是肯定的。

        (4)快速記憶,快速忘記

        在高等院校里不排除有些用功的學(xué)生,學(xué)習(xí)每門功課都是用功之極,當(dāng)然也不排除用功是為了在考試中拿個高分,爭取獎學(xué)金的可能性存在。一個學(xué)期,說的更多一點(diǎn)一年對一門語言的學(xué)習(xí),在短時間之內(nèi)掌握某一項(xiàng)技能之后,一旦長時間不使用,肯定會生疏,這是人類不能抗拒的生理現(xiàn)象。而且目前高校里的學(xué)生學(xué)習(xí)的現(xiàn)狀是:平時基本不看,考前拼命熬夜苦讀,這種短時間內(nèi)強(qiáng)迫大腦記憶的東西,肯定是經(jīng)不起時間的考驗(yàn)的,尤其是在一個人不愿意學(xué)習(xí)這門功課的時候,這是自然規(guī)律。

        假設(shè)你當(dāng)時學(xué)會了VB,而且在大學(xué)畢業(yè)參加工作的時候也沒有忘記,是不是說你就能很好地做自己的事情了呢?答案也是否定的,因?yàn)槟阏莆盏氖荲B,而在工作單位的PC機(jī)上或許并沒有安裝VB的運(yùn)行環(huán)境,這樣是不是就為你的使用又出了一道難題。

        有沒有一勞永逸的工具,只需要簡單的學(xué)習(xí),而且不論在安裝或者未安裝VB運(yùn)行環(huán)境的PC機(jī)上都能很好的完成自己想做的工作。通過作者親身實(shí)踐,本文中提倡的這個方法就可以達(dá)到這樣的功效。

        (5)支持知識產(chǎn)權(quán)保護(hù)

        如何做才能既使用正版,又不卷入知識產(chǎn)權(quán)的糾紛中呢,這里我們提倡在高校中推廣,使用VBScript腳本語言在記事本環(huán)境下編程,在IE瀏覽器中運(yùn)行,就可以達(dá)到這樣雙重效果。

        (6)程序交流困難

        一個用戶編寫的程序如果僅僅是自己使用,這個時候程序的使用有一定的局限性,如果能夠拿出去跟別的用戶交流,就具有了更大的價值。假設(shè)有兩個用戶A和B,A在VB環(huán)境下編寫了一段程序,在自己的機(jī)器上可以正常運(yùn)行,當(dāng)A把這段程序拷貝到B的機(jī)器上和B交流的時候,B機(jī)器上恰好沒有安裝VB環(huán)境,此時對于二者的交流可能存在障礙。

        針對上述,我國高校計算機(jī)基礎(chǔ)教育體制中存在的諸多問題,作者提出了一種新的思路。

        對于一臺安裝了操作系統(tǒng)(WindowsXP、Windows2000Professional、WindowsME、Win98等)的PC機(jī)來說,擁有IE瀏覽器和記事本是再簡單不過的事情,作者推薦給大家的就是使用VBScript語言來完成自己想要做的工作。下面我們通過例子來做進(jìn)一步的說明,以此來演示如何更好的結(jié)合二者,使之發(fā)揮作用。

        在數(shù)學(xué)或工程應(yīng)用中,常常存在著大量的數(shù)值計算和數(shù)值分析問題,如:復(fù)合梯形公式、復(fù)合Simpson公式、Romberg求積公式等。通過編寫簡單的程序,就可以讓計算機(jī)代替人類來做一些復(fù)雜的計算任務(wù),在這里以數(shù)值計算中一個常見的問題來說明一下如何使用提倡的方法完成計算任務(wù),這里以復(fù)合Simpson公式的計算為例。程序是通過輸入給定的三個初始值:a、b和n,如圖1所示。圖2程序源代碼

        從上述源代碼中可以看出:第一,VBScript使用的僅僅是VB中簡單的程序設(shè)計思想的三種結(jié)構(gòu):順序、選擇和循環(huán),不涉及復(fù)雜的結(jié)構(gòu),對于非計算機(jī)專業(yè)的用戶來說是非常容易的事情。第二,在程序開始寫了一個自定義的函數(shù),在后面對該函數(shù)進(jìn)行了調(diào)用,可以達(dá)到程序復(fù)用的作用。(2)將該文件保存為一個html格式的文件,如:a.html。

        (3)運(yùn)行該程序只需要雙擊該文件圖標(biāo)就可以在IE瀏覽器環(huán)境下運(yùn)行,在指定的文本框中輸入符合計算要求的數(shù)據(jù)點(diǎn)擊確定就可以得到計算的結(jié)果,如圖3和圖4所示。

        圖4運(yùn)行結(jié)果

        3小結(jié)

        通過上述例子我們可以得出以下結(jié)論:

        (1)在記事本環(huán)境下,僅僅使用了一些簡單的VBScript腳本語句就可以完成復(fù)雜的數(shù)值計算任務(wù)。VBScript是介于HTML語言和VisualBasic、Java等高級語言之間的一種腳本語言,它接近于高級語言的大部分功能,但卻比高級語言簡單易學(xué)。

        (2)在運(yùn)行該程序時,不像其他的程序設(shè)計語言需要經(jīng)過編譯或解釋等步驟,以此來生成目標(biāo)文件、連接文件以及可執(zhí)行文件等,使用VBScript在記事本中編寫的程序需要做的工作僅僅是雙擊該文件名,而不會生成其他的中間文件,這樣就大大節(jié)省了系統(tǒng)的存儲空間。

        (3)在運(yùn)行該程序時,對運(yùn)行環(huán)境沒有提出特別的要求,僅僅是需要一個IE瀏覽器。這對于擁有一臺PC機(jī)的用戶是輕而易舉的事情。

        (4)當(dāng)你還在費(fèi)盡心思考慮程序的在多臺機(jī)器之間傳遞的時候,使用在此提倡的方法無需有這方面的顧慮。對于在任何一臺PC機(jī)上編寫的.html文件,你可以輕松在多臺機(jī)器上拷貝和運(yùn)行,而無需進(jìn)行額外的路徑配置等工作。

        當(dāng)然,我們提倡的這種方法并不是十全十美,如:對于需要大量使用界面圖形來處理的問題,或者需要使用數(shù)據(jù)庫的問題,該方法就有所欠缺,但是該方法對于僅僅是為了自己方便,進(jìn)行一些數(shù)據(jù)處理來說,是再合適不過的了。

        全社會的計算機(jī)普及,為大學(xué)的非計算機(jī)編程教育創(chuàng)造了良好的氛圍和外部環(huán)境,使廣大非專業(yè)人員學(xué)習(xí)和使用計算機(jī)編程語言變得更加容易,如何使學(xué)有所用,使高等教育成為社會發(fā)展的推動力量,是高校非計算機(jī)專業(yè)編程教學(xué)面臨的嚴(yán)重的挑戰(zhàn),這也是本文的初衷。

        參考文獻(xiàn):

        [1]施吉林,劉淑珍,陳桂芝.計算機(jī)數(shù)值方法[M].高等教育出版社.

        第5篇:vb程序設(shè)計論文范文

        關(guān)鍵詞:開題報告數(shù)學(xué)

        一、選題依據(jù)(背景與意義、國內(nèi)外研究現(xiàn)狀與發(fā)展趨勢)

        在某種程度上,數(shù)學(xué)的整個對象就是在原來似乎混沌占統(tǒng)治地位的地方創(chuàng)造秩序,從無序和混沌之中抽取出結(jié)構(gòu)和不變量。所以,把無序的數(shù)字轉(zhuǎn)化為有序的模型,這才是數(shù)學(xué)家乃至所有數(shù)學(xué)愛好者所追求的。

        平方數(shù),也叫完全平方數(shù)或正方形數(shù),是可以寫成整數(shù)的二次方的數(shù)。它是一種很“完美”的數(shù),有關(guān)于它有許多很有序的規(guī)律,至今為止,已經(jīng)有很多的數(shù)學(xué)愛好者樂此不疲地去研究它,而且也得出了不少有趣而且有用的結(jié)論。至今為止,平方數(shù)的一些基本的性質(zhì)。例如,性質(zhì)1:完全平方數(shù)的末位數(shù)只能是0,1,4,5,6,9。性質(zhì)2:奇數(shù)的平方的個位數(shù)字為奇數(shù),十位數(shù)字為偶數(shù)。等等。

        還有很多著名的數(shù)學(xué)家長久以來樂此不疲地研究平方數(shù),也把它的有關(guān)知識作為一種工具用于證明、計算其他定理、命題。例如,意大利著名的數(shù)學(xué)家Lagrange,他在整數(shù)論上也有有關(guān)平方數(shù)的Lagrange定理:任何一個正整數(shù)都可寫成四個平方數(shù)之和。并且在證明中他運(yùn)用了歐拉恒等式:若則

        此類例子還有很多,在此不一一列舉了。

        本論文是對一道有關(guān)平方數(shù)的競賽題的解法與推廣,我的目標(biāo)是從無序的題目中找出有序的、有規(guī)律的結(jié)果,從而體會數(shù)學(xué)的規(guī)律美。過程主要是猜想——計算機(jī)輔助驗(yàn)證——數(shù)學(xué)方法證明。

        猜想在一般的觀念里,似乎是具有一定的偶然性,但實(shí)際上,猜想要靠長期積累下來的對數(shù)學(xué)的直覺和經(jīng)驗(yàn)形成一種敏銳的洞察力和技巧。這是一個長期的過程。

        數(shù)學(xué)題不一定單純地做出答案就行了,很多情況下還可以更深入地研究,挖掘出它的背景,進(jìn)行再推廣、再發(fā)散。很多看似簡單的數(shù)學(xué)題其背后的內(nèi)容卻是十分豐富的,需要有心人去探討研究,這樣才能真正深刻的理解。有些計算量相當(dāng)大的數(shù)學(xué)題應(yīng)用筆算和一般的計算器已經(jīng)不能滿足需求,這時我們要借助計算機(jī),利用程序設(shè)計來解。現(xiàn)在我就要解一道有關(guān)于平方數(shù)的競賽題,由于計算量相當(dāng)?shù)拇螅P算和一般的計算器已經(jīng)不能滿足需求,所以我通過在VisualBasic6.0環(huán)境下對算法進(jìn)行分析和驗(yàn)證,驗(yàn)證結(jié)論的正確性。

        那些最初表現(xiàn)為令人懷疑的東西,只有經(jīng)過某種思維過程后,再通過起批準(zhǔn)和保證作用的證明,才能最終表現(xiàn)為無可置疑的真理。證明通過揭示事物的核心而增強(qiáng)理解,是數(shù)學(xué)的力量。

        二、研究目標(biāo)與主要內(nèi)容(含論文提綱)

        研究目標(biāo):本論文主要研究型如平方數(shù)的結(jié)構(gòu),我們知道,,,,等關(guān)于的結(jié)果是無序的,而對于,先關(guān)于n代入幾個數(shù),例如,,,,……,由此猜想:,并且這個結(jié)果可以用數(shù)學(xué)歸納法證明,所以是有序的。再進(jìn)一步可得,關(guān)于的輸出結(jié)果也是有序的。在競賽數(shù)學(xué)中經(jīng)常出現(xiàn)有關(guān)平方數(shù)的一些問題,因此系統(tǒng)研究型如平方數(shù),當(dāng)取什么值時,其結(jié)果是有序的,既有理論價值又有應(yīng)用價值。

        論文提綱:首先,尋找可能的取值。當(dāng)n取比較小的值時,可以采用筆算的方法來計算結(jié)果、找尋規(guī)律,但當(dāng)n取比較大的值時,發(fā)現(xiàn)計算量相當(dāng)大,用筆算和一般的計算器已經(jīng)遠(yuǎn)遠(yuǎn)不能滿足需求,這時就會想到借助計算機(jī)輔助計算,利用程序設(shè)計來解。我采用的是VisualBasic(簡稱VB)這種常見的程序設(shè)計語言。一種語言就是一種思想。經(jīng)過計算發(fā)現(xiàn)當(dāng)取任意正整數(shù),而時,都可以產(chǎn)生有序的結(jié)果。

        找規(guī)律:當(dāng)時,;

        當(dāng)時,;

        當(dāng)時,;

        當(dāng)時,;

        當(dāng)時,;

        當(dāng)時,;

        當(dāng)時,;

        當(dāng)時,;

        當(dāng)時,……

        由此可猜想得出:的一個有序的結(jié)果。同樣道理,、也可得出有序的結(jié)果,也可發(fā)現(xiàn)、、、、的結(jié)果沒有一定的規(guī)律可尋。猜想在一般的觀念里,似乎是具有一定的偶然性,但實(shí)際上,猜想要靠長期積累下來的對數(shù)學(xué)的直覺和經(jīng)驗(yàn)形成一種敏銳的洞察力和技巧。這是一個長期的過程。

        然后,利用計算機(jī)輔助計算驗(yàn)證預(yù)期結(jié)果對某些初值的正確性。

        最后,利用數(shù)學(xué)方法給出嚴(yán)謹(jǐn)?shù)恼撟C,而我所采用的論證方法是簡單易懂的數(shù)學(xué)歸納法。

        三、擬采取的研究方法、研究手段及技術(shù)路線、實(shí)驗(yàn)方案等

        利用文獻(xiàn)研究法與理論研究法,通過圖書館、書店、網(wǎng)絡(luò)等途徑對平方數(shù)相關(guān)各方面的資料進(jìn)行查閱、研究、歸納、總結(jié)。理論與實(shí)踐研究法相結(jié)合。先是通過對一些簡單的n值進(jìn)行觀察,再用筆算和計算器進(jìn)行初步計算,根據(jù)已得的結(jié)果,推廣到極大的n值,進(jìn)行理論上的猜想,然后運(yùn)用計算機(jī)輔助(VisualBasic)這種常見的程序設(shè)計語言計算驗(yàn)證,最后證明猜想的結(jié)果。

        四、研究的整體方案與工作進(jìn)度安排(內(nèi)容、步驟、時間)

        進(jìn)度安排:

        序號時間內(nèi)容

        112.1-2.14明確選題并完成文獻(xiàn)綜述和外文資料翻譯

        22.14-2.28完成開題報告并舉行開題報告會

        33.1-3.20完成計算、實(shí)驗(yàn)和繪圖,并完成論文的引言部分

        43.20-3.30完成論文的初稿

        53.30-4.20指導(dǎo)教師閱讀審看并修改,完成終稿

        64.20-4.30論文答辯,學(xué)生材料上交教務(wù)科

        75.1-5.15教務(wù)科材料匯總整理上

        五、研究的預(yù)期目標(biāo)及主要特點(diǎn)

        預(yù)期目標(biāo):在某種程度上,數(shù)學(xué)的整個對象就是在原來似乎混沌占統(tǒng)治地位的地方創(chuàng)造秩序,從無序和混沌之中抽取出結(jié)構(gòu)和不變量。所以,把無序的數(shù)字轉(zhuǎn)化為有序的模型,這才是數(shù)學(xué)家乃至所有數(shù)學(xué)愛好者所追求的。本論文就是研究一種平方數(shù),從一種無序的結(jié)果轉(zhuǎn)化為有序的、有規(guī)律的結(jié)果。

        主要特點(diǎn):進(jìn)行大膽的猜想,運(yùn)用計算機(jī)輔助計算幫助驗(yàn)證結(jié)果,得出的結(jié)論很有規(guī)律性。

        六、指導(dǎo)教師意見:

        指導(dǎo)教師簽名:

        第6篇:vb程序設(shè)計論文范文

        關(guān)鍵詞:項(xiàng)目驅(qū)動;實(shí)踐教學(xué);面向?qū)ο螅簧芷陂_發(fā)方法

        中圖分類號:G642文獻(xiàn)標(biāo)識碼:B

        文章編號:1672-5913(2007)08-0025-03

        1 引言

        在開發(fā)類程序設(shè)計課程中,最適合初學(xué)者學(xué)習(xí)的便是Visual Basic(簡稱VB),它是第一個可視化編程開發(fā)工具。就VB本身的特點(diǎn)而言,它概念多、實(shí)踐性強(qiáng)、涉及面廣,既像其他程序語言一樣有其自身的語法和編程思維,又與傳統(tǒng)的面向過程的驅(qū)動語言有所不同,最特別的在于它采取的是面向?qū)ο蟮氖录?qū)動編程。傳統(tǒng)的程序語言教學(xué)通常以知識點(diǎn)的層次遞進(jìn)為體系。對于VB程序設(shè)計而言也是這樣,它就是按照VB代碼基礎(chǔ)、程序基本結(jié)構(gòu)、數(shù)組、過程、控件、文件、數(shù)據(jù)庫等知識點(diǎn)層次遞進(jìn)方式來展開教學(xué)的。在學(xué)習(xí)每個知識點(diǎn)時,用一定的例題對知識點(diǎn)進(jìn)行練習(xí)(其他開發(fā)類課程,例如PowerBuilder、Delphi等也有類似特點(diǎn))。這種層次遞進(jìn)的學(xué)習(xí)體系總體來說是符合人的認(rèn)知規(guī)律的,但在VB的教學(xué)過程中,我們發(fā)現(xiàn)確實(shí)存在一些缺陷:

        1.1 對知識應(yīng)用缺乏整體感

        在層次遞進(jìn)的知識學(xué)習(xí)過程中,無論是理論知識的學(xué)習(xí)還是實(shí)際應(yīng)用,通常都是面向局部的,這很容易使學(xué)生缺乏整體感。就像描繪一幅人的肖像一樣,如果只顧描繪各個部位,沒有整體的協(xié)調(diào)和統(tǒng)一,就無法完成一幅令人滿意的作品。如果按部就班地學(xué)習(xí)VB程序設(shè)計的各個知識點(diǎn),而沒有依托一個完整的實(shí)際項(xiàng)目,就會使知識點(diǎn)的學(xué)習(xí)支離破碎,不成體系,學(xué)完以后也容易遺忘。

        1.2 缺乏實(shí)際項(xiàng)目的開發(fā)體會

        在層次遞進(jìn)的知識學(xué)習(xí)過程中,強(qiáng)調(diào)的是各個局部知識的理解和掌握,而忽視了這些知識的綜合利用,忽視了學(xué)生利用知識描述和解決實(shí)際問題能力的培養(yǎng)。試想,如果醫(yī)學(xué)院的學(xué)生只學(xué)習(xí)理論知識,而不去臨床診斷,不去學(xué)習(xí)如何綜合地考察一個病人,那他是做不了醫(yī)生的。同樣,學(xué)習(xí)VB程序設(shè)計,如果只停留在知識點(diǎn)的學(xué)習(xí)和例題的練習(xí)上,而不去經(jīng)過實(shí)際項(xiàng)目開發(fā)的歷練和體驗(yàn),就無法直接感受所學(xué)知識在實(shí)際工作中的作用和地位。這種學(xué)習(xí)還會抑制學(xué)生的學(xué)習(xí)興趣,影響學(xué)習(xí)效果。

        2 項(xiàng)目驅(qū)動教學(xué)法

        項(xiàng)目驅(qū)動教學(xué)法是指在教學(xué)中引入若干個項(xiàng)目案例,按照實(shí)際軟件開發(fā)中的方法與步驟展開教學(xué)。

        軟件項(xiàng)目開發(fā)的主要方法有:傳統(tǒng)的生命周期的開發(fā)方法、面向?qū)ο蟮拈_發(fā)方法、可視化的開發(fā)方法等。因?yàn)閂B本身是面向?qū)ο蠛涂梢暬_發(fā)的典型工具,學(xué)生通過整個課程的學(xué)習(xí)會逐步認(rèn)識面向?qū)ο蠛涂梢暬_發(fā)方法的主要特征,所以我們采用的項(xiàng)目驅(qū)動教學(xué)法還是選擇了學(xué)生比較容易接受的傳統(tǒng)生命周期軟件開發(fā)方法作為教學(xué)設(shè)計的主線,其間再貫穿介紹面向?qū)ο蠛涂梢暬能浖_發(fā)方法。

        傳統(tǒng)的生命周期開發(fā)方法把軟件開發(fā)周期劃分為若干個階段,每個階段有相對獨(dú)立的任務(wù),然后逐步完成每個階段的任務(wù)。各個階段的工作按自上而下,從抽象到具體的順序進(jìn)行,傳統(tǒng)的生命周期開發(fā)方法可以用如圖1所示的瀑布模型來模擬。

        3 “項(xiàng)目驅(qū)動”教學(xué)模式的特點(diǎn)

        3.1 創(chuàng)造項(xiàng)目實(shí)踐環(huán)境

        在“項(xiàng)目驅(qū)動”教學(xué)過程中,學(xué)生在導(dǎo)師的帶領(lǐng)下,一邊進(jìn)行專業(yè)理論知識的學(xué)習(xí),一邊進(jìn)行實(shí)際的應(yīng)用項(xiàng)目開發(fā)。學(xué)生一直處在能主動學(xué)習(xí)、自主學(xué)習(xí)、相互學(xué)習(xí)、積極溝通、不斷實(shí)踐的學(xué)習(xí)環(huán)境中。學(xué)生在實(shí)際軟件項(xiàng)目的驅(qū)動下,帶著問題學(xué)習(xí)理論知識和開發(fā)技術(shù),學(xué)習(xí)導(dǎo)師在項(xiàng)目實(shí)踐中的思維能力、問題求解能力和處理復(fù)雜任務(wù)的能力。通過這個教學(xué)過程,學(xué)生的專業(yè)技能、開發(fā)素養(yǎng)將隨著問題的求解和任務(wù)的完成得到整體提升。

        3.2 教師成為導(dǎo)師

        基于“項(xiàng)目驅(qū)動”的教學(xué)把知識轉(zhuǎn)化為理論和技能相結(jié)合的教學(xué)方式,在這種教學(xué)方式下,教師不再是知識和理論的簡單灌輸者,而是發(fā)揮著導(dǎo)師的作用,循序漸進(jìn)地引導(dǎo)學(xué)生在實(shí)踐中學(xué)習(xí)理論,在實(shí)踐中消化理論,應(yīng)用理論,在實(shí)踐中掌握知識。在工作室中,學(xué)生按項(xiàng)目被分成若干小組,各小組的活動在導(dǎo)師的指導(dǎo)和監(jiān)控下進(jìn)行。在項(xiàng)目驅(qū)動教學(xué)中,教師首先扮演著“信息庫”的作用,學(xué)生接受項(xiàng)目后,教師除隨時給學(xué)生補(bǔ)充必要的理論和技能知識信息外。更重要的是在整個項(xiàng)目開發(fā)過程中,適時啟發(fā)、解決學(xué)生在學(xué)習(xí)和實(shí)踐過程中存在的各種個體問題,激發(fā)他們的學(xué)習(xí)和創(chuàng)造熱情,引導(dǎo)學(xué)生盡快進(jìn)入角色和狀態(tài)。幫助學(xué)生明確項(xiàng)目的目標(biāo),掌握理解項(xiàng)目開發(fā)的總體思路和全部過程。

        3.3 強(qiáng)調(diào)能力的培養(yǎng)

        基于“項(xiàng)目驅(qū)動”教學(xué)的主要目的是加強(qiáng)學(xué)生軟件應(yīng)用開發(fā)能力的培養(yǎng)。通常,實(shí)踐性知識是一種隱性知識,我們倡導(dǎo)“項(xiàng)目驅(qū)動”教學(xué)正是希望通過“項(xiàng)目驅(qū)動”教學(xué)過程中的諸項(xiàng)要素和功能,使得一些隱性的思維過程,特別是隱藏在軟件開發(fā)過程中的一些核心要素和策略顯性化,而這些往往正是軟件開發(fā)核心能力的重要體現(xiàn)。通過軟件工作室的學(xué)習(xí),學(xué)生將逐步具備軟件應(yīng)用開發(fā)的各種基本能力,系統(tǒng)維護(hù)和配置能力,團(tuán)隊(duì)合作精神,使我們培養(yǎng)的學(xué)生真正實(shí)現(xiàn)與社會無縫連接。

        4 實(shí)施“項(xiàng)目驅(qū)動”教學(xué)的可行性

        4.1 開放的實(shí)驗(yàn)環(huán)境――軟件工作室

        在傳統(tǒng)實(shí)驗(yàn)教學(xué)中,基本上是以老師為主體,學(xué)生按照老師規(guī)定的實(shí)驗(yàn)要求和步驟被動地接受知識和技能。而在項(xiàng)目驅(qū)動的教學(xué)環(huán)境――軟件工作室里,學(xué)生在學(xué)習(xí)知識、技能和實(shí)施項(xiàng)目計劃的過程中,能夠有更獨(dú)立、更自由的廣闊空間。在工作室中,所有的知識講座、技術(shù)交流、專題討論、領(lǐng)域知識學(xué)習(xí)等各項(xiàng)教學(xué)活動都是開放的,學(xué)生允許跨項(xiàng)目組、跨工作室學(xué)習(xí),學(xué)生隨時可以走上講臺闡述自己的觀點(diǎn),發(fā)表自己的感想,交流自己的經(jīng)驗(yàn),尋求需要的幫助。在整個學(xué)習(xí)和開發(fā)的過程中,團(tuán)隊(duì)發(fā)揮著重要的作用。在這里,老師傳授知識的唯一作用在淡化,而更多的是引導(dǎo),培育學(xué)生學(xué)習(xí)新知識的能力。對學(xué)生出現(xiàn)的問題通常并不是直接告訴學(xué)生,而是提供解決問題的途徑,讓學(xué)生利用團(tuán)隊(duì)的力量自己去解決問題。在這里,學(xué)生的學(xué)習(xí)積極性得到了充分的釋放和發(fā)揮,學(xué)生的學(xué)習(xí)個性得到了有效的保護(hù)和張揚(yáng),學(xué)生的團(tuán)隊(duì)合作精神得到了很好的培育和加強(qiáng)。

        4.2 豐富的網(wǎng)絡(luò)資源

        軟件工作室的每一臺計算機(jī)都已接入了局域網(wǎng)且全部與校園網(wǎng)相連,這為學(xué)生提供了很好的網(wǎng)絡(luò)學(xué)習(xí)平臺。在學(xué)院網(wǎng)站上提供了各種豐富的網(wǎng)絡(luò)學(xué)習(xí)資源,包括網(wǎng)絡(luò)課程、電子教案、實(shí)驗(yàn)指導(dǎo)、在線測試以及歷年來軟件學(xué)院各屆畢業(yè)生完成的近120項(xiàng)應(yīng)用軟件系統(tǒng)等,這些資源面向工作室的同學(xué)全部開放。同時,導(dǎo)師非常注重教育學(xué)生如何利用網(wǎng)絡(luò)學(xué)習(xí)解決問題的新知識,尋找解決問題的新途徑,求助解決問題的新方法。

        4.3 雄厚的師資力量

        項(xiàng)目驅(qū)動教學(xué)對教師的綜合素質(zhì)提出了更高的要求。作為工作室的導(dǎo)師,不但要有能力獨(dú)立地從事相關(guān)教學(xué)科研工作,還要能夠組織和帶領(lǐng)學(xué)生對外承接項(xiàng)目,進(jìn)行真刀真槍的項(xiàng)目開發(fā),開展對外社會服務(wù),并以項(xiàng)目為主線組織專業(yè)教學(xué)。為了實(shí)施項(xiàng)目驅(qū)動教學(xué)法,學(xué)院除嚴(yán)把進(jìn)人關(guān)外,(所進(jìn)人員必須是碩士學(xué)歷以上且滿足三能要求,即能教學(xué),能科研,能開發(fā))還在全院開展了學(xué)歷學(xué)位提升、進(jìn)修訪問、校企合作、各種學(xué)術(shù)講座和技術(shù)交流,以及經(jīng)常性的教研、科研和讀書等活動,以不斷提高導(dǎo)師的教學(xué)、科研和應(yīng)用開發(fā)能力。另外,學(xué)院還聘請了一批著名軟件企業(yè)的高級專家為學(xué)院的兼職教師,內(nèi)外教師的互動,不僅為工作室的教學(xué)增添了活力,也極大的加強(qiáng)了學(xué)院面向應(yīng)用的總體實(shí)力。

        5 “項(xiàng)目驅(qū)動”教學(xué)實(shí)施過程

        5.1 項(xiàng)目設(shè)計

        導(dǎo)師根據(jù)教學(xué)進(jìn)度和教學(xué)計劃,選擇難度適中的項(xiàng)目,將該項(xiàng)目分成若干相對獨(dú)立的子項(xiàng)目分配給學(xué)生,并圍繞項(xiàng)目準(zhǔn)備好相關(guān)的理論知識、領(lǐng)域知識和技術(shù)知識等。項(xiàng)目一般來源于教師的縱、橫向課題,學(xué)院承接的對外服務(wù)或經(jīng)典教學(xué)項(xiàng)目等。

        5.2 實(shí)施的形式

        學(xué)生在經(jīng)過兩年的基礎(chǔ)知識和專業(yè)知識學(xué)習(xí)后,三年級進(jìn)入軟件工作室進(jìn)行為期一年的學(xué)習(xí)與開發(fā)工作。在工作室中,除少部分涉及開發(fā)的公共理論知識和工程知識由導(dǎo)師統(tǒng)一講授外,其他學(xué)習(xí)將圍繞項(xiàng)目以自主學(xué)習(xí)、協(xié)作學(xué)習(xí),面授輔導(dǎo)、答疑、小組研討、調(diào)查研究、技術(shù)交流等多種形式組成,具體實(shí)施根據(jù)教學(xué)內(nèi)容和學(xué)生的認(rèn)知情況靈活掌握。目的在于利用各種信息技術(shù)提高教學(xué)質(zhì)量、教學(xué)效率,培養(yǎng)學(xué)生的自主學(xué)習(xí)能力、研究能力、創(chuàng)造性思維能力和創(chuàng)造性實(shí)踐能力。自主學(xué)習(xí)不是由導(dǎo)師直接告訴學(xué)生應(yīng)當(dāng)如何去解決面臨的問題,而是由導(dǎo)師向?qū)W生提供解決該問題的有關(guān)線索(例如需要搜集哪一類資料、從何處獲取有關(guān)的信息資料以及現(xiàn)實(shí)中專家解決類似問題的探索過程等)。如果學(xué)生在學(xué)習(xí)過程中遇到問題,教會學(xué)生如何通過電話、電子郵件、BBS和在線討論等方式與同學(xué)、導(dǎo)師甚至社會進(jìn)行探討和交流。特別要教會學(xué)生如何到浩瀚的Internet網(wǎng)絡(luò)中去搜索、查詢自己需要的資料,不斷提高自己的程序設(shè)計能力。協(xié)作學(xué)習(xí)是在個人自主學(xué)習(xí)的基礎(chǔ)上進(jìn)行小組協(xié)商、交流、討論等,并通過不同觀點(diǎn)的交鋒,補(bǔ)充、修正、加深每個學(xué)生對當(dāng)前問題的理解。通過這種合作和溝通,學(xué)生可以看到問題的不同側(cè)面和解決途徑,從而對知識產(chǎn)生新的洞察。要特別提倡啟發(fā)和誘導(dǎo)學(xué)生自己去發(fā)現(xiàn)規(guī)律,自己去糾正錯誤和補(bǔ)充不足,逐步培養(yǎng)學(xué)生自主學(xué)習(xí)自我學(xué)習(xí)的的能力和習(xí)慣。

        5.3 成績的評定

        學(xué)習(xí)成績評定是工作室學(xué)習(xí)的重要環(huán)節(jié),我們要求成績評定應(yīng)具有激勵、反饋、導(dǎo)向三大功能,成績評定應(yīng)有利于學(xué)生的進(jìn)一步發(fā)展。因此,相應(yīng)的成績評定體系在評定內(nèi)容上應(yīng)該重視學(xué)生解決實(shí)際問題的能力、創(chuàng)新能力、實(shí)踐和動手能力的體現(xiàn),應(yīng)該重視學(xué)生良好的心理素質(zhì)、科學(xué)精神、認(rèn)真負(fù)責(zé)的工作態(tài)度、積極向上的學(xué)習(xí)熱情等方面的體現(xiàn)。對于學(xué)生中出現(xiàn)的閃光點(diǎn),導(dǎo)師更應(yīng)積極評價并加以肯定。

        在工作室中,成績評定采用項(xiàng)目答辯的方式進(jìn)行。首先,每個項(xiàng)目小組推薦一名學(xué)生在工作室里進(jìn)行主答辯,并演示作品,其他學(xué)生進(jìn)行補(bǔ)充,導(dǎo)師和其他小組的同學(xué)可以隨時向當(dāng)前正在答辯的項(xiàng)目組的任一學(xué)生進(jìn)行提問,最后結(jié)合項(xiàng)目的難度和答辯情況給每個項(xiàng)目和學(xué)生做出最終的考核成績。

        6 總結(jié)

        基于“項(xiàng)目驅(qū)動”的教學(xué)模式在江西師范大學(xué)軟件學(xué)院已經(jīng)實(shí)施三年了,實(shí)踐表明,這種以項(xiàng)目為主線,以學(xué)生為主體,以導(dǎo)師為核心,以工作室為環(huán)境的教學(xué)模式有利于培養(yǎng)學(xué)生的軟件應(yīng)用開發(fā)能力,有利于培養(yǎng)學(xué)生的創(chuàng)新能力和實(shí)踐動手能力,有利于培養(yǎng)學(xué)生的團(tuán)隊(duì)合作精神,有利于加強(qiáng)學(xué)生的個性化教育和極大提高學(xué)生自主學(xué)習(xí)、自我學(xué)習(xí)、相互學(xué)習(xí)的學(xué)習(xí)熱情。今后,我們將進(jìn)一步加強(qiáng)“項(xiàng)目驅(qū)動”教學(xué)中課程體系及其內(nèi)在關(guān)系的研究、進(jìn)一步加強(qiáng)“項(xiàng)目驅(qū)動”教學(xué)與畢業(yè)設(shè)計銜接以及與導(dǎo)師科研和產(chǎn)品研發(fā)的關(guān)聯(lián)研究,進(jìn)一步加強(qiáng)“項(xiàng)目驅(qū)動”教學(xué)的網(wǎng)絡(luò)教學(xué)平臺搭建及有效利用的研究,以使這項(xiàng)教學(xué)改革不斷完善和成熟。

        參考文獻(xiàn):

        [1] 雷剛,黃明和,尹紅.培養(yǎng)創(chuàng)造應(yīng)用型軟件人才的幾點(diǎn)建議[J].全國高等院校計算機(jī)基礎(chǔ)教育研究會優(yōu)秀論文集,2004,(1):45-48,2004.8.

        [2] 黃明和,雷剛,郭斌等.面向應(yīng)用的軟件工程專業(yè)教學(xué)模式改革研究與實(shí)踐[J].全國高等院校計算機(jī)基礎(chǔ)教育研究會優(yōu)秀論文集, 2006,(1):687-691,2006.7.

        [3] 黃曉玲,段鳳云,趙建科.基于“項(xiàng)目目標(biāo)法”的實(shí)踐教學(xué)[J].實(shí)驗(yàn)室研究與探索,2006,25,(3):280-286.

        [4] 曾煌興,周曉宏.項(xiàng)目開發(fā)教學(xué)法的教學(xué)設(shè)計策略及其應(yīng)用[J].職教論壇,2005,(6):55-57.

        作者簡介:

        柯勝男(1981-),女,工程碩士,助教,主要研究方向?yàn)檐浖こ汤碚撆c技術(shù)、面向?qū)ο蠹夹g(shù)等。

        黃明和(1955-),男,碩士生導(dǎo)師,教授,主要研究方向?yàn)槊嫦驅(qū)ο蠹夹g(shù)、網(wǎng)絡(luò)計算技術(shù)等。

        第7篇:vb程序設(shè)計論文范文

        1.1 課題的提出 1

        1.2 照明片區(qū)網(wǎng)絡(luò)化的目的意義 1

        1.3 照明片區(qū)網(wǎng)絡(luò)化的國內(nèi)外現(xiàn)狀 1

        1.4 高等學(xué)校用電管理狀況 2

        1.5 本設(shè)計主要完成的工作 2

        第2章 片區(qū)照明控制總體方案設(shè)計 4

        2.1 網(wǎng)絡(luò)和智能照明控制系統(tǒng)規(guī)劃 4

        2.2 照明智能控制器完成的功能 5

        2.3 棟層單片機(jī)完成的功能 5

        2.4 上位PC機(jī)完成的功能 5

        2.5 兩級通信網(wǎng)絡(luò)的實(shí)現(xiàn) 5

        2.6 小結(jié) 6

        第3章 片區(qū)照明網(wǎng)絡(luò)化硬件的設(shè)計與實(shí)現(xiàn) 7

        3.1 方案選擇 7

        3.2 器件的選定 7

        3.3 房間層節(jié)點(diǎn)的硬件總體構(gòu)成 7

        3.3.1 信息采集部分 8

        3.3.2 執(zhí)行部分 8

        3.3.3 通信部分 8

        3.4 棟層節(jié)點(diǎn)的硬件總體構(gòu)成 8

        3.5 人機(jī)交互部分 9

        3.5.1 鍵盤模塊 9

        3.5.2 LCD顯示模塊 10

        3.5.3 房間層信息的存儲 10

        3.6 層間信息的傳送方式 11

        3.7  PC機(jī)與單片機(jī)的串口通訊硬件設(shè)計 11

        3.7.1 系統(tǒng)硬件設(shè)計 11

        3.7.2 電平轉(zhuǎn)換 12

        3.8 單片機(jī)串行通信接口的擴(kuò)展 13

        3.8.1 串行通信接口原理 14

        3.8.2 通訊接口的擴(kuò)展方法 14

        第4章 照明片區(qū)網(wǎng)絡(luò)化軟件功能的設(shè)計與實(shí)現(xiàn) 17

        4.1 房間層信息的采集 17

        4.1.1 重發(fā)機(jī)制的實(shí)現(xiàn) 17

        4.1.2 單個房間層節(jié)點(diǎn)的狀態(tài)規(guī)定 17

        4.1.3 棟層對房間層地址的讀寫 18

        4.1.4 棟層對房間層信息的讀寫 18

        4.2 PC機(jī)串行通信設(shè)計 18

        4.2.1 PC機(jī)串行通信的原理 18

        4.2.2 通信機(jī)制及結(jié)構(gòu) 19

        4.3 AT89S52單片機(jī)串行通信 19

        4.3.1 串行口工作方式 19

        4.3.2 方式1的應(yīng)用介紹 20

        4.4 PC機(jī)與單片機(jī)間的通訊 20

        4.4.1  基于VB6.0的PC機(jī)通信程序設(shè)計 21

        4.4.2  MSComm控件介紹 21

        4.4.3  上位PC機(jī)通訊程序設(shè)計 22

        4.4.4  AT89S52單片機(jī)通信程序設(shè)計 24

        第5章 系統(tǒng)調(diào)試 27

        5.1 調(diào)試過程 27

        5.2 調(diào)試結(jié)果 29

        結(jié)  論 30

        致  謝 31

        參考文獻(xiàn) 32

         

        第1章 前  言

        1.1 課題的提出

        隨著電力能源需求缺口越來越大,照明浪費(fèi)成為一個十分突出的問題,所以實(shí)現(xiàn)照明燈具控制的自動化和智能化,做到依照自然光的強(qiáng)度以及室內(nèi)人員的數(shù)目決定開燈的數(shù)目,就成為節(jié)約電力資源的一個很好途徑。而多個智能節(jié)點(diǎn)間的協(xié)調(diào)必然要求以一個網(wǎng)絡(luò)的形式實(shí)現(xiàn)[1]。隨著計算機(jī)技術(shù)的發(fā)展,實(shí)現(xiàn)照明的網(wǎng)絡(luò)化和照明的遠(yuǎn)程控制成為可能。

        1.2 照明片區(qū)網(wǎng)絡(luò)化的目的意義

        從2006年6月起,全國電力需求快速增長,一些地區(qū)陸續(xù)拉閘限電,在去年夏季高峰時期,全國先后有21個省份出現(xiàn)拉閘限電現(xiàn)象。去年許多省市高溫不退,空調(diào)使用和企業(yè)生產(chǎn)導(dǎo)致不少地區(qū)用電負(fù)荷成倍增長。許多城市對路燈、景觀燈也采取了關(guān)閉限時等措施,以保證正常的生產(chǎn)生活的用電。我國存在著嚴(yán)重的電力浪費(fèi)問題,無用的照明浪費(fèi)在其中占有了很大的比重,單以我校的教室照明舉例來說,燈光的開關(guān)安裝在教室門旁,學(xué)生進(jìn)入教室習(xí)慣性的將教室燈全部的開啟,而且在離開時也沒有人走燈滅的習(xí)慣,管理人員到一定的時間才對教室里的燈具進(jìn)行管理,這樣既浪費(fèi)電力資源,也不利于管理。如果對片區(qū)中每個房間都安裝一個照明控制器,由其獨(dú)立的對本房間內(nèi)的燈具開關(guān)做出控制,做到本房間智能控制器相對于一定人數(shù)開啟最少的燈具,這是可以解決一部分電力資源浪費(fèi)問題,但這樣并不能最大限度上減小總體的電力資源浪費(fèi)。為了實(shí)現(xiàn)電力資源浪費(fèi)的最小化,必須使得各個房間照明控制器協(xié)調(diào)工作。而照明控制器的協(xié)調(diào)工作肯定是建立在網(wǎng)絡(luò)上的,通過網(wǎng)絡(luò)的協(xié)調(diào)管理,做到每個房間開啟最少的燈具,片區(qū)內(nèi)有最少數(shù)量的房間開燈。

        1.3 照明片區(qū)網(wǎng)絡(luò)化的國內(nèi)外現(xiàn)狀

        專家預(yù)言,在不久的將來,智能照明將取代普通照明,成為照明行業(yè)的新銳主流產(chǎn)品。照明產(chǎn)品,將要進(jìn)入到“遙控時代”。業(yè)內(nèi)人士分析,智能照明進(jìn)入快速成長期,需要幾年時間,大概到2008年左右,智能照明的市場容量將突破100億元大關(guān)。今年2月份,在奧運(yùn)科技前景論壇上,智能照明被提上議程,國家建設(shè)部要求2010年在全國大中城市中,60%的住宅實(shí)現(xiàn)智能化。上海市有關(guān)部門決定,今年夏季用電高峰時,市中心主要景觀道路上的路燈要安裝節(jié)能的智能照明系統(tǒng)。種種跡象表明,智能照明市場前景將更加樂觀。遠(yuǎn)程控制成了遙控時代的重要標(biāo)志。據(jù)悉,雖然智能照明技術(shù)具有相當(dāng)?shù)膹?fù)雜性,但國內(nèi)技術(shù)水平達(dá)到實(shí)用水平的企業(yè)為數(shù)不多。國外從事智能照明的專業(yè)公司,如美國的路創(chuàng)、澳大利亞的邦奇以及索恩、ABB等公司也在很早以前就完成了技術(shù)上的突破[2]。據(jù)悉,國際知名的半導(dǎo)體制造商ST半導(dǎo)體正準(zhǔn)備推出燈光控制專用的、結(jié)合無線射頻功能的控制芯片采用無線網(wǎng)絡(luò)技術(shù)的智能燈光控制系統(tǒng)產(chǎn)品最近也相繼出現(xiàn)在消費(fèi)者面前。德國邁戈公司推出的MCO智能情景照明控制系統(tǒng)近日進(jìn)入我國市場。其產(chǎn)品的智能化特點(diǎn)主要表現(xiàn)在以下幾方面:實(shí)現(xiàn)了根據(jù)場景對組合燈光進(jìn)行調(diào)節(jié)和控制的功能;實(shí)現(xiàn)了個性化設(shè)計:可以設(shè)定“看電視”、“會客”、“晚餐”、“離家”等燈光情景[3],開關(guān)方式可選擇電腦、遙控器、輕觸式按鍵開關(guān)、紅外線自動感應(yīng)開關(guān)等方式對照明情景進(jìn)行一對一、一對多、多對一的靈活控制:具有系統(tǒng)燈具的無級亮度調(diào)節(jié)和自動延時功能,停電狀態(tài)的記憶功能和開關(guān)狀態(tài)的鎖定功能,使系統(tǒng)使用更加安全可靠。

        1.4 高等學(xué)校用電管理狀況

        目前,高校照明用電的管理基本是處于一種粗放式的管理狀態(tài)。其管理一般是無專人管理,由學(xué)生自行控制開啟,再有值日人員在中午、下午和晚自習(xí)后關(guān)閉開關(guān),根據(jù)作息時間開啟和關(guān)閉整個教學(xué)樓的照明電源。是有專人負(fù)責(zé),即按照天氣情況分樓分層送電。對教學(xué)樓照明管理的要求是在充分保證教室的照度的前提下,盡可能地節(jié)約電能,但是這些都不同程度上存在著缺欠,造成電能的浪費(fèi)。第一種模式的特點(diǎn)是可以靈活地滿足樓層和超想的照度要求,不限和控制簡單,是常用的一種方式,但也是最為浪費(fèi)電。人眼在強(qiáng)光下對弱光不敏感,在自然光照大于燈具光照的情況下,難以察覺到燈光,燈白天長明等而造成更大的浪費(fèi)。據(jù)不完全統(tǒng)計,百分之八十的教學(xué)樓存在著白天光照良好的情況下,教室燈依然點(diǎn)亮,一個教室的長明燈看起來耗能不大,但從整個學(xué)校來說,卻是驚人,以西南科技大學(xué)為例,電能浪費(fèi)量就十分嚴(yán)重,由此可見高校教學(xué)樓照明的管理改革勢在必行,也為我們提出了緊迫的課題。

        1.5 本設(shè)計主要完成的工作

        本設(shè)計中主要完成了以下幾項(xiàng)工作:

        1、棟層單片機(jī)接收各個照明控制器所采集的房間光強(qiáng)信息和 人員信息傳送給上位PC機(jī),接收上位PC機(jī)根據(jù)前述獲得的信息所做出的決策并傳送給相應(yīng)的照明智能控制器。

        2、實(shí)現(xiàn)了單片機(jī)通信串口的擴(kuò)展。

        3、完成了單片機(jī)與PC機(jī)接口電路的設(shè)計,并且實(shí)現(xiàn)了單片機(jī)與PC機(jī)之間串行通訊,通過VB6.0編寫出PC機(jī)上可視化的通訊界面。

        第2章 片區(qū)照明控制總體方案設(shè)計

        本章主要對網(wǎng)絡(luò)化照明進(jìn)行研究,得出一個網(wǎng)絡(luò)化智能照明控制系統(tǒng)的總體設(shè)計方案。后面的整個設(shè)計將圍繞這個方案進(jìn)行。

        2.1 網(wǎng)絡(luò)和智能照明控制系統(tǒng)規(guī)劃

        本設(shè)計中建立了一個與小區(qū)照明相適應(yīng)的網(wǎng)絡(luò)模型來管理各個房間的智能控制器。關(guān)于該網(wǎng)絡(luò)模型建立的詳細(xì)敘述如下:

        整個智能照明控制網(wǎng)絡(luò)規(guī)劃的設(shè)想是能夠適應(yīng)一個相對集中的建筑群中,多個建筑體需要集散照明控制的情況。系統(tǒng)網(wǎng)絡(luò)規(guī)劃示意如圖2-1所示。照明控制系統(tǒng)是由一個上位PC機(jī)、下位單片機(jī)以及照明智能控制器組成的三層兩級網(wǎng)絡(luò)。在最底端,照明智能控制器負(fù)責(zé)照明現(xiàn)場的狀態(tài)檢測與控制輸出,進(jìn)行信息的采集與開關(guān)燈的工作,具體面向的可以是一個房間,一個相對獨(dú)立的區(qū)域或其它需要較多關(guān)聯(lián)控制的場合。在最頂端,上位PC機(jī)負(fù)責(zé)整個系統(tǒng)的功能協(xié)調(diào)與狀態(tài)監(jiān)測。一方面,上位PC機(jī)收集下位單片機(jī)的狀態(tài)信息,執(zhí)行必要的本地集中控制,另一方面也可能在需要時通過網(wǎng)絡(luò)接口連接到局域網(wǎng),按要求提供定期數(shù)據(jù)報告以及接收控制數(shù)據(jù)更新和遙控遙測命令。在上位PC機(jī)和照明智能控制器之間是單片機(jī)控制系統(tǒng)。棟層單片機(jī)主要對房間層的照明智能控制器進(jìn)行控制。

         

        圖2-1 網(wǎng)絡(luò)分層結(jié)構(gòu)

        2.2 照明智能控制器完成的功能

        照明智能控制器與燈光控制有著最為直接的聯(lián)系,其應(yīng)當(dāng)做到向上層即棟層傳送本房間內(nèi)的光強(qiáng)信息及人員數(shù)目信息,接收上一層傳來的命令,執(zhí)行開關(guān)燈的操作。

        2.3 棟層單片機(jī)完成的功能

        棟層單片機(jī)作為三層分層結(jié)構(gòu)中的中間層,應(yīng)當(dāng)完成接收房間層照明智能控制器的信息并做出決策;將由房間層傳來的信息進(jìn)行匯總處理傳送給上位PC機(jī);接收上位PC機(jī)傳來的命令,解析該命令后與自身作出的決策作比較向房間層發(fā)出命令,之所以要做出比較后發(fā)出命令是因?yàn)闂潓涌梢杂扇斯た刂茝?qiáng)行開啟或關(guān)閉某間房間的燈具;在整個系統(tǒng)中,管理人員的權(quán)限是凌駕于系統(tǒng)之上的。最終發(fā)出命令的過程與房間層相類似,若上層無命令傳入且無人工介入,則棟層將按照自身作出的決策發(fā)出命令。棟層還要完成房間層節(jié)點(diǎn)的增刪工作和人工開關(guān)某個房間燈具的工作。

        2.4 上位PC機(jī)完成的功能

        在圖2-1中可以看到,上位PC機(jī)位于整個網(wǎng)絡(luò)的最頂層,其將完成接收棟層傳來的信息,將其保存并加以分析,發(fā)出相應(yīng)的命令以協(xié)調(diào)各棟層節(jié)點(diǎn)的工作;完成棟層節(jié)點(diǎn)的增刪工作;人工對棟層節(jié)點(diǎn)的開關(guān)。本設(shè)計中將小區(qū)層的位置向前推進(jìn)了,使得小區(qū)層的PC機(jī)與下位單片機(jī)的遠(yuǎn)程無線通信變成近距離串行通信。

        上一層較之于下一層有更高的優(yōu)先級,只有在上一層無命令時,最終的決策才由本層作出。而且同一層內(nèi)的各個節(jié)點(diǎn)是不需要通信的,只需要對其下層的節(jié)點(diǎn)進(jìn)行通信或?qū)ζ渖蠈拥墓?jié)點(diǎn)進(jìn)行通信。所以上層節(jié)點(diǎn)可以采用輪詢的方式對其下層進(jìn)行通信。

        2.5 兩級通信網(wǎng)絡(luò)的實(shí)現(xiàn)

        為了達(dá)到各層之間信息的相互傳遞,就需要建立層與層之間的通信機(jī)制,根據(jù)本設(shè)計的要求,整個設(shè)計軟件采用結(jié)構(gòu)化模塊化的設(shè)計方法,易于維護(hù)和擴(kuò)展。根據(jù)本設(shè)計的軟硬件需要完成的系統(tǒng)功能,系統(tǒng)軟硬件大致可以分為三個功能模塊:上位PC機(jī)模塊,下位AT89S52單片機(jī)模塊,數(shù)據(jù)通信模塊。上位PC機(jī)模塊主要完成與操作人員的交互功能,包括參數(shù)設(shè)定、數(shù)據(jù)顯示及監(jiān)控等功能。AT89S52單片機(jī)模塊作為數(shù)據(jù)采集及控制模塊,其功能包括系統(tǒng)初始化、采集數(shù)據(jù)、數(shù)據(jù)的處理及分析和給出控制命令。三個模塊的關(guān)系是:上位PC機(jī)模塊是指揮中心,決定整個系統(tǒng)程序的結(jié)構(gòu)和流程;AT89S52單片機(jī)模塊按輪詢方式對各個照明控制器進(jìn)行訪問,并自動對照明進(jìn)行控制;數(shù)據(jù)通信模塊可以實(shí)現(xiàn)PC機(jī)與AT89S52單片機(jī)之間數(shù)據(jù)的傳輸。

        2.6 小結(jié)

        本章中建立了一個三層兩級網(wǎng)絡(luò)模型,對層與層通信方式進(jìn)行了規(guī)劃,完成了對燈光控制網(wǎng)絡(luò)化的總體構(gòu)架。以后的設(shè)計將在此構(gòu)架內(nèi)完成。

        第3章 片區(qū)照明網(wǎng)絡(luò)化硬件的設(shè)計與實(shí)現(xiàn)

        本設(shè)計的硬件由三大部分組成,即棟層單片機(jī)對下位照明智能控制器信息的收發(fā)電路,人機(jī)交互界面即LCD顯示電路和鍵盤部分,棟層單片機(jī)與上位PC機(jī)間的通信電路。下面對本設(shè)計的方案及硬件電路的設(shè)計進(jìn)行說明。

        3.1 方案選擇

        由于本設(shè)計包含了一個三層兩級網(wǎng)絡(luò),所以涉及到的主要問題就是房間層與棟層之間的通信,小區(qū)層與棟層間的通信,還有中間層也就是棟層硬件的設(shè)計問題。在本設(shè)計中,棟層單片機(jī)與房間層照明智能控制器之間的通信在上屆論文中已經(jīng)完成,所以在本文中主要對中間層,也就是棟層硬件設(shè)計進(jìn)行研究。重點(diǎn)介紹上位PC機(jī)與棟層單片機(jī)間的通信,上位PC機(jī)與棟層單片機(jī)采用異步串行通信。

        3.2 器件的選定

        單片機(jī):根據(jù)該層節(jié)點(diǎn)所要實(shí)現(xiàn)功能的要求同時兼顧成本,微處理器選擇了ATMEL公司的AT89S52,之所以選擇它是因?yàn)椋旱谝唬峭ㄓ闷骷鈬骷菀走x定。第二,它是CMOS器件,有利于節(jié)能。第三,IO口多,滿足多路信息采集及控制的要求且利于擴(kuò)展,為以后擴(kuò)展功能提供了可能。第四,具有ISP下載功能,下載線可以方便的自制,節(jié)約了開發(fā)成本。第五,內(nèi)置8K FLASH ROM ,無須擴(kuò)展,有利于減小節(jié)點(diǎn)的體積。

        顯示:棟層節(jié)點(diǎn)要顯示字符信息,此時若采用七段LED則不能實(shí)現(xiàn),所以采用的LCD顯示模塊。

        鍵盤:采用4*4行列式鍵盤,可以滿足本設(shè)計的要求。

        AT24C01:在本設(shè)計中作為單片機(jī)擴(kuò)展的存儲單元使用。

        3.3 房間層節(jié)點(diǎn)的硬件總體構(gòu)成

        為了實(shí)現(xiàn)房間層的功能,房間層節(jié)點(diǎn)應(yīng)當(dāng)由信息采集,功能執(zhí)行和通信三個模塊組成,房間層工作的原理是由信息采集模塊采集房間中的光強(qiáng)和人數(shù)信息,單片機(jī)讀入該信息,作出相應(yīng)的開關(guān)燈決策,若有棟層網(wǎng)絡(luò)控制節(jié)點(diǎn)的存在,則通過單片機(jī)自身串口連接通信模塊向上層傳輸相應(yīng)的數(shù)據(jù),并等待上層節(jié)點(diǎn)的命令,得到命令后由執(zhí)行模塊完成開關(guān)等的操作,若沒有收到上層節(jié)點(diǎn)的命令,則執(zhí)行模塊執(zhí)行由微處理器作出的決策開關(guān)相應(yīng)的燈具。

        有關(guān)于信息采集模塊和執(zhí)行模塊的詳細(xì)設(shè)計敘述請參見《照明智能控制器的設(shè)計》[4],本文中只涉及與網(wǎng)絡(luò)化相關(guān)的部分,其他部分只作簡要 敘述。

        3.3.1 信息采集部分

        信息采集包括兩方面信息的收集:(1)室內(nèi)光強(qiáng)信息;(2)室內(nèi)人數(shù)信息。光強(qiáng)信息是利用光敏電阻與設(shè)定的閾值作比較,當(dāng)光強(qiáng)大于該閾值時,光強(qiáng)信息狀態(tài)為0,光強(qiáng)小于該閾值時,光強(qiáng)信息為1。

        室內(nèi)人數(shù)信息是利用熱釋電傳感器在室內(nèi)進(jìn)行分區(qū)主動掃描,得到每個教室分區(qū)內(nèi)是否有人的信息,各分區(qū)中有人則該區(qū)采集的信息為1,無人則為0。

        3.3.2 執(zhí)行部分

        執(zhí)行模塊是由房間層的照明智能控制器完成開關(guān)燈的操作。

        3.3.3 通信部分

        AT89S52同通信模塊ZF02的連接是利用單片機(jī)的異步串行口同ZF02的TTL電平的URAT口。通過無線射頻通信進(jìn)行數(shù)據(jù)的收發(fā)。

        3.4 棟層節(jié)點(diǎn)的硬件總體構(gòu)成

        棟層節(jié)點(diǎn)主要可以分為兩個部分:(1)PC機(jī)作為上位機(jī),分析作為下位機(jī)的單片機(jī)傳來的信息,并通過一定的算法來得出協(xié)調(diào)各房間層節(jié)點(diǎn)工作的命令,發(fā)給下位機(jī),而且以圖標(biāo)的直觀形式體現(xiàn)出各房間的人員數(shù)目信息及光強(qiáng)信息;(2)單片機(jī)作為下位機(jī),負(fù)責(zé)與各房間層節(jié)點(diǎn)進(jìn)行無線通信,接收上位PC機(jī)傳送的命令發(fā)給房間

         

        圖3-1 棟層節(jié)點(diǎn)硬件構(gòu)成圖

        層節(jié)點(diǎn),接收房間層節(jié)點(diǎn)傳來的信息給上位PC機(jī),通過鍵盤添加或刪除房間層節(jié)點(diǎn),通過LED顯示當(dāng)前本節(jié)點(diǎn)的工作狀態(tài)及增刪節(jié)點(diǎn)情況,利用AT24C01保存各個房間層節(jié)點(diǎn)的狀態(tài)信息。詳見圖3-1。

        在棟層網(wǎng)絡(luò)控制節(jié)點(diǎn)與眾多房間層節(jié)點(diǎn)通信時,每個房間層節(jié)點(diǎn)應(yīng)具有本棟層網(wǎng)絡(luò)控制節(jié)點(diǎn)下的唯一的地址,該地址應(yīng)當(dāng)可以由人工進(jìn)行指定。若直接利用單片機(jī)的I/O口讀取信號的高低電平來確定本級的地址,這將占用過多的資源,假定地址為8位,這將占用單片機(jī)的8個I/O端口,若減少地址位數(shù),又會造成該網(wǎng)絡(luò)內(nèi)容納節(jié)點(diǎn)數(shù)目過少。為解決上述的兩個問題,設(shè)計中采用了并行輸入串行輸出的移位寄存器74HC165N,通過它與AT89S52的連接,將八位的地址轉(zhuǎn)換為串行。這樣就為單片機(jī)節(jié)省了不少資源,硬件連線見圖3-2。

         

        圖 3-2 單片機(jī)I/O口的擴(kuò)展

        3.5 人機(jī)交互部分

        人機(jī)交互部分完成顯示當(dāng)前的棟層節(jié)點(diǎn)工作狀態(tài),顯示通信故障,其主要由鍵盤和LCD顯示兩部分完成。

        3.5.1 鍵盤模塊

        該部分鍵盤采用4*4行列式鍵盤實(shí)現(xiàn),其在房間層節(jié)點(diǎn)遍歷的過程中檢測是否有鍵按下,以行掃描法實(shí)現(xiàn)鍵盤的識別,用軟件延時的方式去抖動。按鍵定義除了0-9共十個鍵外,還有增加鍵、刪除鍵、確認(rèn)鍵及取消鍵,留有2個鍵未定義留作擴(kuò)展用。鍵盤部分硬件原理圖見3-3。

         

        圖3-3 鍵盤硬件原理圖

        3.5.2 LCD顯示模塊

        在本設(shè)計中顯示的信息包括數(shù)字和字符信息,所以需要使用一個LCD顯示模塊。下圖是LCD顯示模塊與AT89S52的引腳圖見圖3-4。

         

        圖3-4  LCD與單片機(jī)的連接圖

        3.5.3 房間層信息的存儲

        因?yàn)锳T24C01能夠在線進(jìn)行擦寫,而且斷電后信息不會丟失,所以在本設(shè)計中用AT24C01與單片機(jī)相連存儲房間層的信息。本設(shè)計中利用棟層節(jié)點(diǎn)的鍵盤和LCD顯示來實(shí)現(xiàn)房間層節(jié)點(diǎn)的增刪,實(shí)際上是將通過鍵盤得到的房間層節(jié)點(diǎn)的地址,利用AT24C01的讀寫程序來改變該地址節(jié)點(diǎn)狀態(tài)信息。在AT89S52上對AT24C01進(jìn)行讀寫可以確定房間的位置,同時可以達(dá)到對房間層節(jié)點(diǎn)增刪的目的。

        AT24C01的接口是符合I2C協(xié)議的,而AT89S52沒有I2C接口,可以用普通I/O口進(jìn)行模擬,其硬件連線見圖3-5。

         

        圖3-5 AT24C01硬件連線圖

        3.6 層間信息的傳送方式

        各層間信息的傳送都是遵循一定的通信協(xié)議,本設(shè)計中房間層與棟層間信息的傳送采用的是無線傳輸?shù)姆绞剑駨纳漕l無線通訊協(xié)議,房間層和棟層單片機(jī)與無線射頻通訊模塊的連接則采用的是串行通信。上位PC機(jī)與棟層單片機(jī)之間的通信采用異步串行通信方式。

        串行通信是由一位數(shù)據(jù)傳輸線傳送數(shù)據(jù)的位信號,另加幾條通信聯(lián)絡(luò)控制線組成。串行通信的實(shí)現(xiàn)遵循串行通信協(xié)議。該通信協(xié)議對數(shù)據(jù)傳送方式的規(guī)定,包括數(shù)據(jù)格式定義和數(shù)據(jù)位定義等,通信雙方必須遵從統(tǒng)一的通信協(xié)議。串行通信協(xié)議包括同步協(xié)議和異步協(xié)議兩種,由于本系統(tǒng)采用異步通信方式將信息傳送給ZF02,ZF02以無線的方式將其發(fā)出,另一塊ZF02接收到該信息后,以異步串行得方式傳給棟層單片機(jī)。最后由棟層單片機(jī)再傳送給上位PC機(jī)。

        3.7  PC機(jī)與單片機(jī)的串口通訊硬件設(shè)計

        3.7.1 系統(tǒng)硬件設(shè)計

        本系統(tǒng)的硬件由三大部分組成,即上位PC機(jī)子系統(tǒng)、下位AT89S52單片機(jī)子系統(tǒng)和串行通信接口[5]。系統(tǒng)框圖如圖3-6 所示。

         

        圖3-6 系統(tǒng)硬件構(gòu)成框圖

        對于控制系統(tǒng)而言,實(shí)時性是系統(tǒng)的一個重要性能指標(biāo),如不能很好滿足,滯后時間太長,顯示的信息就會失去價值。由于主機(jī)所顯示的信息是通過與單片機(jī)的通信而采集獲得,所以采用PC機(jī)作為上位機(jī)[7] 。本系統(tǒng)中,PC機(jī)的主要任務(wù)是:

        1、通過與下位機(jī)的通信,將用戶設(shè)定的照明控制命令發(fā)送給下位機(jī)。AT89S52單片機(jī)據(jù)此進(jìn)行數(shù)據(jù)采集與控制。

        2、通過與下位機(jī)的通信,讀入房間層采集的數(shù)據(jù),據(jù)此判斷照明控制器是否處于正常運(yùn)行狀態(tài);用圖形、字符等方式實(shí)時顯示各種參數(shù)的信息,實(shí)現(xiàn)對房間照明的實(shí)時控制。

        PC機(jī)的性能要求:性能好,速度快,軟件資源豐富,通信實(shí)現(xiàn)方便,支持VB操作系統(tǒng),圖形界面,菜單對話。

        3.7.2 電平轉(zhuǎn)換

        用于存儲信息的采集器,對信息量的大小有嚴(yán)格的要求,由于采集器的存儲量有限和進(jìn)一步處理與顯示的需要,信息需要傳入微機(jī)內(nèi)。采集器與微機(jī)通過微機(jī)的串口實(shí)現(xiàn)通信。 利用AT89S52 單片機(jī)的串行口與PC 機(jī)的串行口COM1 或COM2 進(jìn)行串行通信,將單片機(jī)采集的數(shù)據(jù)傳送到PC 機(jī)中,由PC 機(jī)的高級語言或數(shù)據(jù)庫語言對數(shù)據(jù)進(jìn)行整理及統(tǒng)計等復(fù)雜處理。PC 機(jī)串行口給出的信號是一個RS232 信號,它是一個基于3~7V 正電壓、3~7V 負(fù)電壓的脈沖鏈。這一信號必須轉(zhuǎn)化為一個0~5V 的脈沖鏈,以便處理器讀取。中間轉(zhuǎn)換電路采用MAX232 芯片來實(shí)現(xiàn)[8]。圖3-7是PC機(jī)與單片機(jī)的通訊示意圖。

         

        圖3-7  PC機(jī)與單片機(jī)的通信接口電路框圖

            EIA RS232C是目前最常用的串行接口標(biāo)準(zhǔn), 用于計算機(jī)與計算機(jī)之間,計算機(jī)與外設(shè)之間的數(shù)據(jù)通信。該標(biāo)準(zhǔn)的目的是定義數(shù)據(jù)終端設(shè)備(DTE) 之間的電氣特性。 RS232C 提供了單片機(jī)與單片機(jī)、單片機(jī)與PC 機(jī)之間串行數(shù)據(jù)通信的標(biāo)準(zhǔn)接口。通信距離可達(dá)15m。但RS232C 規(guī)定的邏輯電平與單片機(jī)的邏輯電平是不一致的。因此在應(yīng)用中必須把微處理器的信號電平( TTL 電平) 轉(zhuǎn)換為RS232C 電平, 或者對二者進(jìn)行逆轉(zhuǎn)換。我們在這里選用專用電平 轉(zhuǎn)換芯片MAX232來實(shí)現(xiàn)的。下面是單片機(jī)串口連接電路,使用MAX232作為串口連接芯片[9]。

        本設(shè)計采用了三線制連接串口,也就是說和電腦的9針串口只連接其中的3根線:第5腳的GND、第2腳的RXD、第3腳的TXD。電路如下圖所示,MAX232的第10腳和單片機(jī)的11腳連接,第9腳和單片機(jī)的10腳連接,第15腳和單片機(jī)的20腳連接。硬件連線如圖3-8所示:

         

        圖3-8 單片機(jī)與PC機(jī)接口電路設(shè)計

        3.8 單片機(jī)串行通信接口的擴(kuò)展

        單片機(jī)的串行通信接口與外設(shè)通信很方便,雖然大多數(shù)單片機(jī)都具有硬件SCI(Serial Communications Interface),但也有一些產(chǎn)品沒有SCI,對于這些產(chǎn)品的用戶來說這是一個缺憾。而且,一般八位單片機(jī)只有一個SCI,但在很多實(shí)際應(yīng)用,需要更多的串行通信接口[10]。例如在基于Modem的遠(yuǎn)程控制系統(tǒng)中,單片機(jī)與PC機(jī)通信的同時,還需要與Modem芯片進(jìn)行通信;而在多機(jī)系統(tǒng)中,單片機(jī)需要與其他主機(jī)通信,另外也需要與本機(jī)控制臺通信。所以利用單片機(jī)自身的資源進(jìn)行串行通信接口的擴(kuò)展很有意義[11]。

        串行通信接口的擴(kuò)展技術(shù)主要有兩種:分時共用,I/O口模擬。前者利用MCU自身的硬件SCI,通過控制邏輯分時共享使用同一串行通信接口,后者在不增加硬件的條件下,充分利用MCU自身的資源利用I/O口模擬串行通信接口。

        3.8.1 串行通信接口原理

        單片機(jī)的SCI是一個通用異步接收器/發(fā)送器UART(Universal Asynchronous Receiver /Transmiter)類型的異步通信接口,通過串行通信協(xié)議(如RS-232協(xié)議)同主機(jī)系統(tǒng)通信[12]。

        在一般應(yīng)用中,MCU簡單地把數(shù)據(jù)寫入數(shù)據(jù)寄存器即可實(shí)現(xiàn)一個字符的串行發(fā)送,SCI系統(tǒng)完成發(fā)送數(shù)據(jù)的所有細(xì)節(jié)工作,包括附加起始位和停止位以符合串行格式。SCI的接收器自動探測一個字節(jié)的起始位,并通過采樣接收數(shù)據(jù)。接收串行數(shù)據(jù)并變換成并行數(shù)據(jù)的所有工作均由SCI完成,不需要MCU的干預(yù)。接收到數(shù)據(jù)后,MCU簡單地從數(shù)據(jù)接收寄存器讀取數(shù)據(jù)即可。

        SCI使用標(biāo)準(zhǔn)不歸零(NRZ)格式(一個起始位,8個或9個數(shù)據(jù)位和一個停止位),最常用的格式數(shù)據(jù)位是8位的。

        NRZ數(shù)據(jù)格式的基本特點(diǎn)如下:

        高電平為邏輯1,低電平為邏輯0;

        發(fā)送/接收數(shù)據(jù)空閑時TXD、RXD線為高電平;

        發(fā)送/接收數(shù)據(jù)串的第一位是起始位(邏輯0);

        數(shù)據(jù)的最低位LSB首先被發(fā)送/接收;

        數(shù)據(jù)串的最后一位(第10位或第11位)是停止位(邏輯1)。

        3.8.2 通訊接口的擴(kuò)展方法

        目前比較通用的串口擴(kuò)展方案有兩種,一是用硬件實(shí)現(xiàn),使用多串口單片機(jī)或?qū)S么跀U(kuò)展芯片,可供選擇的串口擴(kuò)展芯片有TI等公司開發(fā)的16C554系列串口擴(kuò)展芯片,該系列芯片實(shí)現(xiàn)的功能是通過并行口擴(kuò)展串行口,功能比較強(qiáng)大、通訊速度高,但控制復(fù)雜,同時價格較高,主要的應(yīng)用場合是PC機(jī)串口擴(kuò)展產(chǎn)品。在僅使用單片機(jī)控制且不需要太高波特率通訊的系統(tǒng)中,使用16C554系列芯片不僅成本高而且還造成了資源的浪費(fèi)。而多串口單片機(jī)也同樣存在價格高的缺點(diǎn)。另一種串口擴(kuò)展方案就是用軟件實(shí)現(xiàn),軟件模擬串口存在的缺點(diǎn)有:一是采樣次數(shù)低,一般只能做到2次/BIT,這樣數(shù)據(jù)的正確性就難以保證;二是不能實(shí)現(xiàn)高波特率通訊,軟件模擬串口一般不能實(shí)現(xiàn)高于4800 bps的波特率[13]。成都國騰微電子有限公司推出的GM8123/25系列串口擴(kuò)展芯片全硬件實(shí)現(xiàn)串口擴(kuò)展[14],保證了芯片工作的穩(wěn)定性,設(shè)計的最高波特率完全能滿足一般系統(tǒng)需求,同時占用系統(tǒng)資源少,使用方法簡單,通訊格式可設(shè)置,與標(biāo)準(zhǔn)串口通訊格式兼容,利用該系列芯片實(shí)現(xiàn)串口擴(kuò)展是性價比較高的串口擴(kuò)展方案。棟層下位單片機(jī)既要與房間層單片機(jī)進(jìn)行通訊,又要與上位PC機(jī)進(jìn)行通訊。由于本設(shè)計棟層下位單片機(jī)只有一個通訊接口,所以單片機(jī)的串行通訊接口需要擴(kuò)展,本設(shè)計中采用單片機(jī)與GM8125相連實(shí)現(xiàn)了單片機(jī)通訊串口的擴(kuò)展。如圖3-9所示:

         

        圖3-9  單片機(jī)通訊串口的擴(kuò)展

        利用GM8123/25進(jìn)行串口擴(kuò)展,有以下優(yōu)點(diǎn):

        1、控制簡單。該芯片利用軟件設(shè)置工作方式,最大限度地減少控制線,不需要占用太多主機(jī)的系統(tǒng)資源,同時又保證使用的簡便性。

        2、應(yīng)用靈活。該芯片具備兩種工作模式、多種工作波特率、10位或11位數(shù)據(jù)幀長可選,用戶可根據(jù)自己的系統(tǒng)需求靈活選擇。

        3、通用性強(qiáng)。該芯片設(shè)計時充分考慮各種用戶的需求,保證了芯片的通用性,與標(biāo)準(zhǔn)串口通訊格式完全兼容,同時提供多種可選設(shè)置,適用于大多數(shù)串口通訊系統(tǒng)。

        4、工作波特率高。該芯片子串口在單通道模式下波特率支持20Mbps,多通道模式下支持38400bps,此波特率完全能滿足一般的串口通訊的需求。

        5、性能穩(wěn)定。硬件實(shí)現(xiàn)串口比軟件實(shí)現(xiàn)串口更能保證串行通訊的穩(wěn)定性,同時每bit采樣16次,保證了數(shù)據(jù)的正確性。

        6、波特率誤差小。輸出波特率誤差小于0.2%,輸入波特率誤差要求小于2.8%。

        該芯片不足之處在于:不滿足超低功耗應(yīng)用要求;多通道模式下,所有子串口工作波特率只能設(shè)置成統(tǒng)一值,不適用于各從機(jī)工作波特率不一致、又要求同時工作的系統(tǒng)。

        第4章 照明片區(qū)網(wǎng)絡(luò)化軟件功能的設(shè)計與實(shí)現(xiàn)

        本設(shè)計軟件部分包括兩大模塊,即棟層單片機(jī)對房間層智能控制器信息的收發(fā),PC機(jī)對單片機(jī)的實(shí)時監(jiān)控程序,對這部分軟件的要求是:人機(jī)界面友好,易學(xué)易用。在本系統(tǒng)中,軟件由VB、AT89S52單片機(jī)C語言程序編寫。其中VB程序用Visual Basic6.0開發(fā)而成,與單片機(jī)的通信,主要完成參數(shù)設(shè)定,數(shù)據(jù)顯示等功能。AT89S52單片機(jī)C程序借助硬件電路的支持,根據(jù)PC機(jī)傳來的設(shè)定參數(shù)進(jìn)行自動的數(shù)據(jù)采集與輸出控制,并向PC機(jī)傳送采集數(shù)據(jù),供VB程序分析處理。AT89S52單片機(jī)C程序和VB程序之間交換數(shù)據(jù)的橋梁是各自的串行通信程序,所以通信程序的編寫是本設(shè)計程序的核心。由于棟層與房間層之間的通信部分在上屆畢業(yè)設(shè)計中已經(jīng)完成,這里只作簡要敘述[15]。

        4.1 房間層信息的采集

        房間層信息的采集是通過棟層單片機(jī)對房間層照明智能控制器的訪問實(shí)現(xiàn)的。棟層與房間層之間的通訊是采用輪詢方式,同每一個房間層節(jié)點(diǎn)通信時先建立連接,傳輸數(shù)據(jù),然后再釋放連接。所以相應(yīng)的房間層節(jié)點(diǎn)在通信時需要明確自身所處的連接狀態(tài)。在棟層網(wǎng)絡(luò)控制節(jié)點(diǎn)與眾多房間層節(jié)點(diǎn)通信時,每個房間層節(jié)點(diǎn)應(yīng)具有本棟層網(wǎng)絡(luò)控制節(jié)點(diǎn)下的唯一的地址,該地址應(yīng)當(dāng)可以由人工進(jìn)行指定。利用I/O口讀取信號的高低電平來確定本級的地址。系統(tǒng)掉電后重啟時仍然需要保留該 地址信息,則必須在系統(tǒng)中加入一個AT24C01存儲器。

        4.1.1 重發(fā)機(jī)制的實(shí)現(xiàn)

        在數(shù)據(jù)的傳輸過程中容易受到外界干擾,為防止通訊錯誤,主要采用如下方法:

        1、啟動錯誤定時器,掃描錯誤數(shù)據(jù)傳輸中的錯誤,如果有錯誤則重新啟動通信;

        2、對接收的數(shù)據(jù)進(jìn)行校驗(yàn),若超過通訊設(shè)定時間要求或者接收數(shù)據(jù)誤碼時重發(fā)。

        以上兩種方法的應(yīng)用大大提高了通訊可靠性,減小了誤碼率。

        4.1.2 單個房間層節(jié)點(diǎn)的狀態(tài)規(guī)定

        單個房間節(jié)點(diǎn)主要有是否連接,是否出現(xiàn)錯誤,和是否有控制命令,是否接收數(shù)據(jù)四個狀態(tài),所以每個房間層節(jié)點(diǎn)用4位來表示其狀態(tài)。

        4.1.3 棟層對房間層地址的讀寫

        在對房間層節(jié)點(diǎn)讀寫時,是以地址號為順序進(jìn)行的。對于從節(jié)點(diǎn)地址節(jié)點(diǎn)狀態(tài)進(jìn)行判斷后,只對當(dāng)前在線且沒有通信故障的節(jié)點(diǎn)進(jìn)行通信,其實(shí)現(xiàn)過程是對各從節(jié)點(diǎn)的狀態(tài)信息進(jìn)行判斷,符合條件的進(jìn)行通信,不符合條件的則跳過。AT24C01每次進(jìn)行讀寫時是以字節(jié)為單位的,偶數(shù)號房間層節(jié)點(diǎn)的狀態(tài)信息存儲在高4位,奇數(shù)號的則存于低4位。由AT24C01存儲空間與房間層節(jié)點(diǎn)的對應(yīng)關(guān)系可知,讀和寫第N個房間的狀態(tài)信息時,在AT24C01中的地址定位方式是一樣的,所不同的在于寫狀態(tài)時要操作的是四個狀態(tài)為中的某一位。

        4.1.4 棟層對房間層信息的讀寫

        棟層單片機(jī)與房間層單片機(jī)之間通訊的約定:

        1、主機(jī)向從機(jī)發(fā)送地址信號,主機(jī)向從機(jī)發(fā)送數(shù)據(jù)信息。

        2、主機(jī)處于監(jiān)聽狀態(tài)下,因此只能收到主機(jī)的地址。

        3、從機(jī)收到地址后,進(jìn)行識別,是否主機(jī)呼叫本站,如果是,解除監(jiān)聽,同時把本站的地址發(fā)回,作為應(yīng)答。只有這樣,從機(jī)才能收到主機(jī)發(fā)來的數(shù)據(jù)。

        4、主機(jī)收到應(yīng)答,開始數(shù)據(jù)和命令。

        5、從機(jī)正式接收數(shù)據(jù)。

        4.2 PC機(jī)串行通信設(shè)計

        PC機(jī)自帶串行通訊接口,可以通過串口與單片機(jī)進(jìn)行數(shù)據(jù)的傳送,達(dá)到對單片機(jī)進(jìn)行控制的目的。

        4.2.1 PC機(jī)串行通信的原理

        上位PC機(jī)上的RS-232C與AT89S52單片機(jī)的通信接口相接,進(jìn)行集中監(jiān)視與管理。PC與下位機(jī)采用異步串行通信方式,經(jīng)RS-232C進(jìn)行數(shù)據(jù)傳輸。上位PC機(jī)采用中斷接收方式、AT89S52采用定時查詢發(fā)送方式,AT89S52單片機(jī)定時向上位PC機(jī)發(fā)送數(shù)據(jù),數(shù)據(jù)以幀為單位。上位機(jī)與AT89S52按應(yīng)答方式通信時,上位機(jī)主動,AT89S52被動,上位機(jī)向AT89S52發(fā)出一組稱作命令塊的二進(jìn)制數(shù)據(jù),AT89S52對命令進(jìn)行操作后,將結(jié)果返回給上位機(jī),這組數(shù)據(jù)稱作響應(yīng)塊。命令塊與響應(yīng)塊以幀為單位進(jìn)行傳送,按傳送字節(jié)個數(shù)不同,分為單幀傳送和多幀傳送兩種。

        4.2.2 通信機(jī)制及結(jié)構(gòu)

        串行通信有如下三種方式:

        1、單工通信:它只允許一個方向傳輸數(shù)據(jù)。

        2、半雙工通信:它允許兩個方向傳輸數(shù)據(jù),但不能同時傳輸。

        3、全雙工通信:它允許兩個方向同時進(jìn)行數(shù)據(jù)傳輸。

        4.3 AT89S52單片機(jī)串行通信

        AT89S52單片機(jī)的串行口具有三種異步工作方式和一種同步工作方式。當(dāng)串行口工作在異步工作方式時,可完成全雙工操作,即能同時收發(fā)。

        串行口的控制是通過地址為0011H的串行口控制/狀態(tài)寄存器進(jìn)行的。串行口的數(shù)據(jù)由串行口緩沖器SBUF(rx),SBUF(tx)負(fù)責(zé)收發(fā),兩者的地址均為0007H。雖然兩個寄存器共用一個地址,但它們在物理上是獨(dú)立的。CPU將預(yù)發(fā)送的數(shù)據(jù)寫入SBUF (rx),然后從SBUF(tx)送往TXD引腳,從RXD引腳接收的數(shù)據(jù)送往SBUF(rx)保存。SBUF(rx)為雙緩沖器結(jié)構(gòu),第一個接收到的字節(jié)被讀走之前,就可以開始接收第二個字節(jié)。

        4.3.1 串行口工作方式

        AT89S52單片機(jī)的串行接口有4種工作方式,即方式0、方式1、方式2和方式3。這里僅介紹一種異步串行通信方式,即設(shè)計采用的方式1。

        方式1是標(biāo)準(zhǔn)的異步通信方式。數(shù)據(jù)格式為:1位起始位(低電平0), 8位數(shù)據(jù)位(D0-D7 ),即先低位后高位,1位停止位(高電平1),共計10位為一幀。發(fā)送時,每幀數(shù)據(jù)(10位)按照上述順序從TXD端移出,接收時每幀數(shù)據(jù)(10位)也遵循以上順序從DXD端引入。數(shù)據(jù)格式如圖4-1所示。

         

        圖 4-1 串行口方式1數(shù)據(jù)格式

        1、方式1的發(fā)送過程

        用軟件清除T1后,CPU執(zhí)行任何一條以SBUF為目標(biāo)寄存器的傳送指令,就

        啟動發(fā)送過程,數(shù)據(jù)由TXD引腳輸出,此時的發(fā)送移位脈沖是由定時器/計數(shù)器T1送來的溢出信號經(jīng)過16或32分頻而得到的。一幀信號發(fā)送完時,將置位發(fā)送中斷標(biāo)志T1=1,向CPU申請中斷,完成一次發(fā)送過程。

        2、方式1的接收過程

        用軟件清除R1后,當(dāng)允許接收位REN被置為1時,接收器以選定波特率的16倍速率來采樣RXD引腳上的電平,即在一個數(shù)據(jù)位期間有16個檢測脈沖,并在第7、8、9個脈沖期間采樣接收信號,然后用“三中取二”的原則確定檢測值,以抑制干擾,并且采樣是在每個數(shù)據(jù)位的中間,避免了信號邊沿的波形失真造成的采樣錯誤。當(dāng)檢測到有從“1”到“0”的負(fù)跳變時,則啟動接收過程,在接收脈沖的控制下,接收完一幀信息。當(dāng)最后一次移位脈沖產(chǎn)生時能滿足下列兩個條件:R1=0;接收到的停止位為1或SM=2,則停止位送入RB8,8位數(shù)據(jù)進(jìn)入SBUF,并置接收中斷標(biāo)志R1=1,向CPU發(fā)出中斷請求,完成一次接收數(shù)據(jù)。

        4.3.2 方式1的應(yīng)用介紹

        方式1是標(biāo)準(zhǔn)的全雙工異步通訊方式,可以與標(biāo)準(zhǔn)的RS-232C接口連接,通常用來與CRT、打印機(jī)等外圍設(shè)備進(jìn)行數(shù)據(jù)通訊,也作為上下位機(jī)之間的數(shù)據(jù)通訊。

        方式1的特點(diǎn)如下:

        用方式1通訊時,幀的發(fā)送是通過TXD引腳,幀的接收是通過RXD引腳,發(fā)送和接收是由串行口內(nèi)的移位時鐘進(jìn)行控制,波特率由用戶設(shè)置。

        當(dāng)波特率發(fā)生器被初始化后,發(fā)送器的移位時鐘開始工作:而接收器移位時鐘是在收到起始位“1”到“0”跳變時被置位的。可見,雖然兩種移位時鐘使用相同的頻率,但它們之間不是同步的。

        在方式1下工作時,串行口控制/狀態(tài)寄存器SP_CON/SP_STAT中的M1和M2二位應(yīng)寫入01,即按接收方式1工作、允許接收位REN的設(shè)置方法如下:置“1”時,清除RI標(biāo)志為開始接收狀態(tài); 清“0”時,為發(fā)送狀態(tài)。

        因?yàn)榉绞?無第九位數(shù)據(jù),所以TB8位和RB8位不使用。利用方式1進(jìn)行串行數(shù)據(jù)傳送時,可采用查詢法和中斷法實(shí)現(xiàn)。

        4.4 PC機(jī)與單片機(jī)間的通訊

        下位單片機(jī)和上位PC機(jī)之間的數(shù)據(jù)傳輸以串行通信的方式進(jìn)行,在C語言程序和VB程序中都有各自的通信模塊。串口通信程序的設(shè)計主要是初始化異步通信串口,使上位機(jī)通信口設(shè)置的通信參數(shù)與下位機(jī)設(shè)置的 通信參數(shù)一致。通信程序的編寫,主要包含以下幾個部分:

        1、設(shè)置雙方的硬件握手協(xié)議;

        2、設(shè)置端口號、波特率、數(shù)據(jù)位、停止位、奇偶校驗(yàn)位;

        3、打開串行端口。

        根據(jù)系統(tǒng)上位機(jī)和下位機(jī)數(shù)據(jù)通信的功能和特點(diǎn),雙方的通信約定設(shè)計如下:

        1、波特率為2400,數(shù)據(jù)格式為8個數(shù)據(jù)位,一個起始位,一個停止位;

        2、傳送方式為PC機(jī)采用查詢方式發(fā)送、中斷方式接收,AT89S52采用中斷方式接收、查詢方式發(fā)送;

        3、為了提高通信可靠性和抗干擾能力,上位機(jī)和下位機(jī)在建立通信聯(lián)系時,先交換握手信號,進(jìn)行通信測試,若下位機(jī)自檢出錯,則在應(yīng)答PC機(jī)命令時上傳錯誤代碼。若通信所接收的數(shù)據(jù)不符合約定的字節(jié)數(shù)或數(shù)據(jù)范圍,或通信間隔時間超過限定時間則此次通信數(shù)據(jù)作廢。若連續(xù)多次通信數(shù)據(jù)出錯,則報告系統(tǒng)數(shù)據(jù)通信出錯。

        4.4.1 基于VB6.0的PC機(jī)通信程序設(shè)計

        VB作為一種可視化程序設(shè)計語言,功能強(qiáng)大,使用方便,編寫的圖形顯示界面生動豐富。利用其提供的通信控件MSComm,實(shí)現(xiàn)PC機(jī)與AT89S52單片機(jī)之間的通信也十分方便。圖4-2是VB通訊程序流程圖。

        4.4.2 MSComm控件介紹

        MSComm是VB6.0帶有的專門管理串行通信的控件,此控件通過串行端口傳輸和接收數(shù)據(jù),為應(yīng)用程序提供串行通信功能[16]。利用此控件,可以制作規(guī)范的協(xié)議。MSComm控件可提供下列兩種處理通信的方式:

        1、中斷方式

        中斷方式是處理串行端交互作用的一種非常有效的方法。在許多情況下,當(dāng)事件發(fā)生時需要得到通知,這時,可以利用MSComm控件的OnComm事件捕獲并處理這些通信事件。

        2、查詢方式  

        在程序的每個關(guān)鍵功能之后,可以通過檢查CommEvent屬性的值來查詢事件和錯誤。MSComm控件的屬性InBufferCount()和OutBufferCaunt()均用于串口的查詢方式。

        MSComm控件有很多重要的屬性,首先必須熟悉表4-1中的幾個屬性。

        表4-1 MSComm控件的主要屬性

        屬性 描述

        Commfort 設(shè)置并返回通信端口號

        Settings 以字符串的形式設(shè)置并返回波特率,奇偶校驗(yàn),數(shù)據(jù)位,停止位

        PortOpen 設(shè)置并返回通信端口的狀態(tài),也可以打開和關(guān)閉端口

        Input 從接收緩沖區(qū)返回和刪除字符

        Output 向傳輸緩沖區(qū)寫一個字符串

        InputMode 值為0,以文本形式取回數(shù)據(jù);值為1,以二進(jìn)制形式取回數(shù)據(jù)

        Rthreshold 當(dāng)接收字符后,若Rthreshold屬性為0(缺省值)則不產(chǎn)生OnComm事件:為1,接收緩沖區(qū)收每到一個字符都會使MSComm控件產(chǎn)生OnComm事件

        Sthreshold 屬性為0(缺省值),數(shù)據(jù)傳輸事件不會產(chǎn)生OnComm事件:若設(shè)置

        Sthreshold屬性為1,當(dāng)傳輸緩沖區(qū)完全空時,MSComm控件產(chǎn)

        生OnComm事件

        4.4.3 上位PC機(jī)通訊程序設(shè)計

        在VB6.0開發(fā)環(huán)境下,選擇Microsoft Communication Control Version6.0控件插入程序,系統(tǒng)會自動生成通信控件。具體作法是:選菜單Project/ Component,將會有一子菜單,選中Controls項(xiàng),在其中找到Microsoft Comm Control6.0,選中它便可插入,在工具條中就會看到新增的通信控件。在軟件設(shè)計時可以如其它普通控件一樣使用。在工程文件中添加 MSComm控件,程序中對串口的各種操作都可通過MSComm控件來實(shí)現(xiàn)[17][18]。AT89S52單片機(jī)通過中斷方式采集和傳送數(shù)據(jù)。接收模塊從外部接收串行數(shù)據(jù),并將所接收的數(shù)據(jù)放到寄存器中,以便處理器讀取。接收過程同樣由下位單片機(jī)控制,接收模塊必須對數(shù)據(jù)位的溢出出錯,奇偶校驗(yàn)出錯,幀出錯等進(jìn)行校驗(yàn),并根據(jù)校驗(yàn)的結(jié)果設(shè)置狀態(tài)寄存器相應(yīng)的狀態(tài)位。接收的關(guān)鍵是要保證通信雙方同步,由于沒有時鐘線,所以雙方必須以一個固定的頻率、同步地收發(fā)數(shù)據(jù),才能保證數(shù)據(jù)傳送的正確性。發(fā)送模塊需要實(shí)現(xiàn)的功能是把從處理器接收到的數(shù)據(jù),按規(guī)定的格式加上起始位,奇偶校驗(yàn)位和停止位后串行輸出。發(fā)送模塊由一個PC機(jī)來控制。當(dāng)數(shù)據(jù)緩沖區(qū)滿時,向單片機(jī)發(fā)出中斷申請,若單片機(jī)響應(yīng)并與PC機(jī)握手許可,便可發(fā)送數(shù)據(jù)。

         

        圖4-2  VB通訊程序流程圖

        因此,在PC機(jī)通信程序編制上,采用查詢的通信方式。如前所述,對本次通信任務(wù),可通過SetCommEvent()函數(shù)設(shè)置串口要響應(yīng)的事件[19]。本設(shè)計把PC機(jī)串口每接收一幀數(shù)據(jù)設(shè)置為串口要響應(yīng)的事件,通過它去激活OnComm(),在OnComm()消息處理函數(shù)中可加入處理代碼,判斷是否為所需要數(shù)據(jù),并做出相應(yīng)的處理,如顯示、存儲等。在附錄2中給出事件驅(qū)動方式接收AT89S52單片機(jī)發(fā)送數(shù)據(jù)的程序源代碼。

        PC機(jī)串口各參數(shù)的設(shè)置,如波特率、校驗(yàn)及數(shù)據(jù)格式等,必須與AT89S52串口完全保持一致,否則兩者之間的通信無法正常進(jìn)行[20]。設(shè)置PC機(jī)串口參數(shù)的初始化程序如下:

            MSComml.ComPort=1; 選擇COM1串行口

            MSComml.Settings= "2400, e, 8, 1”; 波特率2400,偶校驗(yàn),8位

                                           數(shù)據(jù)位,1位停止位

            MSComml.InputLen=0; 將讀取接收緩沖區(qū)的全部內(nèi)容

            MSComml.InputMode=1; 以二進(jìn)制方式發(fā)送

            MSComml.PortOpen=True; 打開端口

            MSComml.0utbufferCount=0; 清空發(fā)送緩沖區(qū)   

        PC機(jī)進(jìn)入VB編制的監(jiān)控系統(tǒng)主界面后,PC機(jī)先發(fā)送握手信號給AT89S52單片機(jī),AT89S52單片機(jī)通過中斷方式接收PC機(jī)發(fā)送過來的握手信號,回送同一信號給PC機(jī),并在PC機(jī)屏幕上顯示出來。如果通訊正常,兩次信號相同,說明上位機(jī)與下位機(jī)通信正確。然后用戶才能發(fā)送設(shè)定參數(shù)。PC機(jī)通訊界面設(shè)計如圖4-3所示:

                      

        圖4-3 串口通訊接收界面

        4.4.4 AT89S52單片機(jī)通信程序設(shè)計

        在通信過程中,當(dāng)AT89S52單片機(jī)與上位機(jī)PC握手聯(lián)絡(luò)成功時,AT89S52單片機(jī)以中斷方式接收PC機(jī)發(fā)送來的設(shè)定參數(shù),進(jìn)行定時的數(shù)據(jù)采集,然后將采集的數(shù)據(jù)進(jìn)行處理以中斷方式發(fā)送給PC機(jī)。下位單片機(jī)和上位PC機(jī)之間的數(shù)據(jù)傳輸以串行通信的方式進(jìn)行。PC機(jī)進(jìn)入VB編制的監(jiān)控系統(tǒng)主界面后,PC機(jī)先發(fā)送握手信號給AT89S52單片機(jī),AT89S52單片機(jī)通過中斷方式接收PC機(jī)發(fā)送過來的握手信號,回送同一信號給PC機(jī),并在PC機(jī)屏幕上顯示出來。為了提高通信可靠性和抗干擾能力,上位機(jī)和下位機(jī)在建立通信聯(lián)系時,先交換握手信號,進(jìn)行通信測試,若下位機(jī)自檢出錯,則在應(yīng)答PC機(jī)命令時上傳錯誤代碼。PC機(jī)與AT89S52單片機(jī)通信握手程序框圖如圖4-4所示, 圖4-5是PC機(jī)發(fā)送數(shù)據(jù)的子程序流程圖。

          

        圖4-4 PC機(jī)通信模塊程序流程圖              圖4-5 PC機(jī)發(fā)送子程序流程圖

        上位PC機(jī)與棟層單片機(jī)之間的程序采用了模塊化的設(shè)計思想,單片機(jī)首先與PC機(jī)建立連接,然后采用中斷 的方式將數(shù)據(jù)發(fā)送給上位PC機(jī),PC機(jī)再根據(jù)下位單片機(jī)傳來的信息作出相應(yīng)的決策,如果PC機(jī)與單片機(jī)通信正確,則PC機(jī)讀串行口,開始接收數(shù)據(jù),如果通信發(fā)生錯誤,則退出程序。PC機(jī)接收下位單片機(jī)程序流程序如圖4-6所示,圖4-7是AT89S52串口中斷接收程序流程圖,圖4-8是AT89S52握手子程序流程圖。

         

        圖4-6 接收AT89S52采集數(shù)據(jù)流程序框圖

             

        圖4-7 AT89S52串口中斷接收程序流程圖           圖4-8 AT89S52握手子程序流程

        第5章 系統(tǒng)調(diào)試

        5.1 調(diào)試過程

        硬件電路的調(diào)試過程:

        1、電路的設(shè)計:設(shè)計好原理圖,計算出各器件的理論值。

        2、電路的焊接:器件合理分布好后,開始焊接,使用萬用表檢測是否有虛焊的地方,導(dǎo)線盡量不要太長。

        3、電路調(diào)試:為了驗(yàn)證電路是否正確和測試PC機(jī)與棟層單片機(jī)的通訊功能,實(shí)驗(yàn)中用一個AT89S52單片機(jī),一臺計算機(jī)。PC機(jī)通過串口連接單片機(jī)進(jìn)行監(jiān)聽,看PC機(jī)與單片機(jī)是否能正常通信。圖5-1是上位PC機(jī)VB通信串口的參數(shù)設(shè)置界面。

         

        圖5-1 PC機(jī)串口通信參數(shù)設(shè)置界面

        圖5-2是PC機(jī)接收數(shù)據(jù)的過程:

         

        圖5-2  PC機(jī)接收數(shù)據(jù)

        圖5-3是PC機(jī)通信串口的關(guān)閉情況:

         

        圖5-3  串口關(guān)閉的情況

         軟件部分的調(diào)試過程:

        在本設(shè)計中,軟件的調(diào)試過程采用的是先模塊化,再進(jìn)行組合的方式。主要用VB6.0對PC機(jī)控制界面程序進(jìn)行編譯,用Keil C51 編譯器對單片機(jī)程序進(jìn)行編譯。

         

        圖5-4  Keil C51編譯器

        5.2 調(diào)試結(jié)果

        從調(diào)試過程可以說明PC機(jī)與單片機(jī)之間的串行通信已經(jīng)實(shí)現(xiàn),但在數(shù)據(jù)的接收過程出現(xiàn)了問題,無法正常實(shí)現(xiàn)數(shù)據(jù)的接收。導(dǎo)致這一問題的原因可能有以下幾點(diǎn):

        1、單片機(jī)通信接口電路干擾過大,導(dǎo)致主從機(jī)間無法進(jìn)行正常通信。

        2、單片機(jī)的程序全部采用模塊化實(shí)現(xiàn),這就導(dǎo)致在最后的調(diào)試中需要多層調(diào)用,過多層數(shù)的調(diào)用,這樣會導(dǎo)致堆棧的溢出,程序無法正常執(zhí)行。

        調(diào)試結(jié)果說明:由于本設(shè)計中的上位PC機(jī)的部分程序功能還未實(shí)現(xiàn),到目前為止實(shí)現(xiàn)了PC機(jī)與單片機(jī)的通信,系統(tǒng)的整體調(diào)試還未能實(shí)現(xiàn)。

        結(jié)  論

        本文在照明智能控制器的基礎(chǔ)上,綜合運(yùn)用了單片機(jī)與計算機(jī)控制的新技術(shù)和新方法。本文完成了以下設(shè)計:

        1、整個系統(tǒng)軟件采用模塊化、開放式的結(jié)構(gòu)設(shè)計,各功能模塊相互獨(dú)立又可以相互訪問,提高了可靠性和可擴(kuò)展性。上位PC機(jī)用VB6.0語言編程,程序簡單、清晰,操作界面友好,下位機(jī)用單片機(jī)C語言編程。

        2、選用AT89S52單片機(jī)作為控制系統(tǒng)的控制核心。AT89S52單片機(jī)運(yùn)算速度快,內(nèi)含256個RAM單元,可滿足軟件編程中數(shù)據(jù)和外部輸入數(shù)據(jù)的暫存,數(shù)據(jù)交換無需外加RAM芯片,簡化了硬件電路,提高了系統(tǒng)工作的可靠性。充分利用了片內(nèi)資源,系統(tǒng)抗干擾能力強(qiáng),結(jié)構(gòu)簡潔。

        3、完成了通信串口的擴(kuò)展和PC機(jī)與單片機(jī)串行通信的設(shè)計, 實(shí)現(xiàn)了房間層和棟層間的通信。

        4、利用面向?qū)ο蟮恼Z言VB開發(fā)了上位機(jī)軟件,構(gòu)建了控制管理系統(tǒng)。

        由于受時間和實(shí)驗(yàn)條件的限制,本系統(tǒng)沒有實(shí)現(xiàn)計算機(jī)的遠(yuǎn)程控制,系統(tǒng)的聯(lián)機(jī)調(diào)試還沒有成功。

        本設(shè)計還需要進(jìn)一步完善如下工作:

        1、照明管理系統(tǒng)與智能控制器進(jìn)行聯(lián)機(jī)調(diào)試運(yùn)行。

        2、豐富上位機(jī)的管理功能,進(jìn)一步完善上位機(jī)對照明的數(shù)據(jù)采集,實(shí)時管理。

        3、進(jìn)一步完善上位機(jī)控制策略,從PC機(jī)與單片機(jī)的一對一的通訊改進(jìn)成PC機(jī)與單片機(jī)的一對多通訊,從有線式串口通訊改進(jìn)為無線通訊。

        4、在實(shí)現(xiàn)照明控制的基礎(chǔ)上,實(shí)現(xiàn)防盜報警功能。報警功能可以采用上位機(jī)對時間的檢測實(shí)現(xiàn),以實(shí)驗(yàn)室為例,只要在晚上11:00以后房間層的熱釋電傳感器檢測到人的存在就自動報警。 

        致  謝

        本論文是在生物醫(yī)學(xué)實(shí)驗(yàn)室完成的,本論文之所以能夠順利完成,是與導(dǎo)師韓雪梅的悉心指導(dǎo)和嚴(yán)格要求分不開的。由于本人單片機(jī)技術(shù)與通訊理論基礎(chǔ)薄弱,所以,從論文一開始,導(dǎo)師就時常督促和幫助我,努力提高理論水平和基礎(chǔ)知識,并提出了建設(shè)性、寶貴的指導(dǎo),確保了我的論文得以完成。導(dǎo)師嚴(yán)謹(jǐn)治學(xué)的態(tài)度和平易近人的作風(fēng),令我感動和欽佩,所以,在此我首先向我的導(dǎo)師表示深深的感謝和誠摯的祝福,祝福老師工作順利、身體健康、合家歡樂。同時感謝多年教育和幫助我的所有生物醫(yī)學(xué)工程專業(yè)的老師。還要感謝我們專業(yè)的許多同學(xué),他們在大學(xué)四年給了我許多的支持和幫助,給我?guī)砹藷o數(shù)的快樂。最后我要感謝我的家人,在我讀書期間給予的關(guān)心和支持。

        參考文獻(xiàn)

        [1] 肖輝.電氣照明技術(shù)—照明電氣設(shè)計[M]. 北京,機(jī)械工業(yè)出版社,2004:124-127.

        . applications construction, 2001: 12-13.

        [3] FCCPERP. Lighting research program[J]. Computer Networks, 2000.3: 14-16.

        [4] 楊清翼.智能照明控制器的設(shè)計[D].綿陽:西南科技大學(xué)本科畢業(yè)設(shè)計論文,2006.

        [5] 殷志華,鄭海,楊浩.單片機(jī)與PC機(jī)串口通信的實(shí)現(xiàn)[J].中國數(shù)據(jù)通信,2006,5(1):20-25.

        [6] 王志宏.單片機(jī)與PC機(jī)的串口通訊[J].現(xiàn)代電子技術(shù),2005,5:4-11.

        [7] 劉煥平. MCS51單片機(jī)與RS-232C串行口連接[J].石家莊職業(yè)技術(shù)學(xué)院學(xué)報,2005,8(2):15-30.

        [8] 朱立忠,馮丹. PC機(jī)與MCS51單片機(jī)通信接口電路的設(shè)計[J].沈陽工業(yè)學(xué)院學(xué)報,2005,(5):20-45.

        [9] 楊會成,卓芝強(qiáng).單片機(jī)與PC機(jī)串行數(shù)據(jù)通信的工程實(shí)踐[J].微型機(jī)與應(yīng)用,2005,(05):6-12.

        . Computer Networks, 2006, 3: 379-399.

        [11] 李振起,馬君,唐兵. PC機(jī)與51系列單片機(jī)的遠(yuǎn)距離串口通信[J].煤礦機(jī)械,2003,7(07) :12-42.

        [12] 陳壽元.單片機(jī)多機(jī)串行通信的改進(jìn)方案[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2005,(5):79-83.

        [13] 官波,容太平. AT89C51的擴(kuò)展串口與PC機(jī)間的通訊[J].國外電子元器件,2004, (03):12-20.

        [14] 成都國騰微電子有限公司. GM8125通用異步串口擴(kuò)展芯片數(shù)據(jù)手冊.成都國騰微電子有限公司,2006.1.

        [15] 于永會. 照明片區(qū)網(wǎng)絡(luò)化系統(tǒng)設(shè)計[D].綿陽:西南科技大學(xué)本科畢業(yè)設(shè)計論文,2006.

        [16] 丁建軍,陳定方.基于VB6.0的PC機(jī)與單片機(jī)間的串口通信[J].機(jī)械與電子,2004,12(5):7-12.

        [17] 閆通海,周到.利用MSComm控件實(shí)現(xiàn)PC機(jī)與單片機(jī)串口通訊的研究[J].應(yīng)用科技,2006,(5):12-16.

        . UCLA Technical Reports, 2003,2: 25-40.

        [19] 金衛(wèi)民.VB下利用串口進(jìn)行數(shù)據(jù)通訊的研究[J].計算機(jī)工程與設(shè)計,2006,5 (12):20-45.

        第8篇:vb程序設(shè)計論文范文

        論文摘要:目前,大部分中職學(xué)校的程序設(shè)計語言教學(xué)效果不太理想,文章分析了嘗試法在該課程教學(xué)中的可行性。

        目前,大部分中職學(xué)校根據(jù)知識點(diǎn)的結(jié)構(gòu)組織程序設(shè)計語言教學(xué),在教學(xué)過程中教師都習(xí)慣了開展注入式的教學(xué)。在這種教學(xué)方法下很容易導(dǎo)致學(xué)生只會簡單照搬和模仿教學(xué)中的示例代碼,對所學(xué)的知識很難靈活的運(yùn)用,缺乏自己動手編寫代碼去處理具體問題的能力。著名科學(xué)家牛頓先發(fā)現(xiàn)了“蘋果會從樹上掉下來”這個普通的自然現(xiàn)象,經(jīng)過仔細(xì)的分析和研究問題,最后才總結(jié)出了萬有引力定律。而不是先對萬有引力定律進(jìn)行研究,再去發(fā)現(xiàn)現(xiàn)象和推導(dǎo)實(shí)際結(jié)果。科學(xué)家往往都是從具體現(xiàn)象、實(shí)際問題出發(fā),分析和研究問題,從實(shí)踐到理論實(shí)現(xiàn)升華,然后從理論回歸到實(shí)踐。因此,教師在課堂上向?qū)W生講授各種知識時,應(yīng)該先讓學(xué)生詳細(xì)的了解存在的問題、知識是發(fā)展的過程,從而幫助學(xué)生深入理解知識、能夠靈活應(yīng)用知識,而不能只是簡單地告訴學(xué)生結(jié)果,讓學(xué)生在實(shí)踐中進(jìn)行應(yīng)用。

        程序設(shè)計語言工作需要的是具有創(chuàng)新能力的技術(shù)人才,在教學(xué)中不僅需要采用嘗試法幫助學(xué)生加深對知識的理解和應(yīng)用,更為重要的是需要遵循知識被發(fā)現(xiàn)、分析到應(yīng)用這一全過程,把知識傳遞給學(xué)生,讓學(xué)生對知識的本質(zhì)深刻的理解。所以,本文重點(diǎn)論述了在程序設(shè)計語言教學(xué)中運(yùn)用嘗試法進(jìn)行教學(xué),在課堂上從具體的問題入手,啟發(fā)學(xué)生先自己嘗試著去對程序設(shè)計語言中的基本概念、基本方法和基本結(jié)構(gòu)進(jìn)行理解,然后在具體實(shí)例中運(yùn)用。

        一、嘗試法在程序語言教學(xué)中的優(yōu)勢

        在計算機(jī)專業(yè)的課程體系里,程序設(shè)計語言主要包括匯編語言和高級程序設(shè)計語言。在計算機(jī)領(lǐng)域程序設(shè)計語言是核心的專業(yè)基礎(chǔ)課程,在專業(yè)課程體系中居于基礎(chǔ)性和先導(dǎo)性地位,是進(jìn)行后續(xù)課程學(xué)習(xí)的重要工具基礎(chǔ)和技術(shù)。通過程序設(shè)計語言課程的學(xué)習(xí),學(xué)生不僅能獲得基本的設(shè)計程序能力、使學(xué)生獲得一定的基于計算機(jī)進(jìn)行計算的思考能力,同時對學(xué)生后續(xù)課程的學(xué)習(xí)和興趣都有極大的影響。程序設(shè)計語言教學(xué)中授課的重點(diǎn)是基本語法、編程技巧、典型算法和常用的函數(shù),使學(xué)生掌握一定的解決實(shí)際問題的能力和具備程序設(shè)計的思想。

        1.嘗試與生活實(shí)際相結(jié)合,可以激發(fā)起學(xué)生的求知熱情。嘗試法教學(xué)法從問題入手,根據(jù)不同的教學(xué)內(nèi)容教學(xué)設(shè)計出不同的教學(xué)任務(wù),結(jié)合實(shí)際要求學(xué)生做出反應(yīng),可以調(diào)動起學(xué)生的學(xué)習(xí)熱情,在學(xué)習(xí)的過程中發(fā)揮主動性和學(xué)習(xí)自覺性。例如,在語言程序設(shè)計教學(xué)中講授《數(shù)據(jù)庫》時,教師如果只是簡單的照著書本的例子帶領(lǐng)學(xué)生驗(yàn)證所學(xué)內(nèi)容,往往學(xué)生會感覺十分的無聊,如果在課前教師能布置一些有代表性的探索性任務(wù):如《運(yùn)動會管理系統(tǒng)》、《學(xué)生成績管理系統(tǒng)》等,讓學(xué)生嘗試進(jìn)行程序設(shè)計技巧和基本語法、語句的學(xué)習(xí),學(xué)生因?yàn)橛辛嗣鞔_的學(xué)習(xí)目標(biāo),則會積極主動地進(jìn)行嘗試性的實(shí)踐學(xué)習(xí)。

        2.嘗試的任務(wù)可以理論聯(lián)系實(shí)際,可以促進(jìn)理論的深化學(xué)習(xí)。在嘗試法教學(xué)中,教師通過布置一些緊密聯(lián)系實(shí)際生活的任務(wù),當(dāng)學(xué)生完成任務(wù)之后,不僅可以幫助學(xué)生對理論加深理解,拓展理論視野,提高分析的能力。另外,學(xué)生在嘗試的過程中不斷思考如何把理論在實(shí)際中的運(yùn)用,從而迅速地從單純的掌握理論逐漸向應(yīng)用于實(shí)踐轉(zhuǎn)化,真正實(shí)現(xiàn)理論與實(shí)際操作的結(jié)合。

        3.嘗試法教學(xué)有利于加強(qiáng)教學(xué)過程中的交流,培養(yǎng)學(xué)生的能力。嘗試教學(xué)法是一種通過“行為導(dǎo)向”進(jìn)行教學(xué)的現(xiàn)代教學(xué)方法。在教學(xué)中,嘗試的任務(wù)取材于生活,使學(xué)生有著直接的感受,從而積極主動的進(jìn)行嘗試性學(xué)習(xí),師生相互的進(jìn)行交流,通過反復(fù)的練習(xí)學(xué)生可以具備適當(dāng)?shù)纳鐣芰Α⒙殬I(yè)能力、學(xué)習(xí)能力和創(chuàng)新意識。在這樣的教學(xué)中,尊重了學(xué)生的學(xué)習(xí)主體地位,不會簡單要求學(xué)生去強(qiáng)記內(nèi)容,學(xué)生必須開動腦筋、認(rèn)真思考,不斷進(jìn)行嘗試,通過這樣反復(fù)的訓(xùn)練,必然能夠提高學(xué)生分析問題、解決問題的能力。

        二、程序設(shè)計中運(yùn)用嘗試法的教學(xué)策略

        雖然嘗試法教學(xué)沒有固定的教學(xué)模式,但在教學(xué)的過程中主要包含以下三個方面:設(shè)計任務(wù)-進(jìn)行嘗試探索-總結(jié)效果。

        1.設(shè)計任務(wù)。設(shè)計任務(wù)是利用嘗試法進(jìn)行教學(xué)的基礎(chǔ)和前提。教師必須根據(jù)教學(xué)要求和課時安排設(shè)計任務(wù),把將要學(xué)習(xí)的新知識科學(xué)的隱含在眾多的學(xué)習(xí)任務(wù)當(dāng)中,使學(xué)生在嘗試著完成任務(wù)的過程中對學(xué)科知識進(jìn)行理解,提高學(xué)生的技能。在設(shè)計任務(wù)時應(yīng)該注意這幾個方面:第一,給學(xué)生安排的任務(wù)一定要典型。任務(wù)必須可以把課程的絕大部分知識點(diǎn)都涵蓋進(jìn)去。第二,任務(wù)一定要具有實(shí)踐性。設(shè)計的學(xué)習(xí)任務(wù)要與現(xiàn)實(shí)緊密聯(lián)系,學(xué)生能夠理解。第三,任務(wù)一定要有針對性。教師要根據(jù)學(xué)生的接受能力設(shè)計或選擇任務(wù)。第四,任務(wù)一定要有系統(tǒng)性。在教學(xué)的整個過程中,使用到的大多數(shù)任務(wù)應(yīng)該是相互聯(lián)系的,由易到難、前后相連貫進(jìn)行編排。在進(jìn)行數(shù)據(jù)庫教學(xué)時,要求學(xué)生一般能根據(jù)實(shí)際的一個需求,嘗試著去完成設(shè)計一個數(shù)據(jù)庫系統(tǒng),要強(qiáng)調(diào)分析其需求、數(shù)據(jù)整理、功能劃分和系統(tǒng)設(shè)計,在完成整個系統(tǒng)的過程中學(xué)生都嘗試自己去完成。每個數(shù)據(jù)庫系統(tǒng)都是十分復(fù)雜的任務(wù),可以把它分成很多小的任務(wù),根據(jù)教學(xué)的安排逐步完成。具體到每個任務(wù)的要求要用程序?qū)崿F(xiàn)哪種功能時,教師必須根據(jù)學(xué)生的認(rèn)知水平來確定,但不能設(shè)置任務(wù)的功能過于簡單。

        2.進(jìn)行嘗試探索。進(jìn)行嘗試法教學(xué)主要是以任務(wù)為基礎(chǔ)對問題進(jìn)行分析,解決問題。想成功的開展嘗試法教學(xué),關(guān)鍵是教師要做好引導(dǎo)啟發(fā)的工作,使學(xué)生積極獨(dú)立地綜合運(yùn)用所學(xué)的知識進(jìn)行思考,大膽進(jìn)行探索。在實(shí)際操作中,設(shè)計和完成一個數(shù)據(jù)庫管理系統(tǒng)的過程是一個對任務(wù)不斷分解的過程。例如,讓學(xué)生嘗試設(shè)計《學(xué)生學(xué)籍管理系統(tǒng)》,教師可以聯(lián)系實(shí)際引導(dǎo)學(xué)生思考這些問題:學(xué)籍管理系統(tǒng)對學(xué)生的成績進(jìn)行管理,處理成績時會涉及到哪些方面?另外,還要體現(xiàn)出班級的人數(shù)的變化,比如學(xué)生人數(shù)增加或減少等。在管理系統(tǒng)的使用過程中,還會涉及到查詢、刪除、修改和打印等眾多的功能。該系統(tǒng)如果安排專人負(fù)責(zé),還要規(guī)定登錄密碼和用戶名,貫徹保密性等。隨著深入細(xì)致的分析,可以不斷的完善整個系統(tǒng)功能,不斷清晰結(jié)構(gòu)。這實(shí)際是把拆解任務(wù)的內(nèi)容為眾多的子任務(wù),逐步地布置給學(xué)生,讓學(xué)生進(jìn)行嘗試。在這個過程中,教師可以提供一些管理系統(tǒng)的實(shí)例讓學(xué)生參考,讓學(xué)生對任務(wù)有個感性的認(rèn)識,知道可以通過學(xué)習(xí)完成這些任務(wù),幫助學(xué)習(xí)逐步消除對學(xué)習(xí)任務(wù)的畏懼,從而樹立信心,順利完成嘗試性的教學(xué)過程。

        3.總結(jié)效果。總結(jié)嘗試性教學(xué)的效果是指教師與學(xué)生對教學(xué)的過程共同進(jìn)行反思,通過自我評價和相互評價,教師適當(dāng)?shù)淖龀黾皶r的點(diǎn)評,幫助學(xué)生進(jìn)行總結(jié)和歸納。評價與總結(jié)階段不僅是提高學(xué)生能力的重要階段,同時可以培養(yǎng)學(xué)生的成就感和自信心。當(dāng)學(xué)生嘗試著完成那些子任務(wù)或系統(tǒng)任務(wù)時,學(xué)生就逐漸的建立了自己獨(dú)特的認(rèn)知結(jié)構(gòu)。這時教師還要對學(xué)生嘗試性學(xué)習(xí)的成果進(jìn)行交流、展示、分析、討論和點(diǎn)評,對學(xué)生的學(xué)習(xí)情況及時的做出評價和反饋。另外,每當(dāng)學(xué)生獨(dú)立的完成一項(xiàng)嘗試性學(xué)習(xí)任務(wù),教師應(yīng)該及時的對其進(jìn)行表揚(yáng)和鼓勵,使學(xué)生獲得一定的成就感,這樣能夠激發(fā)起學(xué)生的學(xué)習(xí)熱情和學(xué)習(xí)興趣,提高自信心,使學(xué)生在不斷地對自己的知識進(jìn)行完善的過程中,也提高對自身的評價和自我認(rèn)識的能力,讓學(xué)生保持一種良好的心理狀態(tài),進(jìn)行嘗試性的學(xué)習(xí)。

        嘗試性程序設(shè)計語言教學(xué)方法,是筆者在總結(jié)多年的教學(xué)實(shí)踐中發(fā)現(xiàn)的,應(yīng)用到日常的教學(xué)過程中,可以取得良好的教學(xué)效果。嘗試性教學(xué)方法的應(yīng)用可以幫助學(xué)生提高對程序設(shè)計語言知識的理解,獲得較強(qiáng)的解決問題的能力,提高學(xué)生的通過問題發(fā)現(xiàn)知識的“自我學(xué)習(xí)”能力。這種教學(xué)方法還需要在實(shí)踐中進(jìn)一步的完善和總結(jié)。 轉(zhuǎn)貼于

        參考文獻(xiàn)

        [1]朱昌流.論啟發(fā)式教學(xué)的有效實(shí)施[J].教育與職業(yè),2007,(18).

        [2]陶沼靈.啟發(fā)式教學(xué)方法研究綜述[J].中國成人教育,2007,(4).

        [3]邵潔.課堂學(xué)習(xí)共同體的有效建構(gòu):以高級語言程序設(shè)計(VB)課程為例[J].現(xiàn)代教育技術(shù),2009,19,(8).

        [4]樊新華,孟鉑.“C程序設(shè)計”啟發(fā)式實(shí)例教學(xué)探討[J].計算機(jī)教育,2008,(18).

        第9篇:vb程序設(shè)計論文范文

        關(guān)鍵詞關(guān)鍵詞:數(shù)據(jù)庫課程設(shè)計;項(xiàng)目驅(qū)動;教學(xué)方法;考核方法;能力培養(yǎng)

        中圖分類號:G434 文獻(xiàn)標(biāo)識碼:A 文章編號文章編號:16727800(2013)008017402

        作者簡介作者簡介:邱月(1979-),女,碩士,湖北經(jīng)濟(jì)學(xué)院信息管理學(xué)院講師,研究方向?yàn)閿?shù)據(jù)庫技術(shù)。

        0 引言

        數(shù)據(jù)庫技術(shù)已經(jīng)成為先進(jìn)信息技術(shù)的重要組成部分,是現(xiàn)代計算機(jī)信息系統(tǒng)和計算機(jī)應(yīng)用系統(tǒng)的基礎(chǔ)和核心。數(shù)據(jù)庫技術(shù)是將數(shù)據(jù)庫與軟件開發(fā)相結(jié)合,數(shù)據(jù)庫設(shè)計和基于數(shù)據(jù)庫的應(yīng)用程序開發(fā)。為此,課程要求學(xué)生選用主流DBMS,自選某種高級程序設(shè)計語言,實(shí)現(xiàn)一個完整的以數(shù)據(jù)庫為核心的B/S或C/S架構(gòu)的應(yīng)用系統(tǒng)。掌握設(shè)計實(shí)現(xiàn)一個完整的產(chǎn)品化導(dǎo)向的數(shù)據(jù)庫應(yīng)用系統(tǒng)的流程和方法,包括需求分析、數(shù)據(jù)庫設(shè)計、應(yīng)用程序設(shè)計。本文分析了湖北經(jīng)濟(jì)學(xué)院開設(shè)數(shù)據(jù)庫課程設(shè)計以來,實(shí)踐教學(xué)環(huán)節(jié)中存在的問題,結(jié)合項(xiàng)目模擬實(shí)訓(xùn)教學(xué)方法的基本原理,提出了基于團(tuán)隊(duì)項(xiàng)目模擬實(shí)訓(xùn)的數(shù)據(jù)庫課程設(shè)計教學(xué)方法的具體方案及實(shí)施效果。

        1 數(shù)據(jù)庫課程設(shè)計教學(xué)現(xiàn)狀

        (1)題目過少不夠開放。湖北經(jīng)濟(jì)學(xué)院是一所財經(jīng)類教學(xué)型學(xué)校,開設(shè)的主要專業(yè)為經(jīng)濟(jì)管理類。但目前的題目多數(shù)都是老師提供給學(xué)生的,題材類似,不可避免地會出現(xiàn)學(xué)生相互抄襲的現(xiàn)象。另外,題目呆板,沒有和本校的專業(yè)特色相結(jié)合,選擇余地太少。長此以往,會使學(xué)生養(yǎng)成不勞而獲的壞習(xí)慣,不利于學(xué)生畢業(yè)之后適應(yīng)競爭激烈的社會。

        (2)學(xué)生輕分析設(shè)計,重編程實(shí)現(xiàn)。 學(xué)生把編程工作放在數(shù)據(jù)庫設(shè)計中的首要位置,輕數(shù)據(jù)庫及其對象的設(shè)計,重開發(fā)工具的使用。很多學(xué)生只重視系統(tǒng)功能模塊的設(shè)計與實(shí)現(xiàn),缺乏全局觀念。

        (3)學(xué)生缺乏整體意識,團(tuán)隊(duì)協(xié)作能力不強(qiáng)。在數(shù)據(jù)庫系統(tǒng)開發(fā)的過程中,學(xué)生對系統(tǒng)沒有整體規(guī)劃,經(jīng)常把時間都花在需求分析和系統(tǒng)實(shí)現(xiàn)上,造成在學(xué)生項(xiàng)目后期沒有時間做系統(tǒng)測試,這樣開發(fā)出來的系統(tǒng)必然出現(xiàn)很多問題。

        軟件開發(fā)是一個系統(tǒng)工程,特別強(qiáng)調(diào)團(tuán)隊(duì)協(xié)作能力。如果一個課程設(shè)計題目只讓學(xué)生一個人完成,缺少與他人相互的交流,不利于交流與溝通能力的培養(yǎng)和項(xiàng)目的正常開展。原有教學(xué)模式下,學(xué)生做課程設(shè)計往往單打獨(dú)斗,沒有形成一個團(tuán)隊(duì)。

        (4)課程考核方式不夠科學(xué)。老師通常采用平時成績和實(shí)驗(yàn)報告相加權(quán)作為總成績。在這種考核方式下學(xué)生是被動地完成任務(wù),不知道所做項(xiàng)目的評定標(biāo)準(zhǔn),因而積極性不高,也不能通過項(xiàng)目設(shè)計有效地提升自己的能力。

        2 數(shù)據(jù)庫課程設(shè)計基礎(chǔ)準(zhǔn)備及教學(xué)目標(biāo)制定

        2.1 基礎(chǔ)準(zhǔn)備

        綜合性的實(shí)驗(yàn)課程往往需要很多課程作支撐。在該課程開設(shè)之前,前期學(xué)生應(yīng)該已經(jīng)學(xué)習(xí)了C、C++等一些經(jīng)典的程序設(shè)計課程,學(xué)習(xí)了數(shù)據(jù)庫原理及軟件工程課程,對于數(shù)據(jù)庫原理課程中的相關(guān)概念例如數(shù)據(jù)庫文件的創(chuàng)建、表的建立以操作、視圖與SQL查詢、存儲過程與觸發(fā)器等進(jìn)行了相關(guān)實(shí)驗(yàn),對于關(guān)系型數(shù)據(jù)庫基本概念和特性有一個比較完整的認(rèn)識。由于課程設(shè)計中需要將數(shù)據(jù)庫原理與工程項(xiàng)目相結(jié)合設(shè)計出具體的應(yīng)用程序和界面,所以學(xué)生還需掌握至少一門前臺開發(fā)工具,如 、或PHP等,讓不同層次的學(xué)生選擇不同的培養(yǎng)方案,有針對性地進(jìn)行學(xué)習(xí)。

        2.2 教學(xué)目標(biāo)

        結(jié)合教材上關(guān)于數(shù)據(jù)庫設(shè)計的思想和方法,對一些簡單的信息管理問題進(jìn)行必要的分析和設(shè)計。在掌握了數(shù)據(jù)庫系統(tǒng)的基本原理和基本方法的基礎(chǔ)上,熟悉數(shù)據(jù)庫管理系統(tǒng)的工具及語言。能查閱資料解決數(shù)據(jù)庫技術(shù)方面的問題,具備在微軟開發(fā)平臺下進(jìn)行數(shù)據(jù)庫設(shè)計和管理操作能力,培養(yǎng)數(shù)據(jù)庫應(yīng)用系統(tǒng)開發(fā)的基本能力,項(xiàng)目合作、團(tuán)隊(duì)精神及小組交流的能力,培養(yǎng)學(xué)生運(yùn)用數(shù)據(jù)庫管理系統(tǒng)解決實(shí)際問題的能力。

        3 數(shù)據(jù)庫課程設(shè)計教學(xué)構(gòu)思

        課程組根據(jù)學(xué)生的實(shí)際情況,制定了相應(yīng)的教學(xué)計劃。本課程安排在一個學(xué)期內(nèi),32學(xué)時,每周具體安排如表1所示。

        3.1 人員安排及開題

        把整個班級按照開發(fā)小組的形式進(jìn)行分組,每組4~5人,選一名組長,每個同學(xué)承擔(dān)不同的角色,共同完成任務(wù)。在整個過程中,為了達(dá)到鍛煉的目的,每個同學(xué)的角色可以互換。

        在選題方面,應(yīng)充分考慮到學(xué)生的專業(yè)特色,體現(xiàn)經(jīng)管類專業(yè)的特點(diǎn),選擇具有專業(yè)特色的案例,以激發(fā)學(xué)生的學(xué)習(xí)興趣。比如,針對“旅游管理”專業(yè)和“國際金融”專業(yè),可以根據(jù)專業(yè)要求來分別制定教學(xué)案例,使學(xué)生在數(shù)據(jù)庫課程設(shè)計中加深對本專業(yè)課程的理解,從而達(dá)到數(shù)據(jù)庫課程設(shè)計和專業(yè)特色融合的目的。在制定選題的過程中,教師應(yīng)進(jìn)行充分的調(diào)研,與該專業(yè)的教師進(jìn)行討論,幫助學(xué)生選擇他們熟悉的題目,如旅游酒店管理系統(tǒng)、學(xué)生成績管理系統(tǒng)、人力資源管理系統(tǒng)等,或者選擇學(xué)生生活中經(jīng)常接觸、能很快上手的內(nèi)容。同時,應(yīng)注意控制題目的規(guī)模和難度,使學(xué)生經(jīng)過努力后能在規(guī)定的時間內(nèi)完成。這個階段可以充分調(diào)動學(xué)生的積極性,鼓勵學(xué)生自己選題組建項(xiàng)目小組。這種方式經(jīng)檢驗(yàn)取得了較好的效果。

        3.2 需求分析

        在此階段,要盡可能收集課題的全面需求,利用不同小組互相模擬實(shí)際用戶的形式,開小組討論會來確定需求,增強(qiáng)學(xué)生的溝通能力和開發(fā)興趣,并引導(dǎo)學(xué)生自己畫出數(shù)據(jù)流圖。

        例如,某家工廠的采購部每天需要一張訂貨報表,表中列出所有需要再次訂貨的零件。對于每個需要再次訂貨的零件列出下述數(shù)據(jù):零件編號、零件名稱、訂貨數(shù)量,目前價格、主要供應(yīng)者。零件入庫應(yīng)有入庫單,零件出庫應(yīng)有出庫單,通過放在倉庫中的CRT終端把入庫單或出庫單報告給訂貨系統(tǒng)。當(dāng)某種零件的庫存數(shù)量少于庫存量臨界值時就應(yīng)該再次訂貨。

        當(dāng)系統(tǒng)比較復(fù)雜時,應(yīng)當(dāng)采用分層描述的方法。一般第一層描述系統(tǒng)的全貌,第二層分別描述各子系統(tǒng)的結(jié)構(gòu)。如還未表達(dá)清楚,可以繼續(xù)細(xì)化。

        3.3 系統(tǒng)設(shè)計與實(shí)施

        確定用戶需求后,進(jìn)入系統(tǒng)設(shè)計階段。物理設(shè)計階段應(yīng)該充分利用表、視圖、存儲過程、觸發(fā)器等各個數(shù)據(jù)庫對象的特點(diǎn),建立一個完整的數(shù)據(jù)庫。要引導(dǎo)學(xué)生利用課程設(shè)計來熟悉數(shù)據(jù)庫開發(fā)的一些常用技術(shù)和工具。例如,在數(shù)據(jù)庫課程設(shè)計中可以教學(xué)生怎樣使用Power Designer來做數(shù)據(jù)庫設(shè)計。在軟件公司實(shí)際的數(shù)據(jù)庫系統(tǒng)開發(fā)中,有很多工具可以直接完成從數(shù)據(jù)庫概念模型到物理模型的設(shè)計和轉(zhuǎn)化。

        系統(tǒng)實(shí)施階段,各小組可以選擇自己熟悉的程序設(shè)計語言動手編寫代碼,完成系統(tǒng)各個模塊的功能。開發(fā)語言可選擇機(jī)房環(huán)境,有Java、VB、VC、PB等;數(shù)據(jù)庫可使用提供的SQL Serever2000、DB2、MySQL5等主流DBMS;軟件架構(gòu)兩層、三層都可以。教師對各小組學(xué)生在設(shè)計中遇到的具體問題,有針對性地給與啟發(fā)式的引導(dǎo)。

        3.4 系統(tǒng)測試

        系統(tǒng)測試階段可以選取小組之間交換測試,主要從功能測試、數(shù)據(jù)庫測試兩個方面找出系統(tǒng)的缺陷,對軟件質(zhì)量進(jìn)行評價打分。列出測試計劃,往各數(shù)據(jù)庫表中插入正確的測試數(shù)據(jù),測試數(shù)據(jù)插入情況和各種約束作用,并記錄結(jié)果;往各數(shù)據(jù)庫表中插入錯誤的測試數(shù)據(jù),記錄出錯結(jié)果;在各數(shù)據(jù)表中修改測試數(shù)據(jù),記錄測試結(jié)果;各數(shù)據(jù)表中刪除測試數(shù)據(jù),記錄測試結(jié)果;創(chuàng)建各權(quán)限等級的用戶,授予相應(yīng)的權(quán)限,然后按權(quán)限等級執(zhí)行相應(yīng)操作,查看操作結(jié)果是否正確,最后再編寫實(shí)驗(yàn)報告。

        數(shù)據(jù)庫功能測試主要是對界面進(jìn)行測試,按用戶類型進(jìn)行分部測試,查看每一種類型的用戶功能是否有欠缺;用戶操作是否符合實(shí)際,是否具有意義;尤其是在功能實(shí)現(xiàn)上,不同情況,會有怎樣不同的處理;查看在出錯的情況下,系統(tǒng)如何處理。3.5 完成設(shè)計報告

        設(shè)計報告主要內(nèi)容要求有系統(tǒng)需求分析(功能模塊圖)、基本ER圖(要求標(biāo)明主碼、外碼、聯(lián)系類型)、用戶子模式設(shè)計、按模塊分析所編寫的應(yīng)用程序等。撰寫設(shè)計報告前小組中各成員必須對自己的工作進(jìn)行歸納、分析和總結(jié)。小結(jié)一般包括工作內(nèi)容、工作量大小、自己完成情況、遇到的問題以及解決方法、收獲與體會、今后努力與改進(jìn)方向等。教師給出設(shè)計報告書寫規(guī)范,學(xué)生根據(jù)系統(tǒng)分析設(shè)計結(jié)果完成該部分內(nèi)容。報告編寫是考查一個學(xué)生總結(jié)工作、撰寫科技論文的能力。該環(huán)節(jié)考查的重點(diǎn):報告是否內(nèi)容完整、充實(shí),條理是否清楚,格式是否符合科技文章規(guī)范。

        3.6 檢查與考核

        考核是檢驗(yàn)教學(xué)成果的有效方式和重要手段,對學(xué)生學(xué)習(xí)和教師教學(xué)具有重要導(dǎo)向作用,不同的考核方式能激發(fā)學(xué)生的學(xué)習(xí)動機(jī)。除了加強(qiáng)平時考勤外,教師還需在每個階段對各個項(xiàng)目小組進(jìn)行跟蹤檢查,對各個階段的完成情況進(jìn)行記錄。從數(shù)據(jù)庫原理、數(shù)據(jù)庫應(yīng)用和數(shù)據(jù)庫設(shè)計三方面對學(xué)生進(jìn)行綜合評測,達(dá)到對數(shù)據(jù)庫系統(tǒng)主要內(nèi)容和框架的評測。具體考核指標(biāo)權(quán)重為:平時表現(xiàn) (25%) + 任務(wù)完成情況 (30%) + 答辯 (20%) + 設(shè)計論文 (25%)。同時還要鼓勵學(xué)生在課程設(shè)計后,盡量撰寫相應(yīng)科研論文,積極申報校級學(xué)生科研項(xiàng)目。對于能力非常突出的學(xué)生,可以建立課外研究小組,讓他們參與到教師在研的省部級科研項(xiàng)目中,進(jìn)一步提升他們的專業(yè)技能和綜合素質(zhì)。

        4 結(jié)語

        數(shù)據(jù)庫技術(shù)是一門理論和實(shí)踐并重的學(xué)科。課程設(shè)計是否成功的標(biāo)準(zhǔn)在于學(xué)生是否通過項(xiàng)目開發(fā),將自己所學(xué)到的數(shù)據(jù)庫知識運(yùn)用于實(shí)際需求中,是否提高了學(xué)生的動手能力。通過兩年的教學(xué)實(shí)踐證明,以這種方式開展課程設(shè)計更貼近企業(yè)實(shí)際的項(xiàng)目開發(fā)方式,能倡導(dǎo)學(xué)生主動參與的探究式學(xué)習(xí)和研究,改變學(xué)生被動接受、大量反復(fù)操練的學(xué)習(xí)和實(shí)驗(yàn)方式, 真正培養(yǎng)學(xué)生嚴(yán)謹(jǐn)周密的思維和臨時處理問題的能力,滿足企事業(yè)單位信息化建設(shè)的用人需求,有效地解決了理論教學(xué)與實(shí)踐教學(xué)脫節(jié)和經(jīng)管專業(yè)學(xué)生數(shù)據(jù)庫工程實(shí)踐能力薄弱的問題。另外,做好數(shù)據(jù)庫課程設(shè)計作業(yè)有利于學(xué)生畢業(yè)設(shè)計報告和畢業(yè)論文撰寫。今后學(xué)生面臨的畢業(yè)設(shè)計其實(shí)就是一個完整的系統(tǒng)設(shè)計,是課程設(shè)計的擴(kuò)大化、完整化,為設(shè)計報告的撰寫、文獻(xiàn)資料的查閱也為今后撰寫畢業(yè)論文打下堅實(shí)的基礎(chǔ)。

        參考文獻(xiàn)參考文獻(xiàn):

        [1] 趙慧敏,楊鑫華,牛一捷. 數(shù)據(jù)庫課程設(shè)計實(shí)踐教學(xué)改革探索[J].當(dāng)代教育論壇,2011(8).

        [2] 張志鋒,王文冰.以就業(yè)為導(dǎo)向的學(xué)生綜合能力培養(yǎng)教改研究[J].計算機(jī)教育,2010(11).

        [3] 林巧,丁革建.數(shù)據(jù)庫課程設(shè)計的項(xiàng)目化實(shí)驗(yàn)教學(xué)方法[J]. 實(shí)驗(yàn)室研究與探索,2009(5).

        精選范文推薦
        无码人妻一二三区久久免费_亚洲一区二区国产?变态?另类_国产精品一区免视频播放_日韩乱码人妻无码中文视频
      2. <input id="zdukh"></input>
      3. <b id="zdukh"><bdo id="zdukh"></bdo></b>
          <b id="zdukh"><bdo id="zdukh"></bdo></b>
        1. <i id="zdukh"><bdo id="zdukh"></bdo></i>

          <wbr id="zdukh"><table id="zdukh"></table></wbr>

          1. <input id="zdukh"></input>
            <wbr id="zdukh"><ins id="zdukh"></ins></wbr>
            <sub id="zdukh"></sub>
            亚洲区不卡顿区在线观看 | 色青青久久影视 | 亚洲日韩女同一区二区三区 | 永久免费国产综合 | 在线看片国产的免费 | 亚洲熟女中文字幕 |