999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

Linux嵌入式設(shè)備與QT軟件開(kāi)發(fā)

2018-12-20 11:29:59秦貞滕張永狀鄧志豪重慶三峽學(xué)院電子與信息工程學(xué)院通信工程專業(yè)2015級(jí)
數(shù)碼世界 2018年12期
關(guān)鍵詞:嵌入式設(shè)備系統(tǒng)

秦貞滕 張永狀 鄧志豪 重慶三峽學(xué)院電子與信息工程學(xué)院通信工程專業(yè)2015級(jí)

引言:隨著社會(huì)的不斷發(fā)展,無(wú)線的傳輸速度和傳輸時(shí)延也越來(lái)越快,這將推動(dòng)著物聯(lián)網(wǎng)技術(shù)的快速發(fā)展,而嵌入式系統(tǒng)可以說(shuō)是一種比較好的與各類硬件軟件連接工作的平臺(tái),嵌入式系統(tǒng)可以自定義各種驅(qū)動(dòng)是否含有,讓操作系統(tǒng)能以最小的體積,最合適的功能,不浪費(fèi)運(yùn)行空間和設(shè)備性能來(lái)保證嵌入式設(shè)備正常工作。而QT是一種一次開(kāi)發(fā),多處運(yùn)行的一種開(kāi)發(fā)平臺(tái),還是一種面向?qū)ο蟮腃++應(yīng)用程序圖形界面設(shè)計(jì),其中的信號(hào)與槽機(jī)制能有效的開(kāi)發(fā)所設(shè)計(jì)的功能。作者就是為了給各位讀者搭建一個(gè)基本的開(kāi)發(fā)嵌入式硬軟件的基本概念和流程。

1 Linux系統(tǒng)概述

Linux其實(shí)僅僅是代表內(nèi)核,但大多數(shù)人都喜歡用這個(gè)單詞代表系統(tǒng),該內(nèi)核是開(kāi)源的,免費(fèi)的,可以自由傳播。Linux系統(tǒng)支持多用戶,多線程,多核CPU的實(shí)時(shí)操作系統(tǒng),Linux可以自由裁剪,自由選擇驅(qū)動(dòng)和想要的組件,以縮小系統(tǒng)大小,舍去無(wú)需的服務(wù)以減少運(yùn)行系統(tǒng)的資源開(kāi)支。

關(guān)于linux系統(tǒng)的實(shí)時(shí)性,就是在確定的范圍之內(nèi)響應(yīng)某個(gè)事件的特性,這對(duì)于一些嵌入式設(shè)備是基本的要求。對(duì)于嵌入式硬件,這種對(duì)于體積和造價(jià)要求比較苛刻的設(shè)備來(lái)說(shuō),里面的硬件資源是寸土寸金的,所以必須嚴(yán)格控制軟件占用,讓整個(gè)系統(tǒng)平穩(wěn)運(yùn)作。

Linux系統(tǒng)的移植還需要一個(gè)基本工具就是bootloader,用來(lái)引導(dǎo)操作系統(tǒng),主要作用是初始化和檢測(cè)硬件設(shè)備,建立內(nèi)存空間映射讓基本的硬件都協(xié)調(diào)工作,實(shí)現(xiàn)基本硬件功能,為了接下來(lái)的系統(tǒng)移植提供基本的硬件準(zhǔn)備。

2 QT開(kāi)發(fā)平臺(tái)概述

Qt是一款跨平臺(tái)C++圖形用戶應(yīng)用開(kāi)發(fā)平臺(tái),可以開(kāi)發(fā)GUI應(yīng)用,也可以開(kāi)發(fā)非GUI應(yīng)用,控制臺(tái),服務(wù)器等都可以,我們?yōu)榱吮O(jiān)控和控制嵌入式設(shè)備一般都是開(kāi)發(fā)圖形用戶界面來(lái)直觀的觀察情況。由于QT的跨平臺(tái)性,我們可以在任何一個(gè)平臺(tái)開(kāi)發(fā),到其他平臺(tái)上編譯,然后去運(yùn)行,省去了二次開(kāi)發(fā)的麻煩。QT提供了很多API,包括串口通信,TCP/IP網(wǎng)絡(luò),各種GUI組件和控件,XML支持。QT獨(dú)特的信號(hào)與槽機(jī)制讓各種可以與用戶交互的按鈕和控件可以關(guān)聯(lián)到SLOT槽函數(shù)里面,交互即執(zhí)行函數(shù),直觀便于理解。

對(duì)一些新手開(kāi)發(fā)者最有利的就是,QT官方提供了大量的開(kāi)發(fā)文檔,可以在QT creator 里面直接搜索得到解決辦法。

3 項(xiàng)目設(shè)計(jì)和開(kāi)發(fā)

任何項(xiàng)目或者設(shè)計(jì)在開(kāi)始之前都需要合理規(guī)劃和分析,然后再去一步一步的開(kāi)發(fā)和設(shè)計(jì),避免從做無(wú)用的工作。

3.1 需求分析

開(kāi)發(fā)人員在開(kāi)始一個(gè)項(xiàng)目之前,需要深入細(xì)致的用戶調(diào)研,開(kāi)發(fā)分析,根據(jù)客戶的要求和功能實(shí)現(xiàn),來(lái)初步設(shè)計(jì)項(xiàng)目的模板,評(píng)價(jià)項(xiàng)目的可行性,可靠性,把需求轉(zhuǎn)化為可開(kāi)發(fā)功能,最后對(duì)項(xiàng)目所需人員,財(cái)力物力進(jìn)行評(píng)估,才能開(kāi)始進(jìn)行開(kāi)發(fā)。

3.2 硬件搭建

3.2.1 硬件設(shè)備選擇

根據(jù)項(xiàng)目規(guī)劃和需求分析選擇最合理,最合適,最擅長(zhǎng)的硬件,一來(lái)可以縮短開(kāi)發(fā)周期,二可以節(jié)省開(kāi)發(fā)成本。

選擇各種硬件設(shè)備的時(shí)候還要考慮各種硬件之間的兼容性和沖突性,最好選擇兼容性最好的硬件,也便于接下來(lái)的維修維護(hù)。

3.2.2 系統(tǒng)裁剪和移植

Linux系統(tǒng)移植有著基本的步驟,我們這次設(shè)計(jì)舉例用Ubuntu系統(tǒng)。

大部分開(kāi)發(fā)平臺(tái)和目標(biāo)硬件設(shè)備是不同的芯片或者操作系統(tǒng),這時(shí)候就需要搭建交叉編譯環(huán)境,比如我們?cè)贏RM平臺(tái)開(kāi)發(fā)程序,在x64或者x86平臺(tái),就需要搭建arm平臺(tái)的編譯環(huán)境,可以安裝編譯器arm-linux-gcc用來(lái)編譯開(kāi)發(fā)主機(jī)所需的程序。移植的linux系統(tǒng)也是必須用這個(gè)編譯器來(lái)編譯。

u-boot移植,分析架構(gòu)和硬件兼容性,根據(jù)u-boot給的origen板子實(shí)例,找到與開(kāi)發(fā)主機(jī)相同的芯片編譯文件,拷貝板級(jí)文件到編譯目錄,修改Makefile編譯新加入的文件,拷貝板級(jí)頭文件,修改boards.cfg配置文件,添加BL1和BL2啟動(dòng)代碼(根據(jù)不同芯片查看開(kāi)發(fā)主機(jī)的芯片手冊(cè)),添加看門狗關(guān)閉代碼編,關(guān)閉中斷,添加電源管理相關(guān)代碼,添加串口初始化相關(guān)代碼,譯后把u-boot.bin文件燒寫到emmc中即可觀察到串口數(shù)據(jù)輸出。u-boot移植完成后需要設(shè)置網(wǎng)絡(luò)tftp服務(wù)或者其他通信方法,因?yàn)榇谕ㄐ潘俣嚷?/p>

內(nèi)核編譯,根據(jù)開(kāi)發(fā)主機(jī)選擇linux內(nèi)核源碼,根據(jù)開(kāi)發(fā)主機(jī)芯片型號(hào)選擇內(nèi)核編譯選項(xiàng)和添加配置文件,不需要的功能和一些服務(wù)可以去掉,用來(lái)節(jié)省空間,編譯后會(huì)生成一個(gè)uImage鏡像文件。

設(shè)備樹文件就是把系統(tǒng)中各種文件分類添加索引,以至內(nèi)核可以準(zhǔn)確找到想要找的文件,編譯設(shè)備數(shù)文件,為.dtb文件。在編譯內(nèi)核和設(shè)備樹的時(shí)候可以根據(jù)需求添加驅(qū)動(dòng)。

編譯完成內(nèi)核和設(shè)備樹后就可以通過(guò)u-boot的tftp下載到開(kāi)發(fā)主機(jī)中。編譯完成后開(kāi)發(fā)主機(jī)就可以執(zhí)行我們編寫的生成的.out等文件。

3.3 軟件開(kāi)發(fā)

3.3.1 開(kāi)發(fā)主機(jī)應(yīng)用程序

根據(jù)開(kāi)發(fā)主機(jī)的搭載芯片,和電路連接,查看芯片手冊(cè)和硬件工程師提供資料來(lái)開(kāi)發(fā)程序,實(shí)現(xiàn)對(duì)應(yīng)功能,不同寄存器的設(shè)置代表不同功能,查看手冊(cè)和討論編寫程序來(lái)調(diào)用芯片相連的硬件,實(shí)現(xiàn)目標(biāo)功能。

3.3.2 圖形化界面開(kāi)發(fā)

QT開(kāi)發(fā)我們可以選擇在Windows平臺(tái)開(kāi)發(fā),根據(jù)需求繪制圖形化窗口,設(shè)置基本需要顯示的數(shù)據(jù),圖像,窗口,可以通過(guò)無(wú)線協(xié)議,有線連接,通過(guò)服務(wù)器等獲取開(kāi)發(fā)主機(jī)的信息,或者控制開(kāi)發(fā)主機(jī)。

4 調(diào)試階段

所有工作做完并且沒(méi)有錯(cuò)誤可以運(yùn)行在主機(jī)上,就可以進(jìn)行調(diào)試測(cè)試階段,調(diào)試包括基本功能測(cè)試,穩(wěn)定性測(cè)試,干擾分析,連接強(qiáng)度,等一些根據(jù)項(xiàng)目具體情況要求的測(cè)試。

5 總結(jié)

科技的發(fā)展不會(huì)停止,5g通信技術(shù)已經(jīng)在實(shí)踐階段,我們不難想象以后的世界會(huì)是物物互聯(lián),萬(wàn)物相通的方向發(fā)展,學(xué)習(xí)基本的嵌入式設(shè)備開(kāi)發(fā)和軟件調(diào)試技巧是非常有必要的。學(xué)習(xí)基本嵌入式開(kāi)發(fā)知識(shí)對(duì)我們今后的學(xué)習(xí)和工作也有著很重要的作用,當(dāng)我們拿到任何一個(gè)項(xiàng)目或者硬件設(shè)備都會(huì)有基本的思路來(lái)調(diào)試。

猜你喜歡
嵌入式設(shè)備系統(tǒng)
諧響應(yīng)分析在設(shè)備減振中的應(yīng)用
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無(wú)人機(jī)系統(tǒng)
ZC系列無(wú)人機(jī)遙感系統(tǒng)
基于MPU6050簡(jiǎn)單控制設(shè)備
電子制作(2018年11期)2018-08-04 03:26:08
搭建基于Qt的嵌入式開(kāi)發(fā)平臺(tái)
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應(yīng)用
500kV輸變電設(shè)備運(yùn)行維護(hù)探討
原來(lái)他們都是可穿戴設(shè)備
主站蜘蛛池模板: 国产精品hd在线播放| 午夜久久影院| 99ri精品视频在线观看播放| 久久性视频| 日韩av在线直播| 国产精品亚洲精品爽爽| 搞黄网站免费观看| 美美女高清毛片视频免费观看| 亚洲成人动漫在线观看| 曰韩免费无码AV一区二区| 欧美成一级| 久久a毛片| 国产不卡在线看| 国产九九精品视频| 欧美午夜视频在线| 全部毛片免费看| 国产91麻豆视频| 精品国产成人三级在线观看| 99在线视频网站| 一本一道波多野结衣av黑人在线 | 久久不卡精品| 99色亚洲国产精品11p| 日本a∨在线观看| 国产黑人在线| 欧美日韩国产精品综合| 99精品这里只有精品高清视频| 欧美亚洲一区二区三区导航| 亚洲色图欧美在线| 九九热精品视频在线| 欧美国产在线看| 国产视频大全| 亚洲精品第一页不卡| 久久久久人妻一区精品色奶水 | 亚洲精品你懂的| 黄色网站不卡无码| 亚洲色欲色欲www网| 香蕉综合在线视频91| 国产h视频在线观看视频| 国产精品jizz在线观看软件| a级毛片毛片免费观看久潮| 国产欧美日韩专区发布| 久操线在视频在线观看| 99在线视频免费| 精品国产亚洲人成在线| 国产在线观看一区精品| 久久综合九色综合97婷婷| 乱色熟女综合一区二区| 福利在线一区| 草逼视频国产| 亚洲品质国产精品无码| 高清不卡毛片| 久久综合色视频| 香蕉久久永久视频| 亚洲第一视频免费在线| 婷婷丁香在线观看| 第一区免费在线观看| 91日本在线观看亚洲精品| av无码一区二区三区在线| 粉嫩国产白浆在线观看| 国产在线观看91精品亚瑟| 久久视精品| 国产丝袜啪啪| 国产精品网址在线观看你懂的| 国产在线啪| 欧美视频在线不卡| 精品午夜国产福利观看| 久久精品日日躁夜夜躁欧美| 日韩一区二区三免费高清| 精品一区二区久久久久网站| 欧美人与牲动交a欧美精品| 呦视频在线一区二区三区| 福利在线免费视频| 狠狠v日韩v欧美v| 国模视频一区二区| 久久精品无码一区二区国产区 | 国产91小视频在线观看| 91成人在线观看| 亚洲无码免费黄色网址| 综合亚洲色图| 国产精品视频3p| 久久一色本道亚洲| 亚洲精品午夜无码电影网|