□邱 杰,覃斌毅,董積有
(1.玉林師范學院,計算機科學與工程學院,廣西 玉林 537000;2.玉林師范學院,電子與通信工程學院,廣西 玉林 537000;3. 玉林師范學院,學生工作處,廣西 玉林 537000)
基于MCS-51單片機的視力測試儀設(shè)計
□邱 杰1,覃斌毅2*,董積有3
(1.玉林師范學院,計算機科學與工程學院,廣西 玉林 537000;2.玉林師范學院,電子與通信工程學院,廣西 玉林 537000;3. 玉林師范學院,學生工作處,廣西 玉林 537000)
視力檢測是體檢中最為常見的檢測項目,傳統(tǒng)的視力檢測方法需要醫(yī)護人員自始至終參與到檢測過程中,工作強度大,且醫(yī)護人員在檢測中無意識的暗示也可能對體檢者的檢查結(jié)果造成影響. 本文提出了一種基于MCS-51單片機的視力檢測儀的設(shè)計方法,該檢測儀可需醫(yī)護人員的較少的干預下,有效地輔助醫(yī)務人員對體檢者進行視力檢測.
MCS-51;視力;視力測試儀
人們在入學、入職等很多場合都需要進行體檢,視力檢測是體檢中最為常見的檢測項目之一.傳統(tǒng)的視力檢測方法是醫(yī)護人員指向視力表中的某一視標,體檢者判斷出視標的開口方向,最終醫(yī)護人員根據(jù)體檢者所能正確識別的最小視標給出其視力值,這就要求醫(yī)護人員自始至終參與到檢測過程中.當體檢人數(shù)眾多時,這種檢測方法需要醫(yī)護人員花費大量的時間完成檢測工作,體檢者也需要花費大量的時間等待檢測,且醫(yī)護人員在檢測中無意識的暗示也可能對體檢者的檢查結(jié)果造成影響.
本文提出了一種基于MCS-51單片機的視力檢測儀的設(shè)計方法,該檢測儀以MCS-51單片機為控制核心,在醫(yī)護人員較少的干預下,有效地輔助醫(yī)務人員對體檢者進行視力檢測.
本設(shè)計硬件由單片機主控模塊、LED顯示矩陣模塊、紅外收發(fā)和鍵盤輸入模塊、LCD液晶顯示模塊構(gòu)成,硬件結(jié)構(gòu)圖如圖1所示.單片機主控模塊控制LED顯示矩陣模塊中的LED燈點亮,引導體檢者進行視力檢測;體檢者將視標開口方向的判斷情況通過鍵盤輸入;從鍵盤輸入的判斷信息由紅外收發(fā)模塊傳遞給單片機主控模塊,主控模塊對信息進行判決并最終將體檢者的視力值送到LCD液晶顯示模塊顯示.
圖1 自動視力測試儀硬件結(jié)構(gòu)
2.1 單片機主控模塊
單片機主控模塊使用AT89S51單片機,它是一個低功耗,高性能CMOS 8位單片機,片內(nèi)含4k BytesFlash片內(nèi)程存儲器,128 bytes的隨機存取數(shù)據(jù)存儲器,2個16位可編程定時器/計數(shù)器.AT89S51單片機主要完成LED顯示矩陣控制、結(jié)果判決、LCD液晶顯示控制.以單片機的P2口作為LED顯示矩陣的控制口;P0口與無線接收模塊的數(shù)據(jù)輸出口相連;P3.0與LCD液晶的片選相連,P3.1連接LCD串行數(shù)據(jù)口,P3.2連接LCD液晶串行數(shù)據(jù)時鐘,P3.3連接LCD液晶串/并行方式選擇口.[1]
2.2 LED顯示矩陣模塊
在視力表每個視標下方都安裝了一個LED燈,當LED燈亮時,表示要求體檢者指出視標的開口方向.為了節(jié)約單片機的IO口,將LED以矩陣的形式連接,每一個LED燈都有一個屬于自己的唯一編號.在檢測視力時,任一時刻只有一盞LED燈亮.[2]
2.3 紅外收發(fā)和鍵盤輸入模塊
為了使體檢者對視標的判斷信息能通過無線傳輸給單片機,選用PT2262/PT2272芯片組對信號進行調(diào)制和解調(diào).PT2262/PT2272是一對帶地址、數(shù)據(jù)編碼功能的紅外遙控發(fā)射/接收芯片,可傳輸距離達100m,滿足視力檢測的距離要求.
鍵盤輸入采用獨立鍵盤的形式,共設(shè)置了四個按鍵,按鍵的鍵值送到紅外發(fā)射模塊的輸入端.當有按鍵按下時,紅外發(fā)射模塊的輸入端輸入高電平;當按鍵沒按下時,紅外發(fā)射模塊輸入端輸入低電平.依靠紅外收發(fā)和鍵盤輸入模塊,單片機就能獲得體檢者對視標的判斷信息.[3]
2.4 液晶顯示模塊
選用帶中文字庫的LCD 128 X 64顯示視力檢測結(jié)果,[4]128 X 64 是一種具有4位/8位并行、2 線或3線串行多種接口方式,內(nèi)部含有國標一級、二級簡體、中文字庫的點陣圖形液晶顯示模塊;其顯示分辨率為128 X 64,內(nèi)置8192個16*16 點漢字和128 個16*8 點ASCII 字符集.為了節(jié)約單片機的IO口,單片機與LCD128 X 64相連使用3線串行的接口方式.
本設(shè)計軟件流程圖如圖2所示.根據(jù)結(jié)構(gòu)化的思想,軟件可分為以下模塊:隨機數(shù)生成模塊、輸入識別模塊、結(jié)果判決模塊這三部分構(gòu)成.隨機數(shù)模塊用于生成一個1~72之間的隨機數(shù),利用這一隨機數(shù)即可控制LED顯示矩陣中相應位置的LED燈點亮,引導體檢者進行視力檢測.輸入識別模塊識別體檢者按下按鍵的鍵值并將鍵值傳遞給單片機進行處理.結(jié)果判決模塊是將收到的鍵值與單片機內(nèi)部存儲的視力表相比較,最終得出視力檢測結(jié)果.顯示模塊則是把視力檢測結(jié)果顯示到液晶面板上.
3.1 隨機數(shù)生成模塊
為了避免每個視力等級亮燈具有規(guī)律性,本系統(tǒng)采用了隨機數(shù)去控制同等級中LED燈的亮滅.借助C語言標準庫頭文件(stdlib.h)中的srand( )和rand( )兩個函數(shù)產(chǎn)生控制LED燈所需的隨機數(shù).[5]其中,srand( )中的種子可以使用單片機定時中斷產(chǎn)生.種子從0開始,毎到一次定時中斷,種子加1,種子的取值范圍從0到251.
3.2 輸入識別模塊
輸入識別模塊將體檢者的按鍵鍵值傳遞給單片機處理,本系統(tǒng)總共使用了四個按鍵,通過按鍵的不同組合,可實現(xiàn)視力檢測所需的各項功能,每個按鍵的功能如表1所示.本設(shè)計設(shè)置了一個“高視力模式”鍵,當體檢者按下“高視力模式”鍵時,檢測不是從第一行(視力值4.0)開始檢測,而是從第五行(視力值4.4)開始測試.視力好的體檢者可使用“高視力”這一功能,省去檢測第一至第六行視標的時間,提高檢測效率.
表1 按鍵功能
圖2 視力測試儀軟件流程圖
圖3 判決過程流程圖
3.3 結(jié)果判決模塊
單片機在獲得紅外接收模塊的鍵值信息后進行判決,單片機將鍵值與單片機ROM中存儲的視力表對比.判決規(guī)則是,從視力表第八行(從上往下數(shù))作為分界線,將視力表分為上下兩個片區(qū).在上片區(qū),當同一等級連續(xù)判斷正確的次數(shù)是本行視標數(shù)的一半時,檢測下一等級;當?shù)谝淮纬霈F(xiàn)同一等級的判錯次數(shù)大于2次時,則返回上一個等級進行測試,記錄標志位flag為1.在接下來的測試中再次出現(xiàn)判錯次數(shù)大于2次時,記錄標志位flag為2,這時直接輸出結(jié)果為當前上一等級視力值.在下片區(qū),當?shù)谝淮纬霈F(xiàn)同一等級連續(xù)判斷正確的次數(shù)是本行視標數(shù)的一半時,檢測下一等級;在當同一等級的判錯次數(shù)大于3次時,則返回測試上一個等級,記錄標志位flag為1.當在測試中再次出現(xiàn)判錯次數(shù)大于3次時,,記錄標志位flag為2時,這時直接輸出結(jié)果為上一等級視力值,流程圖如圖3所示.
本文設(shè)計了一種基于MCS-51單片機的自動視力測試儀,可在醫(yī)護人員較少的干預下,有效地輔助醫(yī)務人員對體檢者進行視力檢測.
本設(shè)計仍有不足:(1)隨機數(shù)的生成與種子有聯(lián)系,種子的取值范圍越大,生產(chǎn)隨機數(shù)的隨機性會越好,因此,隨機數(shù)生成模塊中的種子取值范圍有待增大;(2)目前使用的判決規(guī)則是依據(jù)經(jīng)驗得出,此規(guī)則有待根據(jù)臨床試驗進行修改,以增強規(guī)則的適用性;(3)在每一個視標下安裝的LED燈是否會影響體檢結(jié)果,有待進一步的臨床實驗確認. ■
[1]李榮正. PIC單片機在視力測試儀中的應用[J]. 上海工程大學學報,2003,17(3):171-174,180.
[2]沈曉宇. 基于OMAP3530雙核處理器的液晶視力測試儀研制[J]. 現(xiàn)代儀器與醫(yī)療,2013,19(2):16-19.
[3]李榮正. 微機控制視力測試儀的研制[J]. 電氣自動化,1998,(6):28-29.
[4]馬建寧,蔣紅兵,王林農(nóng),等. 新型視力自動測試儀的研制[J].現(xiàn)代醫(yī)學儀器與應用,1999,11,(4):4-5.
[5]魏保立,李秀玲.基于STM32的多功能視力測試儀制作[J].電子制作,2013,(8):23-24.
【責任編輯 謝明俊】
Design of Vision Testing Instrument Base on Singlechip MCS-51
QIU Jie1,QIN Bin-yi2*,DONG Ji-you3
(1. Schoolo of Computer Science and Engineering, Yulin Normal University, Yulin, Guangxi 537000;2. School of Electronics and Communication Engineering, Yulin Normal University, Yulin, Guangxi 537000;3. Department of Student Affairs, Yulin Normal University, Yulin, Guangxi 537000)
Vision testing is a common project in physical examination. Traditional method of vision testing requires doctor to involve in the testing process, which is a heavy workload. The result of the testing is affected by unconscious cues of doctor. This paper proposes a method which designs vision testing instrument based on MCS-51 single chip microcomputer. This instrument can intelligently guide physical examinees to complete visual acuity examination without the guidance of doctor.
MCS-51; vision; vision testing instrument
TP216
A
1004-4671(2015)02-0031-04
2014-03-01
邱杰(1987~),男,漢族,廣西玉林人,玉林師范學院計算機科學與工程學院助教,碩士研究生。研究方向:計算機應用、數(shù)據(jù)挖掘。*