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

        ?

        基于STM32的礦用手持式孔口顯示器設(shè)計(jì)

        2016-11-01 08:51:02雷曉榮
        電視技術(shù) 2016年10期
        關(guān)鍵詞:設(shè)計(jì)

        雷曉榮

        (中煤科工集團(tuán)西安研究院有限公司,陜西 西安 710077)

        ?

        基于STM32的礦用手持式孔口顯示器設(shè)計(jì)

        雷曉榮

        (中煤科工集團(tuán)西安研究院有限公司,陜西 西安 710077)

        為了提高礦用孔口顯示器使用的便捷性,采用STM32微控制器和emWin圖形庫(kù)設(shè)計(jì)了礦用手持式孔口顯示器。首先介紹了孔口顯示器的整體硬件設(shè)計(jì);軟件部分介紹了軟件整體架構(gòu),并詳細(xì)介紹了采集控制程序的設(shè)計(jì)和emWin圖形庫(kù)在STM32平臺(tái)的移植。試驗(yàn)結(jié)果表明,孔口顯示器系統(tǒng)工作穩(wěn)定,性能可靠,界面設(shè)計(jì)友好,實(shí)用性強(qiáng)。

        孔口顯示器;STM32微控制器;emWin圖形庫(kù)

        STM32微控制器是意法半導(dǎo)體(ST)公司生產(chǎn)的32位ARM處理器。該處理器具有內(nèi)部資源豐富、擴(kuò)展能力強(qiáng)、功率消耗低、價(jià)格便宜等優(yōu)點(diǎn),已逐漸成為 32位微控制器中的理想器件[1]。

        孔口顯示器是探管和用戶之間的人機(jī)接口,用戶通過(guò)它向探管發(fā)送同步、配置和數(shù)據(jù)提取等命令;同時(shí),探管接收命令后,向孔口顯示器發(fā)回相應(yīng)的信息;孔口顯示器將接收到的數(shù)據(jù)信息經(jīng)過(guò)計(jì)算和處理將結(jié)果以數(shù)字和圖形(剖面圖和水平面圖)的方式顯示出來(lái)[2-3]。傳統(tǒng)的孔口顯示器根據(jù)實(shí)現(xiàn)的主控芯片不同,一般有三種:基于工控機(jī)平臺(tái)的孔口顯示器,具有體積大、重量大等缺陷;基于單片機(jī)的孔口顯示器,沒(méi)有圖形化顯示界面;基于嵌入式ARM一體機(jī)的孔口顯示器,連續(xù)工作時(shí)間短,加大電池容量后體積又大。針對(duì)這些問(wèn)題,筆者基于STM32微控制器設(shè)計(jì)了一款體積小、功耗低、方便攜帶的礦用手持式孔口顯示器。

        1 礦用手持式孔口顯示器硬件設(shè)計(jì)

        礦用手持式孔口顯示器的主要功能就是配合中煤科工集團(tuán)西安研究院有限公司研制的煤礦井下各型軌跡儀使用,作為其顯示控制設(shè)備。礦用手持式孔口顯示器硬件主要由STM32F103系列微控制器、FLASH、SDRAM、LCD觸摸顯示控制模塊、USB轉(zhuǎn)藍(lán)牙模塊、接口模塊和其他模塊組成如圖1所示。

        圖1 顯示器硬件框架圖

        1.1微控制器

        STM32F103 系列微控制器是新一代基于32位Cortex-M3內(nèi)核的嵌入式 ARM處理器,最高處理速度可達(dá)72 MHz,片上集成存儲(chǔ)器,擁有USB2.0和USART等多個(gè)通信接口、11個(gè)定時(shí)器、中斷源和外設(shè)等。工作電壓為 2.0~3.6 V;具有休眠、停止、待機(jī)3種低功耗模式,從而在低功耗、短啟動(dòng)時(shí)間和可用喚醒源之間達(dá)到一個(gè)最好的平衡點(diǎn),適合孔口顯示器使用[4]。

        1.2顯示控制電路

        LCD觸摸顯示控制模塊采用了BL32007型3.2 in(1 in=2.54 cm)TFT液晶屏,分辨率為320×240,控制驅(qū)動(dòng)芯片采用經(jīng)典的ILI9341,其組成包括720通道的源極驅(qū)動(dòng)器、320通道的柵極驅(qū)動(dòng)器、圖形顯示的GRAM以及供電電路。ILI9341支持8/9/16/18位數(shù)據(jù)總線的MCU接口,6/16/18位數(shù)據(jù)總線的RGB接口,以及3/4線的SPI接口,使用1.65~3.3 V的I/O接口電壓和一個(gè)對(duì)應(yīng)的電壓跟隨電路來(lái)產(chǎn)生驅(qū)動(dòng)LCD的電壓,有精確的電壓控制支持全色顯示、8色顯示和睡眠模式。觸摸屏控制芯片選用XPT2046,內(nèi)含12位分辨率125 kHz的轉(zhuǎn)換速率逐步逼近型A/D轉(zhuǎn)換器。 XPT2046支持從1.5 V到5.25 V的低電壓I/O接口。 XPT2046能通過(guò)執(zhí)行2次A/D轉(zhuǎn)換查出被按的屏幕位置。顯示控制電路連接如圖2所示。

        圖2 顯示控制電路連接圖

        1.3通信電路

        通信電路改進(jìn)了上一代產(chǎn)品有線串口通信的方式,設(shè)計(jì)了有線串口通信和無(wú)線藍(lán)牙傳輸模塊共存的模式,可根據(jù)實(shí)際使用工況自由切換[5]。ADM2687E采用 Analog Devices的 iCoupler技術(shù),在單一封裝中結(jié)合了3通道隔離器、三態(tài)差分線路驅(qū)動(dòng)器、差分輸入接收器,內(nèi)置 5 kV(rms)隔離式DC-DC集成電源,不需要采用外部DC-DC隔離塊,具有 ±15 kV ESD 保護(hù)功能,適合在多點(diǎn)傳輸線路中用于高速通信。采用 5 V 或 3.3 V 單電源供電,實(shí)現(xiàn)了全集成式信號(hào)和電源隔離式 RS-485 解決方案;BF10-A 藍(lán)牙模塊直接把串口數(shù)據(jù)通過(guò)藍(lán)牙傳輸?shù)姆绞桨l(fā)送或接收回來(lái),送到STM32F103 系列微控制器進(jìn)行處理[6]。

        2 礦用手持式孔口顯示器軟件設(shè)計(jì)

        圖形用戶界面是礦用手持式孔口顯示器設(shè)計(jì)的關(guān)鍵部分,軟件設(shè)計(jì)的主要內(nèi)容包括emWin圖形庫(kù)在STM32平臺(tái)的移植和基于emWin圖形庫(kù)的數(shù)據(jù)采集控制程序設(shè)計(jì)。

        2.1數(shù)據(jù)采集控制軟件設(shè)計(jì)

        數(shù)據(jù)采集控制軟件作為軌跡儀的人機(jī)交互界面,直接關(guān)系到整個(gè)系統(tǒng)的用戶體驗(yàn)。因此,軟件的設(shè)計(jì)采用模塊化設(shè)計(jì)方法,具體操作采用“數(shù)字導(dǎo)向式”設(shè)計(jì),簡(jiǎn)化了軟件的操作步驟。該軟件實(shí)現(xiàn)了井下數(shù)據(jù)通信、調(diào)試測(cè)量、定時(shí)同步、數(shù)據(jù)處理計(jì)算及存儲(chǔ)、軌跡圖顯示和USB導(dǎo)出等功能,軟件架構(gòu)如圖3所示。

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

        2.2emWin移植

        emWin是SEGGER公司開發(fā)圖形庫(kù),將它授權(quán)給ST公司使用稱之為STemWin,二者是一樣的。emWin來(lái)源有兩處,一個(gè)是MDK(Keil)軟件目錄下的,另外一個(gè)是ST公司的,文中采用ST公司的STemWinLibrary522,它的移植主要有以下幾個(gè)步驟[7-8]:

        1)添加庫(kù)文件和配置文件。

        打開工程文件,添加GUI配置文件GUIConf.h和GUICon.c、GUI驅(qū)動(dòng)模板文件GUIDRV_Template.h和GUIDRV_Template.c、LCD配置文件LCDConf_FlexColor_Template.h和LCDConf_FlexColor_Template.c及LCDConf_Lin_Template.h和LCDConf_Lin_Template.c;庫(kù)文件添加與STM32F103 系列微控制器對(duì)應(yīng)的STemWin522_CM3_Keil.lib和STemWin522_CM3_OS_Keil.lib。

        2)配置LCD文件

        LCD文件配置主要針對(duì)ILI9341控制驅(qū)動(dòng)芯片進(jìn)行配置,配置它的顯示尺寸、顏色模式、顯示方向、寄存器地址等參數(shù),主要配置如下:

        /* 顯示尺寸 */

        #define XSIZE_PHYS240

        #define YSIZE_PHYS320

        /* 觸摸屏四個(gè)角的AD采樣值 */

        #define TOUCH_AD_TOP3802

        #define TOUCH_AD_BOTTOM189

        #define TOUCH_AD_LEFT213

        #define TOUCH_AD_RIGHT3859

        /* 設(shè)置寄存器 */

        static void LcdWriteReg(U16 Data)

        {

        ILI9341_REG = Data;

        }

        /* 寫寄存器 */

        static void LcdWriteData(U16 Data)

        {

        ILI9341_RAM = Data;

        }

        void LCD_X_Config(void)

        {

        GUI_DEVICE * pDevice;

        CONFIG_FLEXCOLOR Config = {0};

        GUI_PORT_API PortAPI = {0};

        /* 控制驅(qū)動(dòng)器和顏色模式 */

        pDevice = GUI_DEVICE_CreateAndLink(GUIDRV_FLEXCOLOR, GUICC_565, 0, 0);

        /* 控制驅(qū)動(dòng)器配置 */

        LCD_SetSizeEx (0, XSIZE_PHYS , YSIZE_PHYS);

        LCD_SetVSizeEx(0, VXSIZE_PHYS, VYSIZE_PHYS);

        /* 顯示方向 */

        Config.FirstCOM = 0;

        Config.FirstSEG = 0;

        Config.Orientation = GUI_SWAP_XY | GUI_MIRROR_Y;Config.NumDummyReads = 2;

        GUIDRV_FlexColor_Config(pDevice, &Config);

        /* 配置控制驅(qū)動(dòng)器和操作方式 */

        PortAPI.pfWrite16_A0= LcdWriteReg;

        PortAPI.pfWrite16_A1= LcdWriteData;

        PortAPI.pfWriteM16_A1 = LcdWriteDataMultiple;

        PortAPI.pfReadM16_A1= LcdReadDataMultiple;

        GUIDRV_FlexColor_SetFunc(pDevice, &PortAPI, GUIDRV_FLEXCOLOR_F66709, GUIDRV_FLEXCOLOR_M16C0B16);

        GUI_TOUCH_SetOrientation((GUI_MIRROR_X * LCD_GetMirrorXEx(0)) |

        (GUI_MIRROR_Y * LCD_GetMirrorYEx(0)) |

        (GUI_SWAP_XY* LCD_GetSwapXYEx (0)));

        /* 觸摸屏校正 */

        GUI_TOUCH_Calibrate(GUI_COORD_X, 0,240-1, UCH_AD_RIGHT ,TOUCH_AD_LEFT );

        GUI_TOUCH_Calibrate(GUI_COORD_Y,0,320-1,TOUCH_AD_BOTTOM ,TOUCH_AD_TOP );

        }

        3)配置GUI文件

        GUI文件配置分為GUIConf.h配置和GUIConf.c配置。GUIConf.h配置多層顯示、多任務(wù)支持、觸摸屏支持、可用包支持信息和缺省字體等,具體如下:

        /* 設(shè)置2層顯示支持 */

        #define GUI_NUM_LAYERS2

        /* 匹配多任務(wù)支持 */

        #ifdef OS_SUPPORT

        #define GUI_OS(1)

        #else

        #define GUI_OS(0)

        #endif

        /* 觸摸屏支持 */

        #ifndef GUI_SUPPORT_TOUCH

        #define GUI_SUPPORT_TOUCH(1)

        #endif

        /* 缺省字體 */

        #define GUI_DEFAULT_FONT&GUI_Font6x8

        /* 鼠標(biāo)支持 */

        #define GUI_SUPPORT_MOUSE(1)

        /* 支持窗口 */

        #define GUI_WINSUPPORT(1)

        /* 存儲(chǔ)器設(shè)備支持 */

        #define GUI_SUPPORT_MEMDEV(1)

        /* 設(shè)備指針支持 */

        #define GUI_SUPPORT_DEVICES(1)

        GUIConf.c配置主要配置動(dòng)態(tài)顯示緩沖區(qū)大小和缺省的字體等,具體如下:

        /* emWin動(dòng)態(tài)顯示緩沖區(qū)大小 */

        #define GUI_NUMBYTES1024*38

        /* 設(shè)置塊大小 */

        #define GUI_BLOCKSIZE 0x80

        void GUI_X_Config(void)

        {

        /* 32位分配存儲(chǔ)區(qū)域 */

        static U32 aMemory[GUI_NUMBYTES / 4];

        /* 分配存儲(chǔ)區(qū)域給emWin */

        GUI_ALLOC_AssignMemory(aMemory, GUI_NUMBYTES);

        /* 設(shè)置塊大小 */

        GUI_ALLOC_SetAvBlockSize(GUI_BLOCKSIZE);

        /* 設(shè)置缺省字體 */

        GUI_SetDefaultFont(GUI_FONT_6X8);

        }

        移植完成后,將使用emWin圖形庫(kù)設(shè)計(jì)的數(shù)據(jù)采集控制程序添加到工程目錄中進(jìn)行編譯并下載到MCU中,初始的功能界面如圖4所示。

        圖4 數(shù)據(jù)采集控制軟件界面(截圖)

        3 試驗(yàn)結(jié)果

        為了驗(yàn)證礦用手持式孔口顯示器的性能,配合中煤科工集團(tuán)西安研究院有限公司研制的YBG1-T便攜式軌跡儀探管一起進(jìn)行了地面鉆孔試驗(yàn)。測(cè)試效果如圖5所示。

        圖5 地面鉆孔試驗(yàn)效果

        打開礦用手持式孔口顯示器,啟動(dòng)后自動(dòng)彈出數(shù)據(jù)采集軟件功能界面,和YBG1-T便攜式軌跡儀探管進(jìn)行藍(lán)牙連接,連接成功后開始各項(xiàng)功能測(cè)試:1)調(diào)試測(cè)量,點(diǎn)擊發(fā)送命令后功能界面顯示當(dāng)前的測(cè)量?jī)A角和方位,各項(xiàng)工作正常;2)定時(shí)同步測(cè)試,定時(shí)同步設(shè)置完成并發(fā)送命令,把YBG1-T便攜式軌跡儀探管送入地面鉆孔開始測(cè)量,每隔3 m測(cè)量一次,直到測(cè)試結(jié)束。本次測(cè)試鉆孔深度72 m,全程耗時(shí)32 min,礦用手持式孔口顯示器成功記錄了測(cè)量信息;3)數(shù)據(jù)傳輸測(cè)試,取出YBG1-T便攜式軌跡儀探管后再次進(jìn)行藍(lán)牙連接,成功取出所有的測(cè)試數(shù)據(jù),如圖5b所示;4)圖形顯示測(cè)試,數(shù)據(jù)傳輸結(jié)束后,點(diǎn)擊圖形曲線后程序自動(dòng)計(jì)算全部測(cè)量數(shù)據(jù)的軌跡坐標(biāo),并生成二維軌跡圖,如圖5c所示。全部功能測(cè)試完成后,又選取了2號(hào)鉆孔、3號(hào)鉆孔進(jìn)行了測(cè)試,測(cè)試效果良好。

        4 結(jié)語(yǔ)

        基于STM32微控制器和3.2 in(1 in=2.54 cm)高分辨率觸摸顯示屏作為硬件平臺(tái),設(shè)計(jì)了礦用手持式孔口顯示器。該儀器搭載了emWin操作系統(tǒng),并采用emWin圖形庫(kù)設(shè)計(jì)了數(shù)據(jù)采集控制程序。通過(guò)大量的室內(nèi)外試驗(yàn)驗(yàn)證,設(shè)計(jì)的礦用手持式孔口顯示器具有系統(tǒng)工作穩(wěn)定、性能可靠、攜帶方便等優(yōu)點(diǎn),能滿足煤礦井下鉆孔施工的要求。

        [1]肖林京,于鵬杰,于志豪,等.基于STM32和emWin圖形庫(kù)的液晶顯示系統(tǒng)設(shè)計(jì)[J].電視技術(shù),2015,39(1):39-42.

        [2]雷曉榮.回轉(zhuǎn)鉆進(jìn)隨鉆測(cè)斜儀的研制及應(yīng)用[J].煤田地質(zhì)與勘探,2015,43(3):118-121.[3]雷曉榮,程建遠(yuǎn).YZG05/30礦用鉆孔軌跡記錄儀及其應(yīng)用[J].煤田地質(zhì)與勘探,2015,43(4):120-122.

        [4]STMicroelectronics.STM32F103XX Datasheet[EB/OL]. [2016-04-05].http://www.st.com/web/catalog/mmc/FM141/SC1169/SS1031/LN1565/PF164491,2016.2.

        [5]深圳藍(lán)色飛舞科技有限公司.BF10藍(lán)牙模塊數(shù)據(jù)表[EB/OL]. [2016-04-05].http://www.lanwind.com/download.php,2016.2.

        [6]AnalogDevices.ADM2687E Datasheet[EB/OL]. [2016-04-05].http://www.analog.com/en/products/interface-isolation/isolation/isolated-rs-485/adm2687e.html#product-overview,2016.2.

        [7]鄭力,蔡啟仲,陸偉男,等.基于emWin圖形庫(kù)的四旋翼飛行器監(jiān)控系統(tǒng)設(shè)計(jì)[J].計(jì)算機(jī)測(cè)量與控制,2015,23(6):1986-1988.

        [8]張峰,張團(tuán)善,呂雙慶,等.emWin在LPC1788上的移植與應(yīng)用[J].電子設(shè)計(jì)工程,2015,23(6):156-159.

        Design of mine hand-held orifice display based on STM32

        LEI Xiaorong

        (Xi′anResearchInstituteofChinaCoalTechnology&EngineeringGroupCrop,Xi′an710077,China)

        In order to improve the convenience of the use of mine orifice display, a mine hand-held orifice display is designed by using STM32 micro controller and emWin graphics library. The hardware design of orifice display is firstly elaborated. In the software part, the whole software structure and the design of acquisition control program and transplant of emWin graphics library in STM32 platform are described in detail. The results show that mine orifice display is steady, reliable, user-friendly and practicable.

        orifice display;STM32 micro controller;emWin graphics library

        TN873

        ADOI: 10.16280/j.videoe.2016.10.009

        陜西省科技統(tǒng)籌創(chuàng)新工程計(jì)劃項(xiàng)目(2012KTCL03-23)

        2016-04-05

        文獻(xiàn)引用格式:雷曉榮. 基于STM32的礦用手持式孔口顯示器設(shè)計(jì)[J].電視技術(shù),2016,40(10):41-44.

        LEI X R. Design of mine hand-held orifice display based on STM32 [J]. Video engineering,2016,40(10):41-44.

        雷曉榮(1981— ),工程師,碩士,主要研究方向?yàn)槲锾絻x器。

        責(zé)任編輯:閆雯雯

        猜你喜歡
        設(shè)計(jì)
        二十四節(jié)氣在平面廣告設(shè)計(jì)中的應(yīng)用
        何為設(shè)計(jì)的守護(hù)之道?
        《豐收的喜悅展示設(shè)計(jì)》
        流行色(2020年1期)2020-04-28 11:16:38
        基于PWM的伺服控制系統(tǒng)設(shè)計(jì)
        電子制作(2019年19期)2019-11-23 08:41:36
        基于89C52的32只三色LED搖搖棒設(shè)計(jì)
        電子制作(2019年15期)2019-08-27 01:11:50
        基于ICL8038的波形發(fā)生器仿真設(shè)計(jì)
        電子制作(2019年7期)2019-04-25 13:18:16
        瞞天過(guò)?!律O(shè)計(jì)萌到家
        設(shè)計(jì)秀
        海峽姐妹(2017年7期)2017-07-31 19:08:17
        有種設(shè)計(jì)叫而專
        Coco薇(2017年5期)2017-06-05 08:53:16
        從平面設(shè)計(jì)到“設(shè)計(jì)健康”
        商周刊(2017年26期)2017-04-25 08:13:04
        国产爽爽视频在线| 无码人妻久久久一区二区三区| 人人妻人人澡人人爽欧美一区双| 性高朝久久久久久久| 无码一区二区三区在线在看| 久久精品国产亚洲av一| 人妻少妇被猛烈进入中文字幕| 啦啦啦www播放日本观看| aaa毛片视频免费观看| 韩国日本在线观看一区二区| 国产一级二级三级在线观看视频| 极品少妇一区二区三区四区| 国产亚洲精品自在久久蜜tv| 日韩精品成人一区二区在线观看| 一区二区国产av网站| 国产中文字幕乱人伦在线观看| 视频一区欧美| 亚洲黑寡妇黄色一级片| 亚洲黄色天堂网站在线观看禁18 | 国产精品原创av片国产日韩 | 天堂资源中文最新版在线一区| 免费在线视频一区| 成年人视频在线播放麻豆| 亚洲一区在线观看中文字幕| 东北老女人高潮疯狂过瘾对白| 在线观看精品国产福利片100| 免费av一区男人的天堂| 色一情一乱一伦麻豆| 7777精品久久久大香线蕉| 日本精品人妻在线观看| 久久黄色国产精品一区视频| 高潮迭起av乳颜射后入| 国产成人精品日本亚洲专区6| 97中文乱码字幕在线| 久久无码人妻丰满熟妇区毛片| 国产成人精品成人a在线观看| 国产成人精品视频网站| 亚洲中文字幕乱码第一页| 中文字幕在线精品视频入口一区| 亚洲精品美女久久久久久久| 99久久久69精品一区二区三区|