• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于C8051F040的單片機(jī)自動(dòng)查線系統(tǒng)

      2015-04-14 03:05:10李曉斌李玲玲
      火控雷達(dá)技術(shù) 2015年3期
      關(guān)鍵詞:字符按鍵導(dǎo)線

      李 磊 李曉斌 李玲玲

      (西安電子工程研究所 西安 710100)

      0 引言

      查線工作是產(chǎn)品調(diào)試之前的一道關(guān)鍵工序,它能防止因接線錯(cuò)誤、接線短路造成的電路功能故障或損壞。目前,我所的生產(chǎn)現(xiàn)場(chǎng)還普遍采用人工查線的方式進(jìn)行導(dǎo)線連接正確性檢查,這對(duì)于比較復(fù)雜的接線系統(tǒng)而言,不但耗時(shí)費(fèi)力,且經(jīng)常出現(xiàn)漏查、錯(cuò)查的情況,影響生產(chǎn)進(jìn)度。因而應(yīng)用自動(dòng)化的查線方式漸漸成為一種趨勢(shì),但市場(chǎng)上現(xiàn)有的自動(dòng)查線裝置主要針對(duì)接線規(guī)模很大的產(chǎn)品,一般使用繼電器作為查線通道切換裝置,應(yīng)用面向?qū)ο蟮恼Z言開發(fā)人機(jī)界面,其體積大、價(jià)格高、還必須使用通用計(jì)算機(jī)作為顯示控制設(shè)備,所以此類裝置在使用靈活性和性價(jià)比上對(duì)于一些接線規(guī)模中等或偏小的產(chǎn)品不具有很好的適用性。

      本設(shè)計(jì)主要是以單片機(jī)和多通道模擬開關(guān)芯片為硬件基礎(chǔ)開發(fā)的自動(dòng)查線裝置,以集成化的設(shè)計(jì)方式在一塊印制板上實(shí)現(xiàn)了查線裝置的主體設(shè)計(jì),通過C 語言對(duì)單片機(jī)進(jìn)行開發(fā)只用14 個(gè)按鍵開關(guān)和1 個(gè)12864 型小型字符液晶顯示屏就構(gòu)成了該裝置的人機(jī)操作界面,以極為低廉的成本和簡(jiǎn)單可靠的技術(shù)方式開發(fā)了一種便攜式的自動(dòng)查線裝置,具有對(duì)150 根導(dǎo)線的產(chǎn)品進(jìn)行自動(dòng)查線的能力??梢赃m用于我所在產(chǎn)的大多數(shù)產(chǎn)品,能大大減輕查線操作人員的勞動(dòng)強(qiáng)度,并能保證查線結(jié)果的準(zhǔn)確性。

      1 系統(tǒng)工作原理

      自動(dòng)查線系統(tǒng)的組成框圖如圖1所示,共由5個(gè)部分組成:單片機(jī)、按鍵開關(guān)陣列、液晶顯示部分、輸出開關(guān)陣列、輸入開關(guān)陣列。

      圖1 自動(dòng)查線系統(tǒng)組成框圖

      從圖1 中可以看出系統(tǒng)主要通過兩組開關(guān)陣列及C8051F040 單片機(jī)來實(shí)現(xiàn):用單片機(jī)作為核心控制器件完成測(cè)試信號(hào)的自動(dòng)讀取功能;通過輸入、輸出兩組開關(guān)的共同作用,將測(cè)試信號(hào)送入指定導(dǎo)線的輸入端,并通過相應(yīng)的輸出端子發(fā)送回單片機(jī)。具體過程如下:系統(tǒng)對(duì)被查電纜中的所有導(dǎo)線進(jìn)行編號(hào),輸出開關(guān)陣列與導(dǎo)線的輸入端相連;輸入開關(guān)陣列與導(dǎo)線的輸出端相連。當(dāng)需要對(duì)某根導(dǎo)線進(jìn)行通斷檢查時(shí),通過按鍵輸入該導(dǎo)線的編號(hào)值,單片機(jī)對(duì)輸入編號(hào)進(jìn)行解算后將其轉(zhuǎn)換為對(duì)輸入開關(guān)陣列的控制信號(hào),同時(shí)控制輸出開關(guān)陣列進(jìn)行掃描切換,使每根導(dǎo)線的輸出端逐個(gè)與單片機(jī)的測(cè)試信號(hào)讀取接口相連,單片機(jī)若在某根導(dǎo)線的輸出端讀取到該測(cè)試信號(hào),就將該導(dǎo)線的編號(hào)值輸出到顯示器上,若輸出編號(hào)值與輸入編號(hào)值一致,說明是該導(dǎo)線連通,若輸出值與輸入值不一致,說明被該導(dǎo)線存在短路情況;若導(dǎo)線輸入端與任何輸出端都不連通,則查線結(jié)果顯示為“懸空”,也就是說該導(dǎo)線存在斷路情況。從而,整個(gè)查線過程實(shí)現(xiàn)了以自動(dòng)的方式完成電纜指定端子的測(cè)量和結(jié)果判讀。

      2 工程實(shí)現(xiàn)方法

      本系統(tǒng)選用C8051F040 型單片機(jī)具有64 個(gè)通用I/O 接口,可運(yùn)行于25MHz 時(shí)鐘頻率下,同時(shí)該單片機(jī)本身具有的流水線指令結(jié)構(gòu)也使其擁有更高的運(yùn)行速度。針對(duì)本裝置帶有按鍵開關(guān)陣列、液晶顯示器、輸入、輸出開關(guān)陣列等多個(gè)外圍設(shè)備,至少需要56個(gè)控制接口的要求,該單片機(jī)滿足最低使用要求。

      單片機(jī)作為該系統(tǒng)的核心,需要完成以下三個(gè)功能:

      (1)按鍵值讀取:讀取按鍵開關(guān)陣列的輸入值(導(dǎo)線編號(hào)),并將相應(yīng)編號(hào)顯示在液晶顯示器上;

      (2)輸出開關(guān)陣列的控制信號(hào):對(duì)按鍵輸入值進(jìn)行解算,將其轉(zhuǎn)換為對(duì)輸入、輸出開關(guān)陣列的控制信號(hào),使輸入、輸出開關(guān)陣列分別切換到指定的通道上;

      (3)查線結(jié)果顯示:將讀取到測(cè)試信號(hào)的通道編號(hào)顯示在液晶顯示屏上,并對(duì)導(dǎo)線懸空、輸入導(dǎo)線編號(hào)值超出范圍等情況進(jìn)行相應(yīng)的錯(cuò)誤提示。

      以下將逐一介紹系統(tǒng)各功能的實(shí)現(xiàn)過程:

      2.1 按鍵值讀取

      按鍵開關(guān)陣列由16 個(gè)點(diǎn)觸式開關(guān)組成,圖2 為其原理圖。通過將單片機(jī)的P0 口接至該開關(guān)陣列,采用“線反法”可以讀取16 個(gè)開關(guān)的狀態(tài)。

      圖2 按鍵開關(guān)矩陣原理圖、功能圖

      在按鍵值讀取的過程中,為了防止發(fā)生輸入錯(cuò)誤,設(shè)定最多只能輸入3 位編號(hào)(系統(tǒng)最大查線數(shù)量為160 根導(dǎo)線),當(dāng)一次輸入的編號(hào)值大于3 位時(shí),顯示部分會(huì)清除原有的輸入值,重新從第一位輸入開始顯示;另外為了方便使用,輸入編號(hào)時(shí)不但可以直接通過數(shù)值按鍵進(jìn)行輸入,還設(shè)定有兩個(gè)步進(jìn)按鍵,這樣可以方便的使當(dāng)前導(dǎo)線編號(hào)值加一或者減一,在以順序方式進(jìn)行查線時(shí)這一點(diǎn)會(huì)帶來明顯的效率提升。

      按鍵值讀取部分程序框圖如圖3所示,操作人員每觸發(fā)一次按鍵,單片機(jī)首先對(duì)被觸發(fā)按鍵的類型進(jìn)行一次判斷,以便調(diào)取不同的操作。另外程序中設(shè)置有一個(gè)變量C,其作用是對(duì)輸入編號(hào)的位數(shù)進(jìn)行計(jì)數(shù),當(dāng)輸入位數(shù)大于3 時(shí),程序會(huì)清除當(dāng)前的顯示。具體過程如下:

      圖3 按鍵值讀取部分程序框圖

      (1)如果被觸發(fā)的是數(shù)值按鍵,C 的值會(huì)加1,當(dāng)C 的值大于3 時(shí)(輸入編號(hào)大于3 位),程序會(huì)清除當(dāng)前的顯示值,C 的值被清0,這樣,輸入位數(shù)將從1 開始重新計(jì)數(shù);

      (2)當(dāng)被觸發(fā)的按鍵是步進(jìn)按鍵時(shí),程序會(huì)對(duì)當(dāng)前的顯示編號(hào)值進(jìn)行相應(yīng)的加減操作;

      (3)當(dāng)被觸發(fā)的按鍵是“確認(rèn)”按鍵時(shí),程序會(huì)認(rèn)為本次編號(hào)的輸入已經(jīng)完成,C 的值被清0,并且,編號(hào)值將會(huì)被單片機(jī)解算成輸出開關(guān)陣列的控制信號(hào)發(fā)送出去;

      (4)“復(fù)位”按鍵被觸發(fā)時(shí),單片機(jī)的程序?qū)⒅匦录虞d,系統(tǒng)進(jìn)行重啟。

      對(duì)編號(hào)值進(jìn)行顯示時(shí)尤其需要注意的一點(diǎn)是,向液晶屏發(fā)送顯示內(nèi)容時(shí)只能以字符變量的形式進(jìn)行發(fā)送。例如,要顯示“121”這個(gè)編號(hào)值,不能直接向液晶屏發(fā)送“121”這個(gè)數(shù)字,因?yàn)橐壕敛荒茏R(shí)別這種整形變量,最終的顯示結(jié)果會(huì)變成亂碼;正確的方法是定義三個(gè)字符變量‘1’、‘2’、‘1’并逐個(gè)發(fā)送到液晶屏上進(jìn)行顯示。

      2.2 輸出開關(guān)陣列的控制信號(hào)

      為了滿足160 根導(dǎo)線的查線規(guī)模要求,系統(tǒng)的輸入、輸出開關(guān)陣列一共由20 個(gè)“16 選1 模擬開關(guān)”組成,每一個(gè)開關(guān)由一位使能信號(hào)來控制工作狀態(tài):使能信號(hào)為低電平時(shí)開關(guān)處于關(guān)斷狀態(tài),16個(gè)通道與開關(guān)的公共端都不連通;使能信號(hào)為高電平時(shí),開關(guān)進(jìn)入16 選1 工作模式。開關(guān)中的通道選擇是通過4 位2 進(jìn)制編碼來實(shí)現(xiàn)的,編碼規(guī)則為“8421 碼”,從0000 到1111。開關(guān)陣列的原理圖如圖4所示:

      本設(shè)備在解算開關(guān)控制信號(hào)時(shí)使用如下算法:

      (1)先將三個(gè)用于顯示編號(hào)值的字符型變量轉(zhuǎn)換為整形數(shù)值;

      (2)判斷該編號(hào)值對(duì)應(yīng)于哪個(gè)16 選1 開關(guān),并使該開關(guān)的使能位置高;

      (3)判斷該編號(hào)對(duì)應(yīng)于該開關(guān)中的哪一個(gè)選通通道,然后產(chǎn)生相應(yīng)的選通編碼使開關(guān)切換到該通道上。

      如前所述,顯示在液晶屏上的編號(hào)值實(shí)際上是三個(gè)獨(dú)立的字符型變量,而不是一個(gè)完整的整數(shù)形數(shù)值,所以需要通過如下辦法將其轉(zhuǎn)換為一個(gè)整數(shù)型數(shù)值:

      首先將三個(gè)顯示字符變量array[0]、array[1]、array[2]轉(zhuǎn)換為三個(gè)整形變量n[0]、n[1]、n[2],這三個(gè)整形變量分別對(duì)應(yīng)于編號(hào)值中的百位、十位、個(gè)位數(shù)值,然后通過公式100 ×n[0]+10 ×n[1]+1×n[2]計(jì)算出實(shí)際的編號(hào)值。

      圖4 開關(guān)陣列工作原理圖

      這部分功能由一個(gè)名為show_num 的函數(shù)實(shí)現(xiàn),該函數(shù)的輸入?yún)?shù)為顯示變量數(shù)組array,返回值為編號(hào)值num,程序中的digit 數(shù)組是與16 個(gè)按鍵對(duì)應(yīng)的字符數(shù)組,該函數(shù)的完整程序如下:

      接下來,通過對(duì)編號(hào)的簡(jiǎn)單運(yùn)算就可以完成對(duì)開關(guān)和選通通道的選擇:

      (1)計(jì)算開關(guān)編號(hào)的公式:b=int(a/16)(a-導(dǎo)線編號(hào)值,b-開關(guān)編號(hào)值,int(a/16)表示對(duì)運(yùn)算a/16 得到的結(jié)果取整數(shù));

      (2)計(jì)算選通通道的公式:c=a%16(a-導(dǎo)線編號(hào)值,c-開關(guān)選通通道編號(hào)值,a%16 表示a對(duì)16 取余數(shù));

      2.3 查線結(jié)果顯示算法及程序

      查線結(jié)果的顯示,實(shí)際是編號(hào)值解算的一個(gè)逆過程,依照以下步驟進(jìn)行:

      (1)單片機(jī)控制輸入開關(guān)陣列進(jìn)行掃描,在每一個(gè)通道都進(jìn)行一次測(cè)試信號(hào)的讀取;

      (2)對(duì)于讀取到測(cè)試信號(hào)的通道,將該通道的編號(hào)值轉(zhuǎn)換為可顯示的字符型變量;

      在轉(zhuǎn)換字符變量時(shí),首先將編號(hào)值中的百位、十位、個(gè)位數(shù)值分別解算出來,然后將其逐個(gè)轉(zhuǎn)換為字符變量,送至液晶顯示器。

      3 結(jié)論

      該系統(tǒng)以一種簡(jiǎn)單的硬件原理實(shí)現(xiàn)了查線工作的自動(dòng)化,通過軟件設(shè)計(jì)上的優(yōu)化實(shí)現(xiàn)了良好的人機(jī)交互界面,使得查線結(jié)果能夠清晰、準(zhǔn)確的得到表達(dá)。目前該系統(tǒng)已投入使用,經(jīng)過1年多的實(shí)踐,證明該查線系統(tǒng)可以準(zhǔn)確無誤的進(jìn)行導(dǎo)線通、斷、短路檢查,徹底消除了人工查線帶來的漏查隱患。

      本文重點(diǎn)介紹了該系統(tǒng)的軟、硬件實(shí)現(xiàn)原理,系統(tǒng)軟件部分使用C 語言進(jìn)行編程,因程序較長(zhǎng)在文中只進(jìn)行了部分羅列,并對(duì)其中的主要實(shí)現(xiàn)原理、算法進(jìn)行了講解。

      圖5 自動(dòng)查線系統(tǒng)實(shí)物圖

      圖6 自動(dòng)查線系統(tǒng)工作狀態(tài)示意圖

      [1]范立南,李荃高,李雪飛.單片機(jī)原理及應(yīng)用教程[M].

      [2]潘琢金,孫德龍,夏秀峰譯,C8051F 單片機(jī)應(yīng)用解析[M].北京:北京航空航天大學(xué)出版社.

      [3]盛偉荃,曾連蓀,基于C8051F040 的CAN 總線與RS-232 通信設(shè)計(jì)[J].電子設(shè)計(jì)工程,2014,22(13):191-193.

      [4]李朝青.單片機(jī)原理及接口技術(shù)[M].北京:北京航空航天大學(xué)出版社,1998.

      [5]張輝.基于C8051F040 單片機(jī)的CAN 總線測(cè)試模式研究[J].現(xiàn)代電子技術(shù),2012,35(6):43-48.

      [6]嚴(yán)蔡郁知.兩種LED 顯示方式應(yīng)用對(duì)比[J].福建電腦.2010,(9):77-78.

      [7]張毅剛,修林成,胡振江.MCS-51 單片機(jī)應(yīng)用設(shè)計(jì)[M].哈爾濱:哈爾濱工業(yè)大學(xué)出版社,1992.

      猜你喜歡
      字符按鍵導(dǎo)線
      尋找更強(qiáng)的字符映射管理器
      基于有限狀態(tài)機(jī)的按鍵檢測(cè)程序設(shè)計(jì)
      電子制作(2021年3期)2021-06-16 03:14:26
      東華大學(xué)研發(fā)出可體內(nèi)吸收型蠶絲導(dǎo)線
      字符代表幾
      一種USB接口字符液晶控制器設(shè)計(jì)
      電子制作(2019年19期)2019-11-23 08:41:50
      220千伏輸電線路導(dǎo)線斷裂分析
      消失的殖民村莊和神秘字符
      架空導(dǎo)線的幾種防腐措施
      電線電纜(2017年4期)2017-07-25 07:49:46
      一種多方向?qū)Ч獍存I結(jié)構(gòu)設(shè)計(jì)
      電子制作(2016年1期)2016-11-07 08:43:05
      GDX-2導(dǎo)線機(jī)過線輪改進(jìn)
      河南科技(2014年10期)2014-02-27 14:09:19
      玉山县| 酉阳| 丹东市| 虎林市| 湖北省| 江源县| 新源县| 庆云县| 龙川县| 正宁县| 兴隆县| 安阳市| 太湖县| 塔河县| 光山县| 古浪县| 嘉善县| 罗田县| 微山县| 四川省| 拉萨市| 读书| 色达县| 永仁县| 青海省| 辛集市| 承德市| 靖安县| 大埔县| 香格里拉县| 右玉县| 天柱县| 永新县| 恩施市| 正宁县| 邵阳市| 镇雄县| 五峰| 游戏| 蕉岭县| 琼海市|