![畢業(yè)設(shè)計(論文)電子秤軟件設(shè)計_第1頁](http://file2.renrendoc.com/fileroot_temp3/2021-10/5/4866a0f6-80ce-4954-a501-db3c5b3dae41/4866a0f6-80ce-4954-a501-db3c5b3dae411.gif)
![畢業(yè)設(shè)計(論文)電子秤軟件設(shè)計_第2頁](http://file2.renrendoc.com/fileroot_temp3/2021-10/5/4866a0f6-80ce-4954-a501-db3c5b3dae41/4866a0f6-80ce-4954-a501-db3c5b3dae412.gif)
![畢業(yè)設(shè)計(論文)電子秤軟件設(shè)計_第3頁](http://file2.renrendoc.com/fileroot_temp3/2021-10/5/4866a0f6-80ce-4954-a501-db3c5b3dae41/4866a0f6-80ce-4954-a501-db3c5b3dae413.gif)
![畢業(yè)設(shè)計(論文)電子秤軟件設(shè)計_第4頁](http://file2.renrendoc.com/fileroot_temp3/2021-10/5/4866a0f6-80ce-4954-a501-db3c5b3dae41/4866a0f6-80ce-4954-a501-db3c5b3dae414.gif)
![畢業(yè)設(shè)計(論文)電子秤軟件設(shè)計_第5頁](http://file2.renrendoc.com/fileroot_temp3/2021-10/5/4866a0f6-80ce-4954-a501-db3c5b3dae41/4866a0f6-80ce-4954-a501-db3c5b3dae415.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、1 引言11 課題研究背景現(xiàn)代社會的發(fā)展,對稱重技術(shù)提出了更高的要求。目前,臺式電子秤在商業(yè)貿(mào)易中的使用已相當(dāng)普遍,但存在較大的局限性:體積大、成本高、需要工頻交流電源供應(yīng)、攜帶不便、應(yīng)用場所受到制約。現(xiàn)有的便攜秤為桿秤或以彈簧壓縮、拉伸變形來實現(xiàn)計量的彈簧秤,居民用戶使用的是國家已經(jīng)明令淘汰的桿秤。多年來,人們一直期待測量準(zhǔn)確、攜帶方便、價格低廉的便攜式電子秤投放市場1。質(zhì)量是測量領(lǐng)域中的一個重要參數(shù),稱重技術(shù)自古以來就被人們所重視。公元前,人們?yōu)榱藢ω浳锝粨Q量進行估計,起初采用木材或陶土制作的容器對交換貨物進行計量。以后,又采用簡單的秤來測定質(zhì)量。據(jù)考證,世界上最古老的計量器具出土于中東和
2、埃及,最古老的衡器和砝碼出自于埃及。秤是最普遍、最普及的計量設(shè)備,電子秤取代機械秤是科學(xué)技術(shù)發(fā)展的必然規(guī)律。低成本、高智能化的電子秤無疑具有及其廣闊的市場前景2。12 稱重技術(shù)和衡器的發(fā)展衡器是通過作用于被測量物體的重力來確定該物體質(zhì)量的計量器具。在整個衡器的發(fā)展過程中,先后主要出現(xiàn)了六種類型的衡器:架盤天平、不等臂平臺秤、吊車秤、傾斜象限桿秤、彈簧秤和自動秤。其中,不等臂平臺秤(“十進制”)是當(dāng)今動態(tài)軌道衡的鼻祖,至今它仍是最通用的一種秤3。第一次世界大戰(zhàn)后,由于金融貿(mào)易和工業(yè)發(fā)展的需要,急需能進行快速稱量的衡器。機械式衡器在此期間得到很大的發(fā)展。當(dāng)時以傾斜杠桿案稱占絕大多數(shù),讀數(shù)裝置除扇形
3、度盤外,還有滾筒形度盤,從而擴大了讀數(shù)范圍并可附加價格標(biāo)尺。以后又出現(xiàn)了用于工業(yè)的帶雙擺錘測量機構(gòu)的圓形度盤指針式秤和成本低廉、帶投影標(biāo)尺的傾斜式杠桿秤4。第二次世界大戰(zhàn)后出現(xiàn)了電子衡器,它主要由稱重顯示控制器、稱重傳感器和電器控制等部分組成,其發(fā)展過程與其它事物一樣,經(jīng)歷了由簡單到復(fù)雜、由粗糙到精密、由機械到機電結(jié)合再到全電子化、由單一功能到多功能的過程5。近30年以來,工藝流程中的現(xiàn)場稱量、配料定量稱重、以及產(chǎn)品質(zhì)量的監(jiān)測等工作,都離不開能輸出電信號的電子衡器。這是因為電子衡器不僅能給出質(zhì)量或重量值的信號,而且也能作為總系統(tǒng)中的一個單元承擔(dān)著控制和檢驗功能,從而推進工業(yè)生產(chǎn)和貿(mào)易交往的自動
4、化和合理化。電子衡器具有反應(yīng)速度快、測量范圍廣、應(yīng)用面廣、結(jié)構(gòu)簡單、使用操作方便、信號遠傳、便于計算機控制等特點,計量精度高,而且實現(xiàn)了多功能、多用途。電子衡器已被廣泛應(yīng)用于各個行業(yè),近年來愈來愈多地參與到數(shù)據(jù)處理和過程控制之中,使現(xiàn)代稱重技術(shù)和數(shù)據(jù)系統(tǒng)成為工藝技術(shù)、儲運技術(shù)、預(yù)包裝技術(shù)、收貨業(yè)務(wù)及商業(yè)銷售領(lǐng)域中不可缺少的組成部分6。13 我國電子秤的發(fā)展現(xiàn)狀電子秤是載于秤的臺座、盤、鉤上的物品的重量由傳感器蠕變反應(yīng)平衡,而由儀器數(shù)字顯示的電子衡器。電子秤集機、電、儀于一體,具有多功能、高精度、快速和動態(tài)計量、穩(wěn)定可靠等特征,代表了衡器產(chǎn)品發(fā)展的方向。電子秤屬于日用衡器,為勞動密集型產(chǎn)品7。電
5、子秤產(chǎn)品總的發(fā)展趨勢是小型化、模塊化、集成化、智能化;其技術(shù)性能趨向是速率高、準(zhǔn)確度高、穩(wěn)定性高、可靠性高;其功能趨向是稱重計量的控制信息和非控制信息并重的“智能化”功能;其應(yīng)用性能趨向于綜合性和組合性8。目前我國產(chǎn)品標(biāo)準(zhǔn)中列入的十大類衡器(案秤、臺秤、地上衡、地中衡、吊稱、皮帶秤、料斗秤、檢驗秤、軌道衡和特種秤)均已實現(xiàn)了電子化。據(jù)近期統(tǒng)計,工業(yè)用衡器(按銷售量統(tǒng)計)中的電子產(chǎn)品已占三分之二左右,技術(shù)水平比較成熟的靜態(tài)衡器的計量范圍可以從1g到800t,部分非自動衡器(如電子計價秤、電子臺秤、電子地上衡、電子皮帶秤、電子吊秤和電子軌道衡等)已達到國際九十年代初期水平,有的產(chǎn)品達到了九十年代中
6、期水平;由于近十年來電子技術(shù)的迅速發(fā)展,商用衡器的加工能力迅速增長,產(chǎn)品成本大幅度降低,市場穩(wěn)步發(fā)展?,F(xiàn)在,電子計量稱重技術(shù)已越來越多地應(yīng)用于工業(yè)生產(chǎn)過程控制中,電子衡器的功能及應(yīng)用拓展到更廣泛領(lǐng)域。隨著我國加入wto組織,經(jīng)濟市場的開放度加大,一批具有國際先進水平的衡器產(chǎn)品和技術(shù)(如定量包裝秤、自動重量檢測秤、標(biāo)簽計價秤、電腦組合秤、耐壓式計量給煤機等,以及應(yīng)變計、稱重傳感器、稱重顯示器生產(chǎn)技術(shù))進入我國,這對電子秤的進一步普及和提高必將產(chǎn)生積極的、巨大的影響9。14 電子秤軟件設(shè)計實現(xiàn)的意義電子秤軟件的設(shè)計,它主要由電源、稱重傳感器、單片機、lcd顯示器等部分構(gòu)成。新型便攜式電子秤體積小、
7、計量準(zhǔn)確、攜帶方便、操作簡單、稱量速度快,能夠滿足商業(yè)貿(mào)易和居民家庭的使用需求,具有廣闊的應(yīng)用前景10。電子稱重技術(shù)的發(fā)展規(guī)律就是不斷的加強基礎(chǔ)研究并擴大應(yīng)用,擴展新技術(shù)領(lǐng)域,向相鄰學(xué)科和行業(yè)滲透,綜合各種技術(shù)方法解決稱重計量、自動控制、信息處理等問題。對某些商用電子計價秤而言,只具備稱重、計價、顯示、打印功能還遠遠不夠,現(xiàn)代商業(yè)系統(tǒng)還要求它能提供各種銷售信息,把稱重與管理自動化緊密結(jié)合,使稱重、計價、進庫、銷售管理一體化,實現(xiàn)管理自動化。這就要求電子計價秤能與電子計算機聯(lián)網(wǎng),把稱重系統(tǒng)與計算機系統(tǒng)組成一個完整的綜合控制系統(tǒng),為現(xiàn)代商業(yè)貿(mào)易物流的高效率發(fā)展提供強有力的支持11。2 軟件設(shè)計的原
8、理和思路21 軟件設(shè)計原理電子秤設(shè)計過程遵循了簡化硬件電路、以軟件代替硬件的設(shè)計原則,力求最大限度地減小儀器的體積和重量,降低儀器成本12。隨著計算機技術(shù)的飛速發(fā)展及其廣泛應(yīng)用,遠程控制以及數(shù)據(jù)采集系統(tǒng)多采用上位機和下位機的主從工作方式,由于串行通信具有高效可靠、價格便宜,遵循統(tǒng)一的標(biāo)準(zhǔn)等特點,因而成為主要的通信手段。微機的分析處理能力較強,有很好的人機界面和大容量的多種存儲方式,所以上位機一般采用微機。而單片機具有價格低,功能強,抗干擾能力好,溫限寬和面向控制等特點,所以下位機采用單片機來構(gòu)成主從式多機工作模式。在需要對采集的數(shù)據(jù)進行分析處理或在遠程需要對控制對象的控制過程進行統(tǒng)計或有條件控
9、制時,采用數(shù)據(jù)庫訪問技術(shù)能有效地解決這類問題13。軟件設(shè)計的總體思想是,根據(jù)預(yù)先編制的程序?qū)y量進行控制,軟件設(shè)計采用模塊化結(jié)構(gòu)。根據(jù)儀器的設(shè)定功能,將軟件劃分為若干個功能相對獨立的模塊,主要有儀器主程序、系統(tǒng)初始化、中斷控制、重量讀取、lcd顯示、單片機與pc機串口通信模塊。22 軟件設(shè)計思路電子秤軟件設(shè)計包括兩大部分,上位機(pc機)和下位機(單片機)。串口通信的概念非常簡單,串口按位(bit)發(fā)送和接收字節(jié)。盡管比按字節(jié)(byte)的并行通信慢,但是串口可以在使用一根線發(fā)送數(shù)據(jù)的同時用另一根線接收數(shù)據(jù)。它很簡單并且能夠?qū)崿F(xiàn)遠距離通信。比如ieee488定義并行通行狀態(tài)時,規(guī)定設(shè)備線總長不
10、得超過20米,并且任意兩個設(shè)備間的長度不得超過2米;而對于串口而言,長度可達1200米。典型地,串口用于ascii碼字符的傳輸。通信使用3根線完成:地線、發(fā)送、接收。由于串口通信是異步的,端口能夠在一根線上發(fā)送數(shù)據(jù)同時在另一根線上接收數(shù)據(jù)。其他線用于握手,但是不是必須的。串口通信最重要的參數(shù)是波特率、數(shù)據(jù)位、停止位和奇偶校驗。對于兩個進行通行的端口,這些參數(shù)必須匹配14。(1)波特率:這是一個衡量通信速度的參數(shù)。它表示每秒鐘傳送的bit的個數(shù)。例如300波特表示每秒鐘發(fā)送300個bit。當(dāng)我們提到時鐘周期時,我們就是指波特率例如如果協(xié)議需要4800波特率,那么時鐘是4800hz。這意味著串口通
11、信在數(shù)據(jù)線上的采樣率為4800hz。通常電話線的波特率為14400,28800和36600。波特率可以遠遠大于這些值,但是波特率和距離成反比。高波特率常常用于放置的很近的儀器間的通信,典型的例子就是gpib設(shè)備的通信。(2)數(shù)據(jù)位:這是衡量通信中實際數(shù)據(jù)位的參數(shù)。當(dāng)計算機發(fā)送一個信息包,實際的數(shù)據(jù)不會是8位的,標(biāo)準(zhǔn)的值是5、7和8位。如何設(shè)置取決于你想傳送的信息。比如,標(biāo)準(zhǔn)的ascii碼是0127(7位)。擴展的ascii碼是0255(8位)。如果數(shù)據(jù)使用簡單的文本(標(biāo)準(zhǔn) ascii碼),那么每個數(shù)據(jù)包使用7位數(shù)據(jù)。每個包是指一個字節(jié),包括開始/停止位,數(shù)據(jù)位和奇偶校驗位。由于實際數(shù)據(jù)位取決于
12、通信協(xié)議的選取,術(shù)語“包”指任何通信的情況。(3)停止位:用于表示單個包的最后一位。典型的值為1,1.5和2位。由于數(shù)據(jù)是在傳輸線上定時的,并且每一個設(shè)備有其自己的時鐘,很可能在通信中兩臺設(shè)備間出現(xiàn)了小小的不同步。因此停止位不僅僅是表示傳輸?shù)慕Y(jié)束,并且提供計算機校正時鐘同步的機會。適用于停止位的位數(shù)越多,不同時鐘同步的容忍程度越大,但是數(shù)據(jù)傳輸率同時也越慢。(4)奇偶校驗位:在串口通信中一種簡單的檢錯方式。有四種檢錯方式:偶、奇、高和低。當(dāng)然沒有校驗位也是可以的。對于偶和奇校驗的情況,串口會設(shè)置校驗位(數(shù)據(jù)位后面的一位),用一個值確保傳輸?shù)臄?shù)據(jù)有偶個或者奇?zhèn)€邏輯高位。例如,如果數(shù)據(jù)是011,那
13、么對于偶校驗,校驗位為0,保證邏輯高的位數(shù)是偶數(shù)個。如果是奇校驗,校驗位位1,這樣就有3個邏輯高位。高位和低位不真正的檢查數(shù)據(jù),簡單置位邏輯高或者邏輯低校驗。這樣使得接收設(shè)備能夠知道一個位的狀態(tài),有機會判斷是否有噪聲干擾了通信或者是否傳輸和接收數(shù)據(jù)是否不同步15。2.2.1 軟件設(shè)計上位機(pc機)部分上位機程序的編寫是通過visual basic 6.0軟件實現(xiàn)的。visual basic 6.0以其強大的功能、使用簡單、能在短時間內(nèi)開發(fā)出高效的通信程序而成為windows系統(tǒng)開發(fā)的主要編程語言。首先表現(xiàn)在vb可直接使用戶自定義控件vbx或ocx文件;其次表現(xiàn)在vb可通過調(diào)用動態(tài)鏈接庫(dl
14、l,dynamic link library)來加快應(yīng)用程序關(guān)鍵部分的執(zhí)行速度。利用vb提供的這些功能可方便地完成程序設(shè)計,本設(shè)計將利用vb6.0通信控件mscomm .vbx及其編程方法,編寫計算機與單片機進行數(shù)據(jù)通信的基本程序。 vb提供的通信控件mscomm32.ocx,使用前只需從project菜單下的components中選擇microsoft comm control6.0把mscomm32.ocx控件調(diào)入工具框中即可使用。利用該控件可對串行通信的數(shù)據(jù)發(fā)送和接收進行設(shè)置,還可對串口狀態(tài)及串行通信的信息格式和協(xié)議進行設(shè)置。在通信過程中可以通過觸發(fā)oncomm事件來追蹤、處理通信和錯誤
15、事件的發(fā)生。由于每個通信控件對應(yīng)一個串口,如果要訪問多個通信口,則要設(shè)計多個通信控件16。通信控件mscomm32.ocx提供了兩種處理通信的方法: (1)事件驅(qū)動方式它是一種功能很強的處理串行通信問題的方法,在實際工作中,往往要處理許多通信中的相關(guān)事件,可通過對oncomm屬性值進行編程來處理,它也包括檢測和處理通信錯誤等方面的問題,commevent值返回最近的通信事件或錯誤的數(shù)字代碼17。 (2)查詢方式 在每個重要的程序功能之后檢查commevent屬性值來檢測事件和通信錯誤。這種方式常用于應(yīng)用程序較簡單和相對獨立的應(yīng)用程序設(shè)計中。 通信控件的基本屬性 為支持串行通信的實現(xiàn),vb6.0
16、中mscomm控件提供了眾多的串行通信屬性,主要有:commport:設(shè)置和返回pc機串行端口號;settings:初始化傳輸波特率、奇偶校驗位、數(shù)據(jù)位寬度和停止位寬度;input:從輸入緩沖區(qū)中讀取數(shù)據(jù);inputlen:輸入緩沖區(qū)數(shù)據(jù)長度;inputmode:輸入模式,ascii字符或二進制數(shù)據(jù);output:將數(shù)據(jù)寫入輸出緩沖區(qū);inbuffersize:設(shè)置并返回接收緩沖區(qū)的字節(jié)數(shù);outbuffersize:設(shè)置并返回輸出緩沖區(qū)的字節(jié)數(shù);portopen:布爾型,用于打開或關(guān)閉串行通信端口;oncomm:在發(fā)生通訊事件或錯誤時,將觸發(fā)oncomm事件,commevent屬性值將被改變
17、;rthreshold:引發(fā)接收事件的字節(jié)數(shù),為0時不引發(fā)接收事件;sthreshold:引發(fā)發(fā)送事件的字節(jié)數(shù),為0時不引發(fā)發(fā)送事件。以下程序分別是獲取重量、顯示重量和繪制曲線的重要程序。獲取重量測量值并顯示每發(fā)送一次指令,觸發(fā)下面事件,返回數(shù)據(jù)串private sub mscomm1_oncomm() dim inbyte() as byte dim buffer as string dim datatemp2a, datatemp2b as string dim datatemp2 as string if num 199 then call renew 讀取儀表返回數(shù)據(jù)串 select
18、case mscomm1.commevent case comevreceive inbyte = mscomm1.input for i = lbound(inbyte) to ubound(inbyte) buffer = buffer + hex(inbyte(i) + chr(32) next i case comevsend end select顯示測量重量值 if datatemp(num) 0 then grid.col = 1: grid.row = num + 1 grid.text = format$(datatemp(num), 000) temptext = forma
19、t$(datatemp(num), 000) 10進制顯示,保留一位小數(shù) text2.text = datatemp2 16進制顯示 num = num + 1 call draw 調(diào)用繪曲線過程 end ifend sub繪制重量實時變化曲線private sub draw() picture1.cls picture1.drawwidth = 1 picture1.backcolor = qbcolor(15) picture1.scale (-10, 100)-(200, 0) for i = 1 to num - 1 x1 = (i - 1): y1 = datatemp(i - 1)
20、 x2 = i: y2 = datatemp(i) picture1.line (x1, y1)-(x2, y2), qbcolor(12) next iend sub本設(shè)計中的上位機(pc機)通信界面,如圖2.1所示。圖2.1 上位機(pc機)通信界面2.2.2 軟件設(shè)計下位機(單片機)部分下位機程序部分是用c語言編寫的。c語言是一種計算機程序設(shè)計語言,它既具有高級語言的特點,又具有匯編語言的特點。它可以作為工作系統(tǒng)設(shè)計語言,編寫系統(tǒng)應(yīng)用程序,也可以作為應(yīng)用程序設(shè)計語言,編寫不依賴計算機硬件的應(yīng)用程序。因此,它的應(yīng)用范圍廣泛,不僅僅是在軟件開發(fā)上,而且各類科研都需要用到c語言,具體應(yīng)用比如單
21、片機以及嵌入式系統(tǒng)開發(fā)。編寫本部分程序是利用keil軟件進行的,圖2.2就是keil c51集成開發(fā)環(huán)境。圖2.2 keil c51集成開發(fā)環(huán)境c語言具有如下五大特點:(1)c是中級語言。它把高級語言的基本結(jié)構(gòu)和語句與低級語言的實用性結(jié)合起來。c 語言可以像匯編語言一樣對位、字節(jié)和地址進行操作, 而這三者是計算機最基本的工作單元。(2)c是結(jié)構(gòu)式語言。結(jié)構(gòu)式語言的顯著特點是代碼及數(shù)據(jù)的分隔化,即程序的各個部分除了必要的信息交流外彼此獨立。這種結(jié)構(gòu)化方式可使程序?qū)哟吻逦?,便于使用、維護以及調(diào)試。c 語言是以函數(shù)形式提供給用戶的,這些函數(shù)可方便的調(diào)用,并具有多種循環(huán)、條件語句控制程序流向,從而使程
22、序完全結(jié)構(gòu)化。(3)c語言功能齊全。具有各種各樣的數(shù)據(jù)類型,并引入了指針概念,可使程序效率更高。另外c語言也具有強大的圖形功能,支持多種顯示器和驅(qū)動器。而且計算功能、邏輯判斷功能也比較強大,可以實現(xiàn)決策目的的游戲。(4)c語言適用范圍大。適合于多種操作系統(tǒng),如windows、dos、unix等等;也適用于多種機型。(5)c語言文件由數(shù)據(jù)序列組成,可以構(gòu)成二進制文件或文本文件。結(jié)構(gòu)化程序就是用高級語言表示的結(jié)構(gòu)化算法。結(jié)構(gòu)化程序設(shè)計的思路是,把復(fù)雜問題分解成一些容易理解和處理的小問題,而這些小問題在結(jié)構(gòu)安排上、組合層次上都有自己的準(zhǔn)確定位,每一個小問題的解決都為這一復(fù)雜問題的解決服務(wù)。如何合理地
23、在算法上這些小問題加以考慮和在結(jié)構(gòu)上作正確的安排是解決復(fù)雜問題必須面對的關(guān)鍵問題18。解決復(fù)雜問題首先應(yīng)該進行模塊的劃分,把一個較大的問題劃分為若干個功能模塊,每一個功能模塊相對獨立;每一個模塊又可繼續(xù)劃分為更小的模塊。經(jīng)過模塊劃分后,會使得程序具有一種層次結(jié)構(gòu)。現(xiàn)階段,模塊化程序設(shè)計主要有以下兩種設(shè)計方法。1、自頂向下自頂向下程序設(shè)計是先設(shè)計第一層(即頂層),然后步步深入,逐層細分,逐步求精,直到整個問題可用程序設(shè)計語言明確地描述出來為止。(1)步驟:首先對問題進行仔細分析,確定其輸入、輸出數(shù)據(jù),寫出程序運行的主要過程和任務(wù);然后從大的功能方面把一個問題的解決過程分成幾個問題,每個子問題形成
24、一個模塊。(2)特點:先整體后局部,先抽象后具體。2、自底向上自底向上程序設(shè)計是先設(shè)計底層,最后設(shè)計頂層。(1)優(yōu)點:由表及里、由淺入深地解決問題。(2)不足:在逐步細化的過程中,可能發(fā)現(xiàn)原來的分解細化不夠完善。程序設(shè)計的步驟可簡單概括如下。(1)分析問題。對于待解決的問題,通過分析,明確題目的要求,列出所有已知量、未知量,找出題目的求解范圍、解的精度等。(2)建立數(shù)學(xué)模型。對實際問題進行分析之后,找出它的內(nèi)在規(guī)律,就可以建立數(shù)學(xué)模型。只有建立了模型的問題,才有可能利用計算機來解決。(3)確定算法。建立數(shù)學(xué)模型后,還不能著手編程序,必須根據(jù)數(shù)據(jù)結(jié)構(gòu),設(shè)計問題的算法。一般設(shè)計算法要注意:算法的邏
25、輯結(jié)構(gòu)盡可能簡單;除了要滿足算法的基本要求外,還應(yīng)注意以下問題。算法所要求的存儲量應(yīng)盡可能地少。避免不必要的循環(huán),減少算法的執(zhí)行時間。在滿足題目條件要求下,使所需的計算量最小。(4)編寫程序。把整個程序看作一個整體,先全局后局部,自頂向下,一層一層分解處理,如果某些問題的算法相同而僅參數(shù)不同,可以用模塊化的方式來實現(xiàn)。(5)調(diào)試運行。(6)分析結(jié)果。(7)寫出程序的文檔。文檔主要是對程序中的變量、函數(shù)或過程作必要的說明,解釋編程思路,畫出程序流程圖,討論運行結(jié)果等。面對一項復(fù)雜的任務(wù),通常采取模塊化的解決方法。首先,分解該復(fù)雜任務(wù)成幾個大的功能模塊,根據(jù)需要還可以繼續(xù)細分,直到分解成一個個功能
26、獨立的模塊為止。分解的結(jié)果可以描述為一棵倒立的大樹,其中大任務(wù)類似于樹根,中間層的小任務(wù)類似于樹枝,最小的小任務(wù)類似于樹葉。其次,對最小的模塊單獨編寫程序代碼并調(diào)試。最后,把這些最小的模塊按原來分解的逆序組合成最初的大任務(wù)。模塊化解決問題的實際方法可簡單描述為拆分編碼組裝。這樣做可以使復(fù)雜問題簡單化,同時可以達到程序結(jié)構(gòu)清晰、層次分明、程序便于編寫、便于維護的目的。任務(wù)中模塊的功能可以用高級語言的子程序或函數(shù)來實現(xiàn)19。函數(shù)是構(gòu)成c語言程序的基本功能模塊,它完成一項相對獨立的任務(wù)。一個c語言程序是若干函數(shù)構(gòu)成的,在構(gòu)成c程序的諸多函數(shù)中有且只有一個主函數(shù)。函數(shù)是程序的最小組成單位。所有函數(shù)之間
27、的關(guān)系式平行的,沒有從屬的概念。函數(shù)的平行關(guān)系使得函數(shù)的編寫相對獨立,便于模塊化程序設(shè)計的實現(xiàn)。c程序的執(zhí)行總是從主函數(shù)開始,又從主函數(shù)結(jié)束,其他函數(shù)只有通過調(diào)用關(guān)系發(fā)生作用。在主函數(shù)執(zhí)行的過程中直接或間接調(diào)用其他函數(shù),并將程序的執(zhí)行控制權(quán)交給被調(diào)函數(shù),調(diào)用結(jié)束后,繼續(xù)執(zhí)行主函數(shù)直到結(jié)束,才能結(jié)束整個程序的執(zhí)行過程。c語言規(guī)定只允許主函數(shù)調(diào)用其他函數(shù),反之不能。函數(shù)之間可以互相調(diào)用,同一函數(shù)可以調(diào)用多個函數(shù),一個函數(shù)也可以被多個函數(shù)調(diào)用,函數(shù)也可以自己調(diào)用自己20。隨著結(jié)構(gòu)化程序設(shè)計方法的發(fā)展和廣泛的應(yīng)用,模塊化設(shè)計方法逐步成為結(jié)構(gòu)化程序設(shè)計方法的主流。模塊化設(shè)計方法的主要思想是將整個軟件系統(tǒng)
28、分解成若干個功能相對獨立的模塊,這些功能模塊可以單獨命名、單獨設(shè)計、單獨編程和調(diào)試。下位機(單片機)程序主要包括系統(tǒng)初始化、中斷控制、重量讀取、lcd顯示、單片機與pc機串口通信等若干模塊程序。根據(jù)要求實現(xiàn)的功能和設(shè)計程序的順序,做出了如圖2.3所示的程序流程圖。ri=1計算重量定時550ms讀取頻率串口中斷開中斷開始receivea發(fā)送數(shù)據(jù)報警receivebri=0初始化lcd,串口軟件濾波lcd顯示圖2.3 程序流程圖3 電子秤軟件設(shè)計所使用的各類軟件介紹電子秤軟件設(shè)計所使用的軟件有proteus軟件、keil軟件、visual basic軟件開發(fā)工具、串口調(diào)試助手。31 proteus
29、軟件3.1.1 為什么選擇proteus軟件protues軟件是英國labcenter electronics公司出版的eda工具軟件。它不僅具有其它eda工具軟件的仿真功能,還能仿真單片機及外圍器件。它是目前最好的仿真單片機及外圍器件的工具。雖然目前國內(nèi)推廣剛起步,但已受到單片機愛好者、從事單片機教學(xué)的教師、致力于單片機開發(fā)應(yīng)用的科技工作者的青睞。proteus是世界上著名的eda工具(仿真軟件),從原理圖布圖、代碼調(diào)試到單片機與外圍電路協(xié)同仿真,一鍵切換到pcb設(shè)計,真正實現(xiàn)了從概念到產(chǎn)品的完整設(shè)計。是目前世界上唯一將電路仿真軟件、pcb設(shè)計軟件和虛擬模型仿真軟件三合一的設(shè)計平臺,其處理器
30、模型支持8051、hc11、pic10/12/16/18/24/30/dspic33、avr、arm、8086和msp430等,2010年即將增加cortex和dsp系列處理器,并持續(xù)增加其他系列處理器模型21。protues軟件具有其它eda工具軟件(例:multisim)的功能。這些功能是:(1)原理布圖;(2)pcb自動或人工布線;(3)spice電路仿真。protues軟件具有革命性的特點:(1)互動的電路仿真用戶甚至可以實時采用諸如ram,rom,鍵盤,馬達,led,lcd,ad/da,部分spi器件,部分iic器件。(2)仿真處理器及其外圍電路可以仿真51系列、avr、pic、ar
31、m、等常用主流單片機。還可以直接在基于原理圖的虛擬原型上編程,再配合顯示及輸出,能看到運行后輸入輸出的效果。圖3.1就是該軟件仿真環(huán)境。配合系統(tǒng)配置的虛擬邏輯分析儀、示波器等,protues建立了完備的電子設(shè)計開發(fā)環(huán)境。圖3.1 protues軟件仿真環(huán)境3.1.2 proteus軟件詳細介紹proteus軟件由isis和ares兩個軟件構(gòu)成,其中isis是一款便捷的電子系統(tǒng)仿真平臺軟件,并且是一個操作簡便且功能強大的原理繪圖工具,它整合了spice的仿真模型,擁有超過8000個元件的龐大庫結(jié)構(gòu)。ares 是一款高級的布線編輯軟件,可將isis的仿真原理圖生成pcb版圖22。protues提供
32、了豐富的資源:(1)protues可提供的仿真元器件資源:仿真數(shù)字和模擬、交流和直流等數(shù)千種元器件,有30多個元件庫。(2)protues可提供的仿真儀表資源 :示波器、邏輯分析儀、虛擬終端、spi調(diào)試器、i2c調(diào)試器、信號發(fā)生器、模式發(fā)生器、交直流電壓表、交直流電流表。理論上同一種儀器可以在一個電路中隨意的調(diào)用。(3)除了現(xiàn)實存在的儀器外,protues還提供了一個圖形顯示功能,可以將線路上變化的信號,以圖形的方式實時地顯示出來,其作用與示波器相似,但功能更多。這些虛擬儀器儀表具有理想的參數(shù)指標(biāo),例如極高的輸入阻抗、極低的輸出阻抗。這些都盡可能減少了儀器對測量結(jié)果的影響。(4)protues
33、可提供的調(diào)試手段 protues提供了比較豐富的測試信號用于電路的測試。這些測試信號包括模擬信號和數(shù)字信號。protues在仿真方面有很強的優(yōu)勢,在protues繪制好原理圖后,調(diào)入已編譯好的目標(biāo)代碼文件:*.hex,可以在protues的原理圖中看到模擬的實物運行狀態(tài)和過程。protues 是單片機課堂教學(xué)的先進助手。protues不僅可將許多單片機實例功能形象化,也可將許多單片機實例運行過程形象化。前者可在相當(dāng)程度上得到實物演示實驗的效果,后者則是實物演示實驗難以達到的效果。它的元器件、連接線路等卻和傳統(tǒng)的單片機實驗硬件高度對應(yīng)。這在相當(dāng)程度上替代了傳統(tǒng)的單片機實驗教學(xué)的功能,例:元器件選
34、擇、電路連接、電路檢測、電路修改、軟件調(diào)試、運行結(jié)果等。課程設(shè)計、畢業(yè)設(shè)計是學(xué)生走向就業(yè)的重要實踐環(huán)節(jié)。由于protues提供了實驗室無法相比的大量的元器件庫,提供了修改電路設(shè)計的靈活性、提供了實驗室在數(shù)量、質(zhì)量上難以相比的虛擬儀器、儀表,因而也提供了培養(yǎng)學(xué)生實踐精神、創(chuàng)造精神的平臺隨著科技的發(fā)展,計算機仿真技術(shù)已成為許多設(shè)計部門重要的前期設(shè)計手段。它具有設(shè)計靈活,結(jié)果、過程的統(tǒng)一的特點??墒乖O(shè)計時間大為縮短、耗資大為減少,也可降低工程制造的風(fēng)險。相信在單片機開發(fā)應(yīng)用中protues也能茯得愈來愈廣泛的應(yīng)用。32 keil軟件3.2.1 keil軟件開發(fā)背景單片機開發(fā)中除必要的硬件外,同樣離不
35、開軟件,我們寫的匯編語言源程序要變?yōu)閏pu可以執(zhí)行的機器碼有兩種方法,一種是手工匯編,另一種是機器匯編,目前已極少使用手工匯編的方法了。機器匯編是通過匯編軟件將源程序變?yōu)闄C器碼,用于mcs-51單片機的匯編軟件有早期的a51,隨著單片機開發(fā)技術(shù)的不斷發(fā)展,從普遍使用匯編語言到逐漸使用高級語言開發(fā),單片機的開發(fā)軟件也在不斷發(fā)展,keil軟件是目前最流行開發(fā)mcs-51系列單片機的軟件,這從近年來各仿真機廠商紛紛宣布全面支持keil即可看出。keil提供了包括c編譯器、宏匯編、連接器、庫管理和一個功能強大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,通過一個集成開發(fā)環(huán)境(uvision)將這些部份組合在一起。
36、運行keil軟件需要pentium或以上的cpu,16mb或更多ram、20m以上空閑的硬盤空間、win98、nt、win2000、winxp等操作系統(tǒng)。掌握這一軟件的使用對于使用51系列單片機的人來說是十分必要的,如果你使用c語言編程,那么keil幾乎就是你的不二之選(目前在國內(nèi)你只能買到該軟件、而你買的仿真機也很可能只支持該軟件),即使不使用c語言而僅用匯編語言編程,其方便易用的集成環(huán)境、強大的軟件仿真調(diào)試工具也會令你事半功倍。3.2.2 keil軟件綜述keil c51是美國keil software公司出品的51系列兼容單片機c語言軟件開發(fā)系統(tǒng),與匯編相比,c語言在功能上、結(jié)構(gòu)性、可讀
37、性、可維護性上有明顯的優(yōu)勢,因而易學(xué)易用。用過匯編語言后再使用c來開發(fā),體會更加深刻。keil c51軟件提供豐富的庫函數(shù)和功能強大的集成開發(fā)調(diào)試工具,全windows界面。另外重要的一點,只要看一下編譯后生成的匯編代碼,就能體會到keil c51生成的目標(biāo)代碼效率非常之高,多數(shù)語句生成的匯編代碼很緊湊,容易理解。在開發(fā)大型軟件時更能體現(xiàn)高級語言的優(yōu)勢23。3.2.3 keil c51單片機軟件開發(fā)系統(tǒng)的整體結(jié)構(gòu)c51工具包的整體結(jié)構(gòu),如圖3.2所示,其中uvision是c51 for windows的集成開發(fā)環(huán)境(ide),可以完成編輯、編譯、連接、調(diào)試、仿真等整個開發(fā)流程。開發(fā)人員可用id
38、e本身或其它編輯器編輯c或匯編源文件。然后分別由c51及a51編譯器編譯生成目標(biāo)文件(.obj)。目標(biāo)文件可由lib51創(chuàng)建生成庫文件,也可以與庫文件一起經(jīng)l51連接定位生成絕對目標(biāo)文件(.abs)。abs文件由oh51轉(zhuǎn)換成標(biāo)準(zhǔn)的hex文件,以供調(diào)試器dscope51或tscope51使用進行源代碼級調(diào)試,也可由仿真器使用直接對目標(biāo)板進行調(diào)試,也可以直接寫入程序存貯器如eprom中。圖3.2 keil c51集成開發(fā)環(huán)境3.2.4 如何正確使用keil軟件keil軟件支持c 語言和匯編語言編寫程序,并且成功的將編譯和仿真軟件統(tǒng)一為vision。keil 提供包括c 編譯器、宏匯編、連接器、庫
39、管理和一個功能強大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,由以下幾部分組成:vision ide 集成開發(fā)環(huán)境(包括工程管理器、源程序編輯器、程序調(diào)試器)、c51 編譯器、a51 匯編器、lib51 庫管理器、bl51 連接/定位器、oh51 目標(biāo)文件生成器以及monitor-51、rtx51 實時操作系統(tǒng)。應(yīng)用keil 進行軟件程序編寫的主要步驟為:編寫源程序并保存、建立工程并添加源文件、設(shè)置工程、編譯/匯編、連接、產(chǎn)生目標(biāo)文件、程序調(diào)試。keil 使用“工程”(project)的概念,對工程進行編譯/匯編、連接等操作。工程的建立、設(shè)置、編譯/匯編及連接產(chǎn)生目標(biāo)文件的方法如下:(1)選擇菜單fil
40、enew,在源程序編輯器中輸入?yún)R編語言或c 語言源程序(或選擇fileopen,直接打開已用其他編輯器編輯好的源程序文檔)并保存,注意保存時必須在文件名后加上擴展名.asm(.a51)或.c;(2)選擇菜單projectnew project,建立新工程并保存(保存時無需加擴展名,也可加上擴展名.uv2);(3)工程保存后會立即彈出一個設(shè)備選擇對話框,選擇cpu 后點確定返回主界面。這時工程管理窗口的文件頁(files)會出現(xiàn)“target1”,將其前面+號展開,接著選擇source group1,右擊鼠標(biāo)彈出快捷菜單,選擇“add file to group source group1”,出
41、現(xiàn)一個對話框,要求尋找并加入源文件(在加入一個源文件后,該對話框不會消失,而是等待繼續(xù)加入其他文件);(4)加入文件后點close 返回主界面,展開“source group1”前面+號,就會看到所加入的文件,雙擊文件名,即可打開該源程序文件;(5)對工程進行設(shè)置,通過選擇工程管理窗口的target1,再選擇projectoptionfor target target1,打開工程屬性對話框,共有8 個選項卡,這些設(shè)置工作包括在target 選項卡中設(shè)置晶振頻率、在debug 選項卡中設(shè)置實驗仿真板等,如要寫片,還必須在output 選項卡中選中“creat hex fi”;其他選項卡內(nèi)容一般可
42、取默認值。工程設(shè)置結(jié)束后進行編譯/匯編、連接以及產(chǎn)生目標(biāo)文件。(6)成功編譯/匯編、連接后,選擇菜單debugstart/stop debug session(或按ctrl+f5 鍵)進入程序調(diào)試狀態(tài),keil 提供對程序的模擬調(diào)試功能,內(nèi)建一個功能強大的仿真cpu 以模擬執(zhí)行程序。keil 能以單步執(zhí)行(按f11 或選擇debugstep)、過程單步執(zhí)行(按f10 或選擇debugstep over)、全速執(zhí)行等多種運行方式進行程序調(diào)試。如果發(fā)現(xiàn)程序有錯,可采用在線匯編功能對程序進行在線修改(debuginline assambly),不必執(zhí)行先退出調(diào)試環(huán)境、修改源程序、對工程重新進行編譯/
43、匯編和連接、然后再次進入調(diào)試狀態(tài)的步驟。對于一些必須滿足一定條件(如按鍵被按下等)才能被執(zhí)行的、難以用單步執(zhí)行方式進行調(diào)試的程序行,可采用斷點設(shè)置的方法處理(debuginsert/remove breakpoint 或debugbreakpoints等)。在模擬調(diào)試程序后,還須通過編程器將.hex 目標(biāo)文件燒寫入單片機中才能觀察目標(biāo)樣機真實的運行狀況。33 visual basic軟件開發(fā)工具3.3.1 visual basic的發(fā)展basic是20世紀60年代由美國達特茅斯大學(xué)的兩位教授共同設(shè)計的計算機程序設(shè)計語言,其全稱是beginners all-purpose symbolic in
44、struction code,意為“初學(xué)者通用的符號指令代碼”,是國際上廣泛使用的一種計算機高級語言。basic語言簡單易學(xué)、人機交互容易、程序調(diào)試簡便,目前仍是計算機程序設(shè)計初學(xué)者入門學(xué)習(xí)的主要語言之一24。1964年basic語言問世時,它只有十幾條指令組成,隨后經(jīng)過了幾十年的發(fā)展歷程,其功能和界面也在不斷更新。到了20世紀80年代中至20世紀90年代初,結(jié)構(gòu)化basic語言出現(xiàn)了,其對前面版本進行了較大的擴充,并且增加了數(shù)據(jù)類型和程序控制結(jié)構(gòu)。特別是20世紀90年代初,由于windows操作平臺的出現(xiàn),pc的操作方式開始由命令方式向圖形方式轉(zhuǎn)變,圖形用戶界面程序設(shè)計語也言應(yīng)運而生visu
45、al basic程序設(shè)計語言。1991年,微軟推出了visual basic 1.0版,它是第一個“可視”的編程軟件。這使得程序員都嘗試在visual basic的平臺上進行軟件創(chuàng)作。隨著windows操作平臺的不斷成熟,visual basic產(chǎn)品由1.0版本升級到3.0版,利用visual basic 3.0產(chǎn)品可以非??焖俚貏?chuàng)建各種應(yīng)用程序,如多媒體應(yīng)用程序,各種圖形操作界面等,且從visual basic 3.0開始,微軟將access的數(shù)據(jù)庫驅(qū)動集成到了visual basic中,大大提高了visual basic的在數(shù)據(jù)庫方面的編程能力。在visual basic4.0版本中,提供
46、了創(chuàng)建自定義類模塊,屬性及過程功能,利用這些功能,用戶可以創(chuàng)建自定義類和對象;還提供了強大的數(shù)據(jù)庫管理能力,通過dao模型和odbc,用戶可以訪問任何一種類型的數(shù)據(jù)庫。隨著互聯(lián)網(wǎng)的出現(xiàn)和迅速發(fā)展,微軟公司推出了activex技術(shù),并且將這一技術(shù)引入到了visual basic 6.0版本中,visual basic 6.0在面向?qū)ο缶幊痰募夹g(shù)上也做了許多擴展,用戶可以自定義對象所處理的事件,還可以定義構(gòu)造函數(shù)和析構(gòu)函數(shù)。此外,visual basic 6.0還提供了用組件編程的概念,實際上是對象編程的擴展。目前,visual basic已經(jīng)成為一種真正專業(yè)化的開發(fā)語言,用戶不僅可以用visua
47、l basic快速創(chuàng)建windows程序,還可以編寫企業(yè)水平的客戶/服務(wù)器程序和強大的數(shù)據(jù)庫應(yīng)用程序3.3.2 visual basic的特點visual指的是可視化、圖形化的應(yīng)用程序開發(fā)方法,它不需要編寫大量代碼去描述界面元素的外觀和位置,而只要把預(yù)先建立的對象拖放到窗口的適當(dāng)位置上即可,這是visual basic最顯著的特點。visual basic是一個強大的在 windows平臺上使用的開發(fā)工具,從開發(fā)個人或小組使用的小工具,到大型企業(yè)應(yīng)用系統(tǒng),甚至通過internet遍及全球的分布式應(yīng)用軟件,都可以使用visual basic語言進行開發(fā)。visual basic有著廣泛的應(yīng)用,具
48、有以下幾個主要特點:(1)真正的面向?qū)ο缶幊蹋归_發(fā)人員在維護系統(tǒng)運行時只需要修改很少的代碼,同時也加快了系統(tǒng)開發(fā)的速度。(2)可視化的編程方法,以及向?qū)У墓δ埽归_發(fā)人員幾乎不用輸入太多的代碼就可以開發(fā)windows程序。(3)數(shù)據(jù)訪問特性允許對包括microsoft sql server和其他企業(yè)數(shù)據(jù)庫在內(nèi)的大部分數(shù)據(jù)庫格式建立數(shù)據(jù)庫和前端應(yīng)用程序。(4)通過activex技術(shù)可以廣泛地使用其他應(yīng)用程序程序提供的功能,例如,microsoft word字處理軟件,microsoft excel電子表格及其他 windows應(yīng)用程序,甚至可以直接使用visual basic創(chuàng)建應(yīng)用程序和對象
49、。(5)支持internet,很容易通過internet訪問文檔和應(yīng)用程序。(6)已經(jīng)完成的應(yīng)用程序是真正的*.exe文件,并提供運行時的可自由發(fā)布的動態(tài)鏈接庫(dll)。3.3.3 visual basic的語言特性vb的中心思想就是要便于使用,無論是新手或者專家。vb使用了可以簡單建立應(yīng)用程序的gui系統(tǒng),但是又可以開發(fā)相當(dāng)復(fù)雜的程序。vb的程序是一種基于窗體的可視化組件安排的聯(lián)合,并且增加代碼來指定組件的屬性和方法。因為默認的屬性和方法已經(jīng)有一部分定義在了組件內(nèi),所以程序員不用寫多少代碼就可以完成一個簡單的程序。過去的版本里面vb程序的性能問題一直被放在了桌面上,但是隨著計算機速度的飛速
50、增加,關(guān)于性能的爭論已經(jīng)越來越少。窗體控件的增加和改變可以用拖放技術(shù)實現(xiàn)。一個排列滿控件的工具箱用來顯示可用控件(比如文本框或者按鈕)。每個控件都有自己的屬性和事件。默認的屬性值會在控件創(chuàng)建的時候提供,但是程序員也可以進行更改。很多的屬性值可以在運行時候隨著用戶的動作和修改進行改動,這樣就形成了一個動態(tài)的程序。舉個例子來說:窗體的大小改變事件中加入了可以改變控件位置的代碼,在運行時候每當(dāng)用戶更改窗口大小,控件也會隨之改變位置。在文本框中的文字改變事件中加入相應(yīng)的代碼,程序就能夠在文字輸入的時候自動翻譯或者阻止某些字符的輸入。vb的程序可以包含一個或多個窗體,或者是一個主窗體和多個子窗體,類似于
51、操作系統(tǒng)的樣子。有很少功能的對話框窗口(比如沒有最大化和最小化按鈕的窗體)可以用來提供彈出功能。vb的組件既可以擁有用戶界面,也可以沒有。這樣一來服務(wù)器端程序就可以處理增加的模塊。vb使用參數(shù)計算的方法來進行垃圾收集,這個方法中包含有大量的對象,提供基本的面向?qū)ο笾С?。因為越來越多組建的出現(xiàn),程序員可以選用自己需要的擴展庫。和有些語言不一樣,vb對大小寫不敏感,但是能自動轉(zhuǎn)換關(guān)鍵詞到標(biāo)準(zhǔn)的大小寫狀態(tài),以及強制使得符號表入口的實體的變量名稱遵循書寫規(guī)則。默認情況下字符串的比較是對大小寫敏感的,但是可以關(guān)閉這個功能25。vb使得大量的外界控件有了自己的生存空間。大量的第三方控件針對vb提供。vb也
52、提供了建立、使用和重用這些控件的方法,但是由于語言問題,從一個應(yīng)用程序創(chuàng)建另外一個并不簡單。3.3.4 visual basic 6.0軟件的主要功能介紹visual basic 6.0軟件的主要功能如下:(1)集成的可視化數(shù)據(jù)庫工具:visual basic 6.0提供一整套工具以便任何應(yīng)用程序中集成數(shù)據(jù)庫??梢詠碓O(shè)計和修改sql server,oracle8.0或以上版本及as/400的數(shù)據(jù)庫。(2)數(shù)據(jù)環(huán)境設(shè)計器:使用拖放功能來可視化地創(chuàng)建可重用的記錄集命令對象。綁定到多個數(shù)據(jù)源上,以聚集和操作數(shù)據(jù)。(3)用拖放式創(chuàng)建綁有數(shù)據(jù)的表格報告:使用新的數(shù)據(jù)環(huán)境設(shè)計器,開發(fā)者可迅速拖放自定義的綁
53、有數(shù)據(jù)的控件來創(chuàng)建表格;可用新的數(shù)據(jù)報表設(shè)計器來創(chuàng)建報表。創(chuàng)建自定義數(shù)據(jù)階結(jié)構(gòu)也非常容易,只需填寫一個對話框,再將命令拖入表格中即可。(4)visual basic webclass 設(shè)計器:創(chuàng)建可在任何平臺上用任何web瀏覽器訪問的服務(wù)器方應(yīng)用或構(gòu)件。(5)動態(tài)html頁面設(shè)計器:開發(fā)用文檔對象模型和動態(tài)html平面做用戶界面的富于多媒體的應(yīng)用程序。(6)新的性能方面的增強:使用新的字符串函數(shù)和諸如駐留內(nèi)存(retain in memory)的技術(shù)來創(chuàng)建更快,可調(diào)節(jié)性更好的應(yīng)用程序和構(gòu)件。visual basic 6.0集成的visual component manager(可視化組件管理器
54、)和visual modeler(可視化模塊設(shè)計器)提供了最有效的管理方式。通過vcm,可以在vb工程中方便地組織,查找和插入各種窗體,模版和類模版,甚至整個工程,為代碼的重利用提供了最大的方便,如圖3.3所示,此軟件編寫vb程序的界面非常方便使用。而visual modeler功能則更加強大,可以將其設(shè)計的類和組件轉(zhuǎn)化成visual c+或visual basic 的代碼,與visual component manager結(jié)合使用,可以將vb中編寫的類在其他工程甚至vc的工程中使用。圖3.3 vb軟件操作界面34 串口調(diào)試助手串口調(diào)試助手,支持常用的300-115200bps波特率,能設(shè)置校
55、驗、數(shù)據(jù)位和停止位,能以ascii碼或十六進制接收或發(fā)送任何數(shù)據(jù)或字符(包括中文),可以任意設(shè)定自動發(fā)送周期,并能將接收數(shù)據(jù)保存成文本文件,能發(fā)送任意大小的文本文件。適宜單片機編程時對rs232通訊測試用。支持ascii,hex碼收發(fā)和顯示,支持單次發(fā)送、多次發(fā)送、循環(huán)發(fā)送等,支持xmodem modem 協(xié)議文件傳輸,作為avr ,stm32 通用bootloader軟件 pc端升級工具。圖3.4為其操作界面。圖3.4 串口調(diào)試助手操作界面4 總結(jié)軟件設(shè)計在當(dāng)今社會無處不在,軟件對于社會所起的作用是十分關(guān)鍵的。對某些商用電子計價秤而言,只具備稱重、計價、顯示、打印功能還遠遠不夠,現(xiàn)代商業(yè)系統(tǒng)
56、還要求它能提供各種銷售信息,把稱重與管理自動化緊密結(jié)合,使稱重、計價、進庫、銷售管理一體化,實現(xiàn)管理自動化。這就要求電子計價秤能與電子計算機聯(lián)網(wǎng),把稱重系統(tǒng)與計算機系統(tǒng)組成一個完整的綜合控制系統(tǒng),為現(xiàn)代商業(yè)貿(mào)易物流的高效率發(fā)展提供強有力的支持。電子秤的軟件設(shè)計中上位機(pc機)部分,用的是vb語言編寫的。限于本人對vb的運用并不是很成熟,界面做的不是很好,所以,我覺得在把功能實現(xiàn)的前提下能夠讓界面更加人性化、美觀化、實用化,是非常有實用意義的。我認為電子秤未來的發(fā)展方向,應(yīng)該是在稱重、計價、顯示、打印這些最基本的功能下,能夠把各種銷售信息和庫存、進價等貿(mào)易活動,實現(xiàn)自動化管理,即計價秤和計算機連接組成一個有機整體,為現(xiàn)代商業(yè)貿(mào)易更好的服務(wù)。附錄a 上位機(pc機)設(shè)計程序清單及部
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 現(xiàn)代家居裝飾風(fēng)格與心理健康關(guān)系探討
- 構(gòu)建以服務(wù)功能為導(dǎo)向的綠色生態(tài)環(huán)境教育體系
- 生物醫(yī)藥與健康產(chǎn)業(yè)的投資潛力研究
- 現(xiàn)代化技術(shù)與醫(yī)療中心的高層建筑設(shè)計思考
- 生態(tài)城市建設(shè)中環(huán)境科學(xué)的應(yīng)用研究
- Unit 5 We're family Period 3 (說課稿)-2024-2025學(xué)年外研版(三起)(2024)英語三年級上冊
- 2024-2025學(xué)年高中生物 第四部分 淺嘗現(xiàn)代生物技術(shù)說課稿 浙科版選修1
- 2024-2025學(xué)年高中物理 第四章 電磁感應(yīng) 5 電磁感應(yīng)現(xiàn)象的兩類情況(1)說課稿 新人教版選修3-2
- 9古代科技 耀我中華-獨領(lǐng)風(fēng)騷的古代技術(shù)創(chuàng)造(說課稿)2023-2024學(xué)年統(tǒng)編版道德與法治五年級上冊
- 26 手術(shù)臺就是陣地 說課稿-2024-2025學(xué)年統(tǒng)編版語文三年級上冊001
- 2025版茅臺酒出口業(yè)務(wù)代理及銷售合同模板4篇
- 2025年N1叉車司機考試試題(附答案)
- 《醫(yī)院財務(wù)分析報告》課件
- 2024年考研政治試題及答案
- 2024-2025學(xué)年人教版數(shù)學(xué)六年級上冊 期末綜合卷(含答案)
- 天津市部分區(qū)2023-2024學(xué)年高二上學(xué)期期末考試 物理 含解析
- 2025年初級社會工作者綜合能力全國考試題庫(含答案)
- 2024年濰坊護理職業(yè)學(xué)院單招職業(yè)適應(yīng)性測試題庫附答案
- 《鉗工基本知識》課件
- 第八期:風(fēng)電典型事故案例剖析(二)
- DB63T 2357-2024 ?;烦簝薨踩芾硪?guī)范
評論
0/150
提交評論