聯(lián)系我們
Contact Us公司總機:020-8998-6280
技術(shù)熱線:020-3893-9734
技術(shù)郵箱:support@tronlong.com
銷售郵箱:sales@tronlong.com
【案例分享】Linux應(yīng)用開發(fā)中常用案例講解(一)
2021/08/26
應(yīng)用戶朋友需求號召,今天給大家分享基于創(chuàng)龍科技的TL335x-EVM(AM3352/AM3354/AM3358/AM3359)ARM Cortex-A8架構(gòu)的一系列開發(fā)板,詳細講解Linux的應(yīng)用開發(fā)案例,分別涵蓋了tl_led_flash案例、tl_key_test案例、tl_uart_rw案例、tl_can_echo案例、tl_devmem_rw案例、tcp_udp_demos案例、Python開發(fā)案例等等。
如需重新編譯Linux常用開發(fā)案例,請將對應(yīng)案例src目錄復(fù)制到Ubuntu工作目錄下,進入src目錄執(zhí)行如下命令加載Linux Processor SDK環(huán)境變量,并執(zhí)行make命令進行案例編譯。編譯完成后,將在當前目錄下生成可執(zhí)行文件。
Host# source /home/tronlong/ti-processor-sdk-linux-rt-am335x-evm-04.03.00.05/linux-devkit/environment-setup
Host# make
如需重新編譯Linux常用開發(fā)案例,請將對應(yīng)案例src目錄復(fù)制到Ubuntu工作目錄下,進入src目錄執(zhí)行如下命令加載Linux Processor SDK環(huán)境變量,并執(zhí)行make命令進行案例編譯。編譯完成后,將在當前目錄下生成可執(zhí)行文件。
Host# source /home/tronlong/ti-processor-sdk-linux-rt-am335x-evm-04.03.00.05/linux-devkit/environment-setup
Host# make
圖 1
Linux常用開發(fā)案例
1、 tl_led_flash案例
1.1案例功能
本案例通過向評估底板用戶指示燈LED設(shè)備節(jié)點反復(fù)交替寫入1、0數(shù)值,實現(xiàn)LED閃爍效果。LED點亮與熄滅時間均為0.5s。
程序流程如下圖所示:
圖 2
LED設(shè)備節(jié)點為“/sys/class/leds/user-ledX/”目錄下的brightness。
圖 3
1.2操作說明
將本案例bin目錄下的可執(zhí)行程序tl_led_flash復(fù)制到評估板文件系統(tǒng),并在可執(zhí)行程序所在目錄執(zhí)行如下命令運行程序,即可看到評估底板LED以0.5s的時間間隔進行閃爍。同時,串口終端打印系統(tǒng)全部LED設(shè)備信息和程序當前控制的LED設(shè)備信息。
Target# ./tl_led_flash -help
Target# ./tl_led_flash -n 3
圖 4
1.3關(guān)鍵代碼
- 預(yù)定義LED數(shù)組。程序由此數(shù)組獲取LED信息,數(shù)組信息必須為系統(tǒng)已有LED信息,否則程序運行報錯。
圖 5
2.LED亮滅操作和時間間隔。
圖 6
2、tl_key_test案例
2.1案例功能
本案例通過監(jiān)聽用戶按鍵KEY5設(shè)備節(jié)點狀態(tài),檢測按鍵事件。
程序流程如下圖所示:
圖 7
用戶按鍵設(shè)備節(jié)點為“/dev/input/event1”。獲取按鍵事件后進行按鍵鍵值匹配,再進行事件處理。
2.2操作說明
將本案例bin目錄下的可執(zhí)行程序tl_key_test復(fù)制到評估板文件系統(tǒng),在可執(zhí)行程序所在目錄執(zhí)行如下命令運行程序,串口終端將打印提示信息。再按下評估板用戶按鍵KEY5,程序?qū)z測到按鍵事件,并打印按鍵狀態(tài)信息。
Target# ./tl_key_test -help
Target# ./tl_key_test -d /dev/input/event1
圖 8
2.3關(guān)鍵代碼
1.定義按鍵。
圖 9
2.監(jiān)聽按鍵事件。
圖 10
3.循環(huán)監(jiān)聽。
圖 11
3tl_uart_rw案例
3.1案例功能
本案例主要實現(xiàn)串口讀寫功能。
程序流程如下圖所示:
圖 12
RS232、RS485串口設(shè)備節(jié)點分別為“/dev/ttyS0”、“/dev/ttyS1”。串口初始化時將設(shè)置波特率、模式、數(shù)據(jù)位、停止位等參數(shù)。通過設(shè)備文件描述符對串口進行讀寫操作。
3.2操作說明
使用RS232交叉串口母線、USB轉(zhuǎn)RS232公頭串口線,將評估板的RS232串口連接到PC機的USB接口,如下圖所示。
圖 13
將本案例bin目錄下的可執(zhí)行程序tl_uart_rw復(fù)制到評估板文件系統(tǒng),進入可執(zhí)行程序所在目錄,執(zhí)行如下命令查看程序參數(shù)信息。
Target# ./tl_uart_rw -h
圖 14
執(zhí)行如下命令進行RS232串口數(shù)據(jù)讀操作。
Target# ./tl_uart_rw -d /dev/ttyS0 -r -s 8
打開產(chǎn)品資料“4-產(chǎn)品資料\Tools\Windows\”目錄下的串口調(diào)試工具SerialDebug.exe,打開PC機設(shè)備管理器,確認RS232串口COM端口號,并按照下圖步驟進行操作或設(shè)置,從串口調(diào)試工具往RS232串口發(fā)送數(shù)據(jù)。調(diào)試串口終端將會打印從RS232串口讀取到的數(shù)據(jù)。
圖 15
圖 16
執(zhí)行如下命令進行RS232串口數(shù)據(jù)寫操作,數(shù)據(jù)已在程序中定義。串口調(diào)試工具將會打印從RS232串口接收的數(shù)據(jù)。
Target# ./tl_uart_rw -d /dev/ttyS0 -w -s 8
圖 17
圖 18
使RS232轉(zhuǎn)RS485模塊、USB轉(zhuǎn)RS232公頭串口線,將評估板的RS485串口連接到PC機的USB接口,如下圖所示。
圖19
RS232轉(zhuǎn)RS485模塊與評估板上RS485串口連接方法如下:
- RS232轉(zhuǎn)RS485模塊485+端子,連接評估板RS485串口A端子。
- RS232轉(zhuǎn)RS485模塊485-端子,連接評估板RS485串口B端子。
- RS232轉(zhuǎn)RS485模塊GND端子,連接評估板RS485串口GND端子。
執(zhí)行如下命令進行RS458串口數(shù)據(jù)讀寫操作。RS485串口測試步驟與現(xiàn)象與RS232類似,命令中的設(shè)備節(jié)點由ttyS0改成ttyS1即可。
Target# ./tl_uart_rw -d /dev/ttyS1 -r -s 8 //RS485串口數(shù)據(jù)讀操作
Target# ./tl_uart_rw -d /dev/ttyS1 -w -s 8 //RS485串口數(shù)據(jù)寫操作
3.3關(guān)鍵代碼
- 串口初始化函數(shù)。
圖 20
2.串口讀寫函數(shù)。
圖 21
圖 22
3.回環(huán)測試。
圖 23
4.相關(guān)邏輯。
圖 24
由于開發(fā)案例篇幅過長,給大家分為多個版本,今天先講tl_led_flash案例、tl_key_test案例、tl_uart_rw案例。感興趣的朋友,歡迎點贊評論區(qū)留言和我探討!

服務(wù)熱線




















