环球电气之家-午夜精彩视频-中国专业电气电子产品行业服务网站!

產(chǎn)品分類

當前位置: 首頁 > 工業(yè)電子產(chǎn)品 > 其他電子產(chǎn)品 > 開發(fā)板,套件,編程器 > 開發(fā)板

類型分類:
科普知識
數(shù)據(jù)分類:
開發(fā)板

Atheros SDK研究與使用

發(fā)布日期:2022-10-14 點擊率:54

最近空閑時間很多,索性研究起了Atheros SDK。正如很多讀者所知道的, 筆者本人并非軟件出身,所以很基礎(chǔ)的問題在我看來都很高深,Atheros的SDK也同樣如此,看了1,2天代碼,我總算研究清楚怎樣使用,后續(xù)爭取將我的研究與使用成果在這里與讀者分享。第一階段的研究目的是如何將自己需要的軟件一同編譯,最終可以在目標板上運行,本文也正是圍繞著這樣的主題展開。

Atheros SDK初體驗

這次使用的Atheros SDK版本是LSDK-9.2.0,使用的板子是 筆者自己設(shè)計的基于AR9344的大功率無線AP。按照官方文檔中的說明,將源代碼解壓至工作目錄,如下圖。

SourceCode-Directory

然后進入build目錄運行如下命令

make BOARD_TYPE=db12x BUILD_TYPE=jffs2

因為是第一次使用,需要編譯工具鏈,所以耗費的時間很長,好在編譯過程中沒有出現(xiàn)任何問題,順利地完成了全部的編譯過程,并得到了最終的二進制文件,如下圖。

Images-Built

將得到的二進制文件燒寫至Flash,板子可以正常啟動,說明以上的操作都是正確的。

變更Flash容量

由于我的設(shè)計是16MB Flash,與db12x默認的8MB Flash不符,因此需要更改源代碼,將Flash配置為16MB。經(jīng)過了一段時間的摸索,發(fā)現(xiàn)Flash容量定義在了以下文件中

boot/u-boot/include/configs/db12x.h

將其中的的第12行變更為

#define FLASH_SIZE16

再次編譯,燒寫得到的二進制文件,發(fā)現(xiàn)在u-boot中已經(jīng)正確地識別為16MB Flash。

分析Makefile

接下來研究如何將自己編寫的代碼編譯成為可執(zhí)行文件,并在目標板中運行。在通讀了build目錄中的Makefile文件后,發(fā)現(xiàn)其會包含build/scripts目錄下相應(yīng)的Makefile,這樣只需要變更build/scripts/db12x下的Makefile即可更改編譯進來的軟件。按照Atheros官方的注釋,也是如此

# Adding make instructions:

# Usually board/scripts/<target> is the correct place to do this.

# IMPORTANT: all "make targets" which add to $(INSTALL_ROOT)

再來分析build/scripts/db12x/Makefile.db12x文件,發(fā)現(xiàn)其最開始的一段輸出了較多的環(huán)境變量,例如

export HAL=$(TOPDIR)/drivers/wlan/hal

export ENETDIR=$(TOPDIR)/linux/drivers/ethernet

分析這樣做的好處是方便后續(xù)軟件版本的變更及增加代碼的可讀性,我在這里面加了一行

export TOM_DIR=$(TOPDIR)/apps/tom

這樣,我就可以將自己的代碼放在tom目錄下。

build/scripts/db12x/Makefile.db12x中定義了多個編譯模塊(暫時這樣稱呼,因為我還不知道其專有名詞),例如iptables_build,samba_build等,這些編譯模塊中的大部分又統(tǒng)一放置于common_mainline中,然后根據(jù)/build/scripts/db12x/config.db12x中相應(yīng)的配置決定啟用哪些編譯模塊,例如本例中config.db12x設(shè)定BUILD_ATHR_HOSTAP為1,則根據(jù)條件判斷語句編譯如下模塊:

common_mainline: check_tftp rootfs_prep toolchain_build
kernel_build kernel_info enet_build busybox_build athr-hostapd athr-wpa_supplicant
sar cgi lzma_uimage uboot_mainline samba_build
ntfs3g_build $(stage2_build)

到這里,相信讀者也一定知道怎樣將自己的代碼編譯進去了,將自己的代碼仿照apps/tom目錄下,在build/scripts/db12x/Makefile.db12x定義一個唯一的模塊如tom_build,并將tom_build添加到common_mainline中即可。

Hello World

按照以上思路,將hello.c放在apps/tom目錄下,hello.c的代碼內(nèi)容如下

#include <stdio.h>
int main() {
printf("Hello Worldn");
return 0;
}

定義tom_build如下

tom_build:
@echo making Toms Hello World
sleep 60
cd $(TOM_DIR) &&
$(TOOLPREFIX)gcc hello.c -o hello &&
cp hello $(INSTALL_ROOT)/sbin/hello

再次編譯,可以看到正在編譯hello.c的過程( 筆者故意設(shè)置了打印信息及暫停60秒),如下

Making 編譯完成后,首先進入apps/tom目錄,發(fā)現(xiàn)已經(jīng)得到hello可執(zhí)行文件,使用file命令查看這個可執(zhí)行文件,結(jié)果如下

File-Hello 看來交叉編譯工具已經(jīng)正確指定且得到了可在目標板上執(zhí)行的文件。再次將得到的二進制文件燒寫至Flash,啟動,運行hello,得到了激動人心的“Hello World”。

hello-world

下一篇: PLC、DCS、FCS三大控

上一篇: 為Freescale i.MX6處

推薦產(chǎn)品

更多
主站蜘蛛池模板: 工业PH计|工业ph酸度计|在线PH计价格-合肥卓尔仪器仪表有限公司 济南画室培训-美术高考培训-山东艺霖艺术培训画室 | 首页 - 张店继勇软件开发工作室 兰州UPS电源,兰州山特UPS-兰州万胜商贸 | 京港视通报道-质量走进大江南北-京港视通传媒[北京]有限公司 | 隔爆型防爆端子分线箱_防爆空气开关箱|依客思| 非甲烷总烃分析仪|环控百科 | 医用酒精_84消毒液_碘伏消毒液等医用消毒液-漓峰消毒官网 | 高铝矾土熟料_细粉_骨料_消失模_铸造用铝矾土_铝酸钙粉—嵩峰厂家 | 凝胶成像系统(wb成像系统)百科-上海嘉鹏 | 智能案卷柜_卷宗柜_钥匙柜_文件流转柜_装备柜_浙江福源智能科技有限公司 | 家庭教育吧-在线家庭教育平台,专注青少年家庭教育 | 粘弹体防腐胶带,聚丙烯防腐胶带-全民塑胶 | 成都竞价托管_抖音代运营_网站建设_成都SEM外包-成都智网创联网络科技有限公司 | 北京京云律师事务所 | 电动卫生级调节阀,电动防爆球阀,电动软密封蝶阀,气动高压球阀,气动对夹蝶阀,气动V型调节球阀-上海川沪阀门有限公司 | 卸料器-卸灰阀-卸料阀-瑞安市天蓝环保设备有限公司 | 铣刨料沥青破碎机-沥青再生料设备-RAP热再生混合料破碎筛分设备 -江苏锡宝重工 | 尼龙PA610树脂,尼龙PA612树脂,尼龙PA1010树脂,透明尼龙-谷骐科技【官网】 | 企典软件一站式企业管理平台,可私有、本地化部署!在线CRM客户关系管理系统|移动办公OA管理系统|HR人事管理系统|人力 | 2025黄道吉日查询、吉时查询、老黄历查询平台- 黄道吉日查询网 | 长沙印刷厂-包装印刷-画册印刷厂家-湖南省日大彩色印务有限公司 青州搬家公司电话_青州搬家公司哪家好「鸿喜」青州搬家 | 北京森语科技有限公司-模型制作专家-展览展示-沙盘模型设计制作-多媒体模型软硬件开发-三维地理信息交互沙盘 | 婚博会2024时间表_婚博会门票领取_婚博会地址-婚博会官网 | 美国PARKER齿轮泵,美国PARKER柱塞泵,美国PARKER叶片泵,美国PARKER电磁阀,美国PARKER比例阀-上海维特锐实业发展有限公司二部 | 电动手术床,医用护理床,led手术无影灯-曲阜明辉医疗设备有限公司 | 牛奶检测仪-乳成分分析仪-北京海谊 | 电磁铁_推拉电磁铁_机械手电磁吸盘电磁铁厂家-广州思德隆电子公司 | 螺纹三通快插接头-弯通快插接头-宁波舜驰气动科技有限公司 | 小港信息港-鹤壁信息港 鹤壁老百姓便民生活信息网站 | 环压强度试验机-拉链拉力试验机-上海倾技仪器仪表科技有限公司 | 通风气楼_通风天窗_屋顶风机-山东美创通风设备有限公司 | 北京森语科技有限公司-模型制作专家-展览展示-沙盘模型设计制作-多媒体模型软硬件开发-三维地理信息交互沙盘 | 爱佩恒温恒湿测试箱|高低温实验箱|高低温冲击试验箱|冷热冲击试验箱-您身边的模拟环境试验设备技术专家-合作热线:400-6727-800-广东爱佩试验设备有限公司 | 科箭WMS仓库管理软件-TMS物流管理系统-科箭SaaS云服务 | 环氧树脂地坪_防静电地坪漆_环氧地坪漆涂料厂家-地壹涂料地坪漆 环球电气之家-中国专业电气电子产品行业服务网站! | 【铜排折弯机,钢丝折弯成型机,汽车发泡钢丝折弯机,线材折弯机厂家,线材成型机,铁线折弯机】贝朗折弯机厂家_东莞市贝朗自动化设备有限公司 | 消防泵-XBD单级卧式/立式消防泵-上海塑泉泵阀(集团)有限公司 | 彩超机-黑白B超机-便携兽用B超机-多普勒彩超机价格「大为彩超」厂家 | 橡胶接头|可曲挠橡胶接头|橡胶软接头安装使用教程-上海松夏官方网站 | 广州昊至泉水上乐园设备有限公司 | 组织研磨机-高通量组织研磨仪-实验室多样品组织研磨机-东方天净 传递窗_超净|洁净工作台_高效过滤器-传递窗厂家广州梓净公司 | 气体检测仪-氢气检测仪-可燃气体传感器-恶臭电子鼻-深国安电子 |