• 
    

    
    

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

      智能視力檢查表電路設(shè)計(jì)

      2021-12-16 14:03:54周春梅
      關(guān)鍵詞:視標(biāo)遙控按鍵

      蔣 成,周春梅

      (四川工商學(xué)院電子信息工程學(xué)院,四川 成都 611745)

      1 智能視力檢測(cè)系統(tǒng)的軟件模塊設(shè)計(jì)

      1.1 軟件設(shè)計(jì)方案

      如圖1 所示,軟件設(shè)計(jì)同硬件設(shè)計(jì)一樣,主分為三個(gè)模塊,是屬于整體設(shè)計(jì)的數(shù)字端,由紅外遙控接收遙控器傳輸過(guò)來(lái)的數(shù)據(jù),做轉(zhuǎn)換,發(fā)給中心控制端,中心控制端做解析后,發(fā)給VGA 端,由VGA 接口將數(shù)據(jù)傳到顯示器,并顯示E。

      圖1 軟件設(shè)計(jì)方案流程圖

      1.2 算法設(shè)計(jì)

      (1)算法模塊

      視力檢測(cè)算法要求視力檢測(cè)時(shí),使用者根據(jù)自己觀測(cè)到的視標(biāo)開(kāi)口方向提供反饋信息,F(xiàn)PGA 將對(duì)這些反饋信息進(jìn)行記錄和處理后,選擇下一個(gè)E 視標(biāo)進(jìn)行顯示。最后將這些結(jié)果進(jìn)行整理得到最后的視力檢測(cè)結(jié)果。反饋信息的處理和整理過(guò)程就是下面要介紹的視力檢測(cè)算法。

      (2)判斷時(shí)間

      在視力檢測(cè)時(shí)需要使用者對(duì)判斷方向提供反饋信號(hào)后再顯示下一個(gè)信息,正常情況下,在進(jìn)行視力檢測(cè)時(shí),從看到視標(biāo)的那一刻起,人的大腦需要一段反應(yīng)時(shí)間進(jìn)行方向的判斷,然后根據(jù)判斷結(jié)果按下對(duì)應(yīng)的方向按鍵。本設(shè)計(jì)就這段時(shí)間的長(zhǎng)短進(jìn)行了限制,使整個(gè)算法更為標(biāo)準(zhǔn)化和人性化,減少了人為誤差。

      如圖2 中的延時(shí)計(jì)數(shù)器軟件設(shè)計(jì)圖所示的程序代碼表示,延時(shí)為2 秒,意思是需要在使用者按下按鍵后進(jìn)行下一個(gè)視標(biāo)的顯示,這段時(shí)間是由使用者的反應(yīng)判斷時(shí)間加上按鍵時(shí)間共同決定的。本設(shè)計(jì)將視標(biāo)的顯示時(shí)間設(shè)為2s,如果超出反應(yīng)時(shí)間段后使用者仍然沒(méi)有輸入按鍵信息則認(rèn)為使用者無(wú)法看清該視標(biāo)[1]。

      圖2 延時(shí)計(jì)數(shù)器軟件設(shè)計(jì)代碼

      1.3 紅外遙控模塊

      (1)紅外遙控模塊整體設(shè)計(jì)

      紅外遙控模塊的軟件設(shè)計(jì)比較簡(jiǎn)單,只做數(shù)據(jù)接收和發(fā)送,如圖3。

      圖3 紅外遙控設(shè)計(jì)流程圖

      按鍵信號(hào)(key_flag)包括功能命令和方向命令數(shù)據(jù),由NEC 協(xié)議傳輸?shù)郊t外控制端,做數(shù)據(jù)解析,然后傳給中心控制芯片。

      (2)NEC 協(xié)議算法

      NEC 協(xié)議是紅外遠(yuǎn)程控制控制最常用的傳輸協(xié)議之一。當(dāng)遙控器按下按鍵時(shí),會(huì)發(fā)出一幀的數(shù)據(jù),這一幀的數(shù)據(jù)分別為引導(dǎo)碼、地址碼、地址碼反碼、數(shù)據(jù)碼、數(shù)據(jù)碼反碼;然后由HS0038B 紅外芯片接收。本次設(shè)計(jì)的遙控器所需的各個(gè)按鍵發(fā)送數(shù)據(jù)如表1 所示。

      表1 遙控按鍵指示表

      1.4 中心控制模塊

      (1)中心控制模塊整體設(shè)計(jì)

      如圖4 中心控制模塊是為FPGA 內(nèi)部運(yùn)算來(lái)控制,主要是分為判斷模塊、計(jì)數(shù)模塊和隨機(jī)數(shù)模塊。

      圖4 中心模塊控制流程圖

      (2)隨機(jī)數(shù)模塊

      在FPGA 的電路設(shè)計(jì)中,$androm 只能在仿真是運(yùn)用,對(duì)于在系統(tǒng)綜合是無(wú)法編譯成功,而若是要是實(shí)現(xiàn)隨機(jī),只能運(yùn)用偽隨機(jī)法,偽隨機(jī)法是屬于長(zhǎng)時(shí)間來(lái)看有周期性的隨機(jī)算法。

      如圖5,當(dāng)給出load 信號(hào)后,由seed 左右種子數(shù),然后rand_rom 循環(huán)移位,最后隨機(jī)產(chǎn)生一個(gè)2 字節(jié)的數(shù)據(jù),分別為00、01、10、11,每個(gè)字節(jié)生成的概率相等,本次設(shè)計(jì)給出,判斷rand_num 的數(shù)據(jù),定義rand_num=00 時(shí)視標(biāo)“E”方向?yàn)樯希瑀and_num=01時(shí)“E”方向?yàn)橄?,rand_num=10 時(shí)“E”方向?yàn)樽?,rand_num=11 時(shí)“E”方向?yàn)橛?,如?。(3)用戶判斷模塊

      圖5 隨機(jī)數(shù)生成軟件示意圖

      表2 隨機(jī)數(shù)功能示意表

      用戶判斷模塊是一個(gè)比較復(fù)雜的模塊,主要是需要根據(jù)用戶按鍵判斷的方向和視標(biāo)“E”的方向是否匹配。由于紅外遙控模塊的NEC 協(xié)議傳輸?shù)陌存I方向數(shù)據(jù)不是00、01、10、11,故此,在進(jìn)行方向判斷之前,需要將NEC 傳數(shù)過(guò)來(lái)的數(shù)據(jù)做轉(zhuǎn)換,轉(zhuǎn)換方式為:將紅外遙控模塊的數(shù)據(jù)(hs0038b_data)進(jìn)行判斷,做一個(gè)按鍵判斷寄存器(key_judge_buff),并由狀態(tài)機(jī)來(lái)實(shí)現(xiàn);

      如圖6 所示,當(dāng)檢測(cè)到發(fā)送數(shù)據(jù)完成(hs0038b_en=1)狀態(tài)機(jī)進(jìn)入1 狀態(tài),并且判斷hs0038b_data的 值,為h46 時(shí),key_judge_buff 賦值為00;表示方向判斷為上,當(dāng)為hs0038b_data=h15 時(shí),key_judge_buff 賦值為01,表示方向判斷為下;當(dāng)為hs0038b_data=h44 時(shí),key_judge_buff 賦值為10,表示方向判斷為左;當(dāng)為hs0038b_data=h43 時(shí),key_judge_buff 賦值為11,表示方向判斷為右;當(dāng)給key_judge_buff 賦值后,狀態(tài)機(jī)進(jìn)入3 狀態(tài),為方向判斷,判斷語(yǔ)句為o_judge=key_judge_buff&&e_fx;表示當(dāng)key_judge_buff和e_fx 相同時(shí),o_judge=1,否則為0。

      圖6 用戶判斷軟件示意圖

      1.5 VGA 接口調(diào)用模塊設(shè)計(jì)

      需要顯示的內(nèi)容包括:E 視標(biāo)、和最后的檢測(cè)結(jié)果。設(shè)計(jì)程序按照功能分為時(shí)鐘部分設(shè)計(jì)、VGA 驅(qū)動(dòng)部分和VGA 顯示控制部分3 個(gè)模塊, 其模塊劃分結(jié)構(gòu)如圖7 所示。Div_2 是時(shí)鐘分頻模塊,將50Mhz 的時(shí)鐘作2 分頻,分為25Mhz,以提供輸入時(shí)鐘和復(fù)位時(shí)鐘。VGA_show 是顯示模塊。按時(shí)序描述VGA 顯示內(nèi)容,VGA_driver 是VGA 驅(qū)動(dòng)電路,對(duì)時(shí)序及狀態(tài)進(jìn)行約束。

      圖7 vga 顯示模塊設(shè)計(jì)圖

      (1)分頻模塊設(shè)計(jì)

      分頻模塊的設(shè)計(jì)是為了滿足VGA 顯示640×480分辨率所需時(shí)鐘的25Mhz,而本次設(shè)計(jì)所采取的系統(tǒng)時(shí)鐘為50Mhz,故此只需要將系統(tǒng)時(shí)鐘進(jìn)行二分頻;

      二分頻極為簡(jiǎn)單,如圖8 所示,當(dāng)系統(tǒng)來(lái)一個(gè)時(shí)鐘上升沿,clk_25Mhz 取反,并且,將clk_25Mhz 作為輸出即可實(shí)現(xiàn)二分頻。

      圖8 二分頻軟件示意圖

      (2)VGA 驅(qū)動(dòng)模塊設(shè)計(jì)

      在前面第三章介紹部分講了,VGA 若要實(shí)現(xiàn)顯示,則需要將有效數(shù)據(jù)送到顯示屏上,例如640×480 分辨率的VGA,其有效數(shù)據(jù)位是640×480,然而其實(shí)際數(shù)據(jù)長(zhǎng)度為800×525,因此,需要將行計(jì)數(shù)器(h_cnt)和場(chǎng)計(jì)數(shù)器(v_cnt)的數(shù)據(jù)減去顯示前沿和顯示后沿;

      如圖9 所示,表示對(duì)行、場(chǎng)同步計(jì)數(shù)器計(jì)數(shù),行同步計(jì)數(shù)器(h_cnt)計(jì)數(shù)到行同步周期800(H_TOTAL),場(chǎng)計(jì)數(shù)器計(jì)數(shù)到525(V_TOTAL)。

      圖9 VGA 驅(qū)動(dòng)模塊軟件示意圖

      (3)VGA 顯示模塊設(shè)計(jì)

      VGA 顯示模塊主要是接收來(lái)字隨機(jī)數(shù)模塊的數(shù)據(jù)和VGA 驅(qū)動(dòng)模塊的數(shù)據(jù),并且調(diào)用內(nèi)部rom IP 核,將rom 內(nèi)部的數(shù)據(jù)傳輸給顯示屏并顯示出來(lái)。

      如圖10 所示,VGA 顯示模塊接收到來(lái)隨機(jī)數(shù),做相應(yīng)的方向隨機(jī)變化,接受到驅(qū)動(dòng)模塊的數(shù)據(jù),顯示再顯示屏上。

      圖10 VGA 顯示模塊流程圖

      2 智能實(shí)力檢測(cè)表測(cè)試

      2.1 功能仿真測(cè)試

      (1)時(shí)鐘分頻模塊仿真測(cè)試

      時(shí)鐘分頻模塊是用來(lái)生成VGA 時(shí)序的,本次設(shè)計(jì)采用的VGA 分辨率是680*600,所需要的時(shí)鐘是25Mhz 的時(shí)鐘,即對(duì)50Mhz 的系統(tǒng)時(shí)鐘進(jìn)行二分頻,將輸出時(shí)鐘o_clk 作為VGA 的時(shí)序時(shí)鐘,其仿真圖如下;

      如圖11 的仿真所示:當(dāng)使能信號(hào)拉高后,每來(lái)一次系統(tǒng)時(shí)鐘i_sys_clk 上升沿,o_clk 便拉高一次,而輸出的o_clk 便是25Mhz 的時(shí)鐘。

      圖11 時(shí)鐘分頻仿真圖

      (2)隨機(jī)模塊測(cè)試

      隨機(jī)數(shù)模塊用來(lái)產(chǎn)生隨機(jī)數(shù)的。每次產(chǎn)生的隨機(jī)數(shù)都代表下一次視標(biāo)的顯示方向,為了保證顯示視標(biāo)符合隨機(jī)顯示的需求,需要一個(gè)隨機(jī)數(shù)來(lái)確定方向。設(shè)計(jì)中定義了一個(gè)四位的循環(huán)移位寄存器,其中對(duì)這四位數(shù)據(jù)進(jìn)行賦值,初始值為11,每次時(shí)鐘信號(hào)上升沿到來(lái)后進(jìn)行一次循環(huán)移位處理。其中對(duì)視標(biāo)的四個(gè)顯示方向分別定義為上:00,下:01,左:11,右:10。每次需要提取隨機(jī)數(shù)進(jìn)行下次視標(biāo)顯示時(shí)就對(duì)寄存器的后兩位數(shù)值進(jìn)行提取。提取的時(shí)間由手持端按鍵按下的時(shí)間決定,每個(gè)操作的人間隔時(shí)間都不相同,因此具有隨機(jī)性。首先要證明上下左右的概率相同,都為1/4,這樣才能滿足各朝向數(shù)目均等的要求。其概率仿真圖如圖12 所示。

      圖12 隨機(jī)模塊仿真圖

      如圖12 的隨機(jī)模塊仿真圖所示,由seed 做為種子,通過(guò)循環(huán)移位后,再某個(gè)時(shí)鐘就會(huì)得到隨機(jī)數(shù),而隨機(jī)數(shù)作為VGA 顯示模塊隨即便換的驅(qū)動(dòng)。

      2.2 功能測(cè)試

      圖13 初始界面顯示

      圖13 顯示視標(biāo)“E”

      初始界面顯示為START,當(dāng)JTAG 驅(qū)動(dòng)之后,系統(tǒng)開(kāi)始運(yùn)作,顯示器顯示,如圖12 所示的START。

      如圖14 顯示的第一級(jí)時(shí)標(biāo)“E”,是當(dāng)測(cè)試者按下遙控器中心鍵后的顯示。

      圖14 遙控按鍵判斷圖

      如圖14 所示,為測(cè)試中按下遙控鍵的圖,其中等亮表示此次判斷正確。如圖15 所示,為測(cè)試者再次按下遙控的中心鍵后的顯示,當(dāng)測(cè)試這第二次按中心鍵表示系統(tǒng)運(yùn)作結(jié)束,并且顯示測(cè)試者此次測(cè)試的視力數(shù)據(jù)。

      圖15 結(jié)束界面視圖

      3 結(jié)語(yǔ)

      此次設(shè)計(jì)是一個(gè)基于FPGA 實(shí)現(xiàn)的智能視力檢測(cè)系統(tǒng),改善了傳統(tǒng)的使用視力表檢測(cè)時(shí)需要人工輔助的弊端,實(shí)現(xiàn)了更加智能人性化的視力檢測(cè)過(guò)程。設(shè)計(jì)通過(guò)介紹標(biāo)準(zhǔn)對(duì)數(shù)視力表的優(yōu)勢(shì)和原理,說(shuō)明了選擇其作為智能視力測(cè)量參考的原因。然后按照設(shè)計(jì)流程,分幾個(gè)模塊對(duì)整個(gè)系統(tǒng)進(jìn)行了從方案選擇到軟硬件設(shè)計(jì)實(shí)現(xiàn)的詳細(xì)描述。顯示端使用FPGA 作為控制核心,與液晶顯示屏進(jìn)行連接實(shí)現(xiàn)VGA 的顯示,與無(wú)線接收模塊相連接收發(fā)送的按鍵信息。模型系統(tǒng)在借助了開(kāi)發(fā)板的情況下,實(shí)現(xiàn)了整個(gè)視力檢測(cè)的模擬過(guò)程,并進(jìn)行了仿真測(cè)試和整機(jī)實(shí)測(cè)。模型系統(tǒng)能夠滿足設(shè)計(jì)需求,取得比較滿意的設(shè)計(jì)效果。

      猜你喜歡
      視標(biāo)遙控按鍵
      如何遙控引爆的
      基于有限狀態(tài)機(jī)的按鍵檢測(cè)程序設(shè)計(jì)
      電子制作(2021年3期)2021-06-16 03:14:26
      他是如何遙控引爆的
      一種多方向?qū)Ч獍存I結(jié)構(gòu)設(shè)計(jì)
      電子制作(2016年1期)2016-11-07 08:43:05
      遙控賽車
      視近最大輻輳力及開(kāi)散力檢測(cè)
      遠(yuǎn)方及近方水平斜位量的檢測(cè)
      按鍵的多種狀態(tài)檢測(cè)及消抖處理方法
      家電科技(2013年4期)2013-07-09 10:55:08
      視力表(一)
      遙控提琴
      扶风县| 乌什县| 孝义市| 房产| 大庆市| 灵璧县| 黑龙江省| 利津县| 潼南县| 刚察县| 松桃| 七台河市| 温州市| 崇阳县| 横峰县| 郑州市| 辉县市| 衡阳市| 庄浪县| 石泉县| 临泽县| 开阳县| 永胜县| 云南省| 南澳县| 上高县| 平昌县| 罗山县| 杨浦区| 迁西县| 汉阴县| 汤原县| 宿迁市| 全椒县| 永川市| 宁化县| 万州区| 张家港市| 建水县| 松江区| 柳河县|