亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于模塊數(shù)據(jù)庫(kù)的51單片機(jī)系統(tǒng)原理圖自動(dòng)生成軟件的研究

        2012-07-25 07:16:44袁曉駿路林吉
        微型電腦應(yīng)用 2012年7期
        關(guān)鍵詞:單片機(jī)界面數(shù)據(jù)庫(kù)

        袁曉駿,路林吉

        0 引言

        當(dāng)今,在基于單片機(jī)的系統(tǒng)設(shè)計(jì)過(guò)程中,各主流 EDA軟件只是停留在提供最基本的繪圖、編輯工具階段,而不涉及包括器件選取和連接的人腦思考環(huán)節(jié)。針對(duì)這一現(xiàn)狀,本文研究的目標(biāo)是:設(shè)計(jì)并實(shí)現(xiàn)一個(gè)計(jì)算機(jī)軟件,該軟件的潛在用戶是單片機(jī)系統(tǒng)設(shè)計(jì)人員,設(shè)計(jì)人員通過(guò)使用該軟件,只需進(jìn)行相對(duì)簡(jiǎn)單的需求錄入,就能得到其所需的單片機(jī)系統(tǒng)的原理圖,從而代替設(shè)計(jì)人員的原理圖設(shè)計(jì)工作。本軟件從基于51系列單片機(jī)的系統(tǒng)設(shè)計(jì)入手,將來(lái)可擴(kuò)展到支持多種單片機(jī)。

        1 總體設(shè)計(jì)方案

        單片機(jī)系統(tǒng)的設(shè)計(jì)遵循著一種“模塊化”的設(shè)計(jì)思想:所有的單片機(jī)系統(tǒng)均可分解為兩個(gè)部分:一是單片機(jī)本身,二是圍繞著單片機(jī)的外圍部分。其中,外圍部分按照功能的不同,可劃分為相對(duì)獨(dú)立的功能模塊,各模塊均通過(guò)導(dǎo)線與單片機(jī)或其它模塊相連。設(shè)計(jì)人員按照所需的功能不同,逐個(gè)設(shè)計(jì)單片機(jī)的外圍功能模塊,最終形成完整的系統(tǒng)。

        基于上述思想,本文所研究之軟件的總體實(shí)現(xiàn)方案是:首先構(gòu)建出由標(biāo)準(zhǔn)、常用電路組成的完成不同的系統(tǒng)功能的通用模塊數(shù)據(jù)庫(kù);其次設(shè)計(jì)出人機(jī)交互界面,通過(guò)預(yù)置的規(guī)則將用戶的需求與數(shù)據(jù)庫(kù)內(nèi)的對(duì)應(yīng)模塊建立聯(lián)系;然后編制出模擬設(shè)計(jì)人員思考過(guò)程的程序,將系統(tǒng)所需的各功能模塊與單片機(jī)進(jìn)行自動(dòng)連接;最后將以結(jié)構(gòu)化數(shù)據(jù)表述的系統(tǒng)原理圖用圖形方式輸出。軟件的架構(gòu),如圖1所示:

        圖1 軟件架構(gòu)圖

        該軟件各組成部分描述如下:

        1) 數(shù)據(jù)庫(kù):是存放基礎(chǔ)數(shù)據(jù)的容器,同時(shí)也是程序運(yùn)行中的工作空間。該軟件將完整的單片機(jī)系統(tǒng)按照功能的不同,分為不同種類的模塊,數(shù)據(jù)庫(kù)中預(yù)存了大量的各類功能模塊。

        2) 人機(jī)交互界面:是用戶與軟件進(jìn)行交互的媒介,用戶通過(guò)此界面進(jìn)行系統(tǒng)需求錄入、查看和保存生成的原理圖、維護(hù)數(shù)據(jù)庫(kù)等操作。

        3) 用戶需求處理程序:接收用戶錄入的原始需求,從數(shù)據(jù)庫(kù)的基礎(chǔ)數(shù)據(jù)中選取所需的單片機(jī)、功能模塊數(shù)據(jù),并形成臨時(shí)數(shù)據(jù)表存放在在數(shù)據(jù)庫(kù)中。

        4) 自動(dòng)連接程序:對(duì)用戶需求處理程序產(chǎn)生的臨時(shí)數(shù)據(jù)進(jìn)行進(jìn)一步的處理,從而形成完整的單片機(jī)系統(tǒng)原理圖數(shù)據(jù)。

        5) 原理圖輸出程序:將最終生成的單片機(jī)系統(tǒng)原理圖繪制到人機(jī)交互界面上,并根據(jù)用戶的要求將原理圖以文件形式保存到軟件外部。

        6) 數(shù)據(jù)庫(kù)維護(hù)程序:根據(jù)用戶的要求,對(duì)數(shù)據(jù)庫(kù)進(jìn)行模塊的添加、刪除和修改等相關(guān)操作。

        2 數(shù)據(jù)庫(kù)設(shè)計(jì)

        數(shù)據(jù)庫(kù)的用途有兩個(gè)方面:一是預(yù)存設(shè)計(jì)好的各類單片機(jī)外圍功能模塊的數(shù)據(jù),包括每個(gè)模塊的外部視圖和內(nèi)部結(jié)構(gòu)。二是作為軟件運(yùn)行是的程序工作空間,暫存和處理臨時(shí)數(shù)據(jù)。

        數(shù)據(jù)庫(kù)表的設(shè)計(jì)如下:

        1) 模塊總表:該表列出了所有設(shè)計(jì)好的模塊,每個(gè)模塊用表中的一條記錄來(lái)描述。每個(gè)模塊通過(guò)編號(hào)、名稱、類型等字段來(lái)描述。

        2) 模塊的外部視圖表:該表屏蔽了模塊內(nèi)部的結(jié)構(gòu),僅描述模塊的外部端口,該表用來(lái)完成對(duì)單片機(jī)系統(tǒng)的模塊化構(gòu)建。模塊的每一個(gè)外部端口均用表中的一條記錄來(lái)描述,每條記錄由模塊編號(hào)、模塊端口編號(hào)、模塊端口名稱等字段組成。

        3) 模塊的內(nèi)部結(jié)構(gòu)表:該表列出了每個(gè)模塊內(nèi)部所有的器件及其之間的連線,是進(jìn)行原理圖繪制的依據(jù),并可保存到軟件外部的文件中。表中,每個(gè)模塊內(nèi)的每一個(gè)器件、每一條連線均用表中的一條記錄來(lái)描述。

        4) 器件表:該表列出了所有預(yù)設(shè)模塊中用到的所有器件,描述了每個(gè)器件的外部管腳。用來(lái)在進(jìn)行原理圖繪制時(shí)標(biāo)明器件的管腳編號(hào)。

        3 人機(jī)交互界面設(shè)計(jì)

        通過(guò)人機(jī)交互界面,軟件向用戶提供了需求錄入、原理圖管理和數(shù)據(jù)庫(kù)維護(hù)等操作功能。人機(jī)交互界面分為:需求錄入頁(yè)面,原理圖管理頁(yè)面和數(shù)據(jù)庫(kù)維護(hù)頁(yè)面。

        需求錄入頁(yè)面是整個(gè)人機(jī)交互界面中最主要的部分,其布局遵循“模塊化”的思想,將頁(yè)面劃分為多個(gè)操作區(qū)域,每個(gè)操作區(qū)域?qū)?yīng)一類功能模塊;每一類模塊提供多個(gè)參數(shù)供設(shè)置,參數(shù)的設(shè)置可通過(guò)勾選或下拉菜單選擇的方式操作。

        由于一個(gè)實(shí)際的單片機(jī)系統(tǒng)不可能同時(shí)涵蓋所有類型的功能模塊,而僅僅是其中的數(shù)個(gè),因此除了復(fù)位、時(shí)鐘等幾個(gè)必備模塊外,其余的非必選模塊在界面上均有“選中”與“不選中”的控制措施。頁(yè)面剛啟動(dòng)時(shí),所有非必選模塊的操作區(qū)域均處于不可編輯的狀態(tài);只有在“選中”該模塊后,其操作區(qū)域才變?yōu)榭删庉嫚顟B(tài),以供用戶繼續(xù)進(jìn)行參數(shù)的設(shè)置。

        4 用戶需求處理程序的設(shè)計(jì)

        用戶需求處理程序根據(jù)用戶錄入的需求,從數(shù)據(jù)庫(kù)的基礎(chǔ)數(shù)據(jù)中自動(dòng)選取所需的數(shù)據(jù),并形成臨時(shí)數(shù)據(jù)暫存在庫(kù)中,供后續(xù)的自動(dòng)連接程序使用。為使軟件能夠識(shí)別和處理用戶需求,程序?qū)⒂脩翡浫氲男枨筠D(zhuǎn)化為程序的變量值:每個(gè)可選模塊的選中與否各由一個(gè)變量控制,初值為0,代表未選中;用戶如果在界面上選中了該模塊,則變量值變?yōu)?。

        為每個(gè)模塊的每個(gè)參數(shù)各設(shè)置一個(gè)變量,變量初始值為1,代表默認(rèn)選項(xiàng);用戶如果在界面更改了該參數(shù),則變量值相應(yīng)的改變。

        有了以程序變量形式表達(dá)的用戶需求后,程序即可以按照一套既定的規(guī)則,自動(dòng)進(jìn)行模塊的選取。本程序的處理結(jié)果是:在數(shù)據(jù)庫(kù)中生成臨時(shí)數(shù)據(jù)性質(zhì)的“模塊總表”和“模塊外部視圖表”,表中內(nèi)容為本次工作所需的所有模塊。

        5 自動(dòng)連接程序的設(shè)計(jì)

        在用戶需求處理程序自動(dòng)生成了所需模塊之后,自動(dòng)鏈接程序即投入運(yùn)行,它將生成的模塊與單片機(jī)進(jìn)行自動(dòng)鏈接,它分為以下幾個(gè)順序執(zhí)行的過(guò)程:

        (一) 過(guò)程1:先期預(yù)處理

        本過(guò)程是自動(dòng)連接程序執(zhí)行的必經(jīng)第一步,其總體思路是:模塊的某些端口必須使用單片機(jī)特定P3端口的第二功能,如WR、RD、INT等;某些端口必須利用單片機(jī)的P0端口進(jìn)行并行數(shù)據(jù)和地址的分時(shí)傳輸,并還可能利用P2端口進(jìn)行高位地址的傳輸。故為了防止單片機(jī)的 P3、P0、P2端口被其它普通I/O需求占用,首先應(yīng)為上述模塊端口分配單片機(jī)資源,然后再為其余的模塊端口分配資源。

        如果發(fā)現(xiàn)單片機(jī)所能提供的I/O端口數(shù)量不能滿足原始各模塊的需求,則跳出本過(guò)程,然后由用戶決定是繼續(xù)進(jìn)入后續(xù)的過(guò)程2或過(guò)程3,還是退出自動(dòng)連接程序返回用戶需求錄入界面。

        過(guò)程1的工作步驟,如圖2所示:

        圖2 先期預(yù)處理流程圖

        (二) 過(guò)程2:數(shù)據(jù)端口復(fù)用預(yù)處理

        由于單片機(jī)所能提供的I/O端口數(shù)量不能滿足原始各模塊的需求,本過(guò)程嘗試采用數(shù)據(jù)端口復(fù)用的方法。對(duì)于同時(shí)存在的多個(gè)輸出/輸入類模塊,可為其各配置一個(gè)數(shù)據(jù)鎖存器或三態(tài)緩沖器,再將它們的并行數(shù)據(jù)端口全部復(fù)接到單片機(jī)P0.0~P0.7端口,從而節(jié)省了對(duì)單片機(jī)I/O端口的占耗。相應(yīng)的,應(yīng)采取片選控制的方法來(lái)對(duì)上述模塊進(jìn)行選通。過(guò)程2的工作步驟,如圖3所示:

        圖3 數(shù)據(jù)端口復(fù)用預(yù)處理流程圖

        (三) 過(guò)程3:模塊并行改串行預(yù)處理

        由于單片機(jī)所能提供的I/O端口數(shù)量不能滿足原始各模塊的需求,同時(shí)數(shù)據(jù)端口復(fù)用預(yù)處理也失敗,本過(guò)程嘗試采用并行改串行的方法。首先找到可以將并行數(shù)據(jù)端口改為串行數(shù)據(jù)端口的模塊,然后逐一將其替換為相應(yīng)的串行模塊。每替換完一個(gè)模塊后,就重新核算單片機(jī)端口數(shù)是否夠用。若夠用則不再繼續(xù)更改,若仍不夠用就繼續(xù)更改下一個(gè)可改模塊。如果所有可改的模塊均改完,而單片機(jī)的I/O端口數(shù)仍不滿足需求,則意味著并行改串行預(yù)處理失敗,同時(shí)也意味著自動(dòng)連接程序無(wú)法完成模塊與單片機(jī)的連接,則中斷退出,返回用戶需求錄入界面,重新進(jìn)行需求錄入。過(guò)程 3的工作步驟,如圖4所示:

        圖4 并行改串行預(yù)處理流程圖

        6 結(jié)束語(yǔ)

        為驗(yàn)證軟件可用性,特選取已經(jīng)設(shè)計(jì)完成的實(shí)際系統(tǒng),以系統(tǒng)需求提出者的角色通過(guò)人機(jī)交互界面錄入需求,然后將自動(dòng)生成的原理圖與實(shí)際系統(tǒng)原理圖進(jìn)行比較。測(cè)試用例包括:基于單片機(jī)溫度采集系統(tǒng)、基于單片機(jī)的數(shù)字鬧鐘系統(tǒng)等。測(cè)試結(jié)果表明,該軟件自動(dòng)生成的系統(tǒng)原理圖與實(shí)例設(shè)計(jì)者繪制的原理圖大體一致,具備正確性和可用性;而在元器件選擇上,可能存在各自選取的型號(hào)不同但功能相同的情況;此外,在保證單片機(jī)端口使用正確的前提下,在被占用的端口編號(hào)、順序上軟件生成結(jié)果與人工設(shè)計(jì)結(jié)果有所不同。

        [1]楊居義,馬寧,靳光明,王益斌,單片機(jī)原理與工程應(yīng)用[M],清華大學(xué)出版社,2009。

        [2]趙廣林,看圖快速學(xué)Protel 99se電路設(shè)計(jì)與制版[M],電子工業(yè)出版社,2009。

        [3]吳永,基于網(wǎng)絡(luò)的單片機(jī)多點(diǎn)溫度采集系統(tǒng)的設(shè)計(jì)[J],計(jì)算機(jī)測(cè)量與控制,2010,18(4):959~964。

        [4]鄧秉林,單片機(jī)在閥門控制系統(tǒng)中的應(yīng)用[J],真空,2009,46(5):74~76。

        [5]馮榮彪,王國(guó)良,駱明兒,基于單片機(jī)的激光測(cè)速系統(tǒng)設(shè)計(jì)[J],激光技術(shù),2010,34(5):679~681。

        猜你喜歡
        單片機(jī)界面數(shù)據(jù)庫(kù)
        國(guó)企黨委前置研究的“四個(gè)界面”
        基于單片機(jī)的SPWM控制逆變器的設(shè)計(jì)與實(shí)現(xiàn)
        電子制作(2019年13期)2020-01-14 03:15:28
        基于單片機(jī)的層次漸變暖燈的研究
        電子制作(2019年15期)2019-08-27 01:12:10
        基于單片機(jī)的便捷式LCF測(cè)量?jī)x
        電子制作(2019年9期)2019-05-30 09:42:02
        基于FANUC PICTURE的虛擬軸坐標(biāo)顯示界面開(kāi)發(fā)方法研究
        數(shù)據(jù)庫(kù)
        人機(jī)交互界面發(fā)展趨勢(shì)研究
        數(shù)據(jù)庫(kù)
        數(shù)據(jù)庫(kù)
        數(shù)據(jù)庫(kù)
        日本熟妇另类一区二区三区| 亚洲欧洲日产国码无码| av免费网站在线免费观看| 日本午夜剧场日本东京热| 国产精久久一区二区三区| 久久婷婷国产剧情内射白浆| 91精品国产91久久综合桃花 | 日本一区二区三区经典视频| 少妇被粗大的猛进出69影院| 久久久精品人妻一区二区三区| 亚洲精品成人av观看| 亚洲国产精品嫩草影院久久av| 欧美性色欧美a在线播放| 国产麻豆精品久久一二三| 久久福利青草精品资源| 亚洲国产精品天堂久久久| 久久精品国产免费观看三人同眠 | a欧美一级爱看视频| 国产精品美女主播一区二区| 中国妇女做爰视频| 亚洲中久无码永久在线观看同| 国产一线视频在线观看高清| 日韩一级精品视频免费在线看| 国产精品久久久久免费观看| 久久国产精品波多野结衣av| 国产精品日韩中文字幕| 亚洲视频在线免费不卡| 消息称老熟妇乱视频一区二区| 亚洲黄色免费网站| 日本伦理视频一区二区| 亚洲av无码偷拍在线观看| 亚洲精华国产精华液的福利| 免费va国产高清不卡大片 | 男女啪啪免费体验区| 毛片在线啊啊| 国产高清视频在线不卡一区| 国产精品99精品无码视亚 | 亚洲精品久久久久中文字幕| 亚洲国产夜色在线观看| 福利视频在线一区二区三区| 午夜不卡无码中文字幕影院|