找回密码
 注册
关于网站域名变更的通知
查看: 891|回复: 2
打印 上一主题 下一主题

「含关键代码」基于AM3352/AM3354/AM3359的Linux开发案例分享

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2021-8-24 13:45 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
目录
1. tl_led_flash案例
1.1 案例功能
1.2 操作说明
1.3 关键代码
2. tl_key_test案例
2.1 案例功能
2.2 操作说明
2.3 关键代码
3. tl_uart_rw案例
3.1 案例功能
3.2 操作说明
3.3 关键代码
( S- u! ]& t. E0 ~1 J# }- P  A, M
遇到不少人新手小白问,前辈能不能分享几个Linux应用开发案例?之前一直都是在用win开发,现在想要尝试用Linux做开发等等一系列的问题。

1 y5 W1 a& o0 L9 u/ u  P7 I
应广大用户朋友需求号召,今天给大家分享基于创龙科技的TL335x-EVM(
& C7 C9 t$ N; u7 j; ]& h: g% GAM3352/AM3354/AM3358/AM3359)ARM Cortex-A8架构的一系列开发板,详细讲解Linux的应用开发案例,分别涵盖了tl_led_flash案例、tl_key_test案例、tl_uart_rw案例、tl_can_echo案例、tl_devmem_rw案例、tcp_udp_demos案例、Python开发案例等等。
如需重新编译Linux常用开发案例,请将对应案例src目录复制到Ubuntu工作目录下,进入src目录执行如下命令加载Linux Processor SDK环境变量,并执行make命令进行案例编译。编译完成后,将在当前目录下生成可执行文件。
Host# source /home/tronlong/ti-processor-sdk-linux-rt-am335x-evm-04.03.00.05/linux-devkit/environment-setup
Host# make
如需重新编译Linux常用开发案例,请将对应案例src目录复制到Ubuntu工作目录下,进入src目录执行如下命令加载Linux Processor SDK环境变量,并执行make命令进行案例编译。编译完成后,将在当前目录下生成可执行文件。
Host# source /home/tronlong/ti-processor-sdk-linux-rt-am335x-evm-04.03.00.05/linux-devkit/environment-setup
Host# make

+ F4 {" _6 F6 u
图 1
Linux常用开发案例
1、 tl_led_flash案例
1.1案例功能
本案例通过向评估底板用户指示灯LED设备节点反复交替写入1、0数值,实现LED闪烁效果。LED点亮与熄灭时间均为0.5s。
程序流程如下图所示:
' R" v2 D. ^2 M# }- x
图 2
LED设备节点为“/sys/class/leds/user-ledX/”目录下的brightness。

2 D5 O/ [. }; Y1 N
图 3
1.2操作说明
将本案例bin目录下的可执行程序tl_led_flash复制到评估板文件系统,并在可执行程序所在目录执行如下命令运行程序,即可看到评估底板LED以0.5s的时间间隔进行闪烁。同时,串口终端打印系统全部LED设备信息和程序当前控制的LED设备信息。
Target# ./tl_led_flash -help
Target# ./tl_led_flash -n 3

+ D$ T, O6 y& y' |/ |. I2 Y
图 4
1.3关键代码
  • 预定义LED数组。程序由此数组获取LED信息,数组信息必须为系统已有LED信息,否则程序运行报错。
    % {3 H2 C0 D! ]7 w, L
$ i+ f2 l  C) a# p& _2 `' e
图 5
2.LED亮灭操作和时间间隔。
, [2 ~% y% @. h$ f
图 6
2、tl_key_test案例
2.1案例功能
本案例通过监听用户按键KEY5设备节点状态,检测按键事件。
程序流程如下图所示:
. F9 P8 ?% L3 d8 L3 n# n6 S5 u
图 7
用户按键设备节点为“/dev/input/event1”。获取按键事件后进行按键键值匹配,再进行事件处理。
2.2操作说明
将本案例bin目录下的可执行程序tl_key_test复制到评估板文件系统,在可执行程序所在目录执行如下命令运行程序,串口终端将打印提示信息。再按下评估板用户按键KEY5,程序将检测到按键事件,并打印按键状态信息。
Target# ./tl_key_test -help
Target# ./tl_key_test -d /dev/input/event1

9 n% Y7 Y4 t  T, T3 c+ @  c& \
图 8
2.3关键代码
1.定义按键。
1 D( [- p6 M; e# z% E+ {2 w
图 9
2.监听按键事件。

: t. f0 c/ A8 j8 [# S
图 10
3.循环监听。
* d. O* R9 J6 P; Y5 w
图 11
3tl_uart_rw案例
3.1案例功能
本案例主要实现串口读写功能。
程序流程如下图所示:

6 d+ h$ u- `# n9 Q% g1 P- D
图 12
RS232、RS485串口设备节点分别为“/dev/ttyS0”、“/dev/ttyS1”。串口初始化时将设置波特率、模式、数据位、停止位等参数。通过设备文件描述符对串口进行读写操作。
3.2操作说明
使用RS232交叉串口母线、USB转RS232公头串口线,将评估板的RS232串口连接到PC机的USB接口,如下图所示。
4 E0 U; ?4 Q4 g5 E; O& [( h
图 13
将本案例bin目录下的可执行程序tl_uart_rw复制到评估板文件系统,进入可执行程序所在目录,执行如下命令查看程序参数信息。
Target# ./tl_uart_rw -h
" n% k. l7 a3 a" a  R* A2 e( h- c
图 14
执行如下命令进行RS232串口数据读操作。
Target# ./tl_uart_rw -d /dev/ttyS0 -r -s 8
打开产品资料“4-产品资料\Tools\Windows\”目录下的串口调试工具SerialDebug.exe,打开PC机设备管理器,确认RS232串口COM端口号,并按照下图步骤进行操作或设置,从串口调试工具往RS232串口发送数据。调试串口终端将会打印从RS232串口读取到的数据。

& ]2 t) O6 f; l& y/ r4 `4 R! Q4 `/ c
图 15
% I. s% S6 ?7 [0 k" u
图 16
执行如下命令进行RS232串口数据写操作,数据已在程序中定义。串口调试工具将会打印从RS232串口接收的数据。
Target# ./tl_uart_rw -d /dev/ttyS0 -w -s 8
. O2 F- ?$ p3 W
图 17

# l4 T" q  @8 s; F; _7 k$ u& q  d
图 18
使RS232转RS485模块、USB转RS232公头串口线,将评估板的RS485串口连接到PC机的USB接口,如下图所示。

9 V3 A/ }  s, {- O
RS232转RS485模块与评估板上RS485串口连接方法如下:
  • RS232转RS485模块485+端子,连接评估板RS485串口A端子。
  • RS232转RS485模块485-端子,连接评估板RS485串口B端子。
  • RS232转RS485模块GND端子,连接评估板RS485串口GND端子。
    4 Y& R& r: H$ w# [0 }3 t" h
执行如下命令进行RS458串口数据读写操作。RS485串口测试步骤与现象与RS232类似,命令中的设备节点由ttyS0改成ttyS1即可。
Target# ./tl_uart_rw -d /dev/ttyS1 -r -s 8 //RS485串口数据读操作
Target# ./tl_uart_rw -d /dev/ttyS1 -w -s 8 //RS485串口数据写操作
3.3关键代码
  • 串口初始化函数。
    5 C& k- F1 A# }$ U

3 P2 ^& e' a, r& t6 a5 n
图 20
2.串口读写函数。

) Q1 e8 z0 R) H2 c. ]) Y
图 21
3 ^3 }+ v& K! }. H% Z( Z* i& |. ^, }
图 22
3.回环测试。

  ?: y$ R  b4 I: E1 J+ y6 m: q
图 23
4.相关逻辑。

" ]7 Z/ P$ q" ^% }) [' {
图 24
由于开发案例篇幅过长,给大家分为多个版本,今天先讲tl_led_flash案例、tl_key_test案例、tl_uart_rw案例。感兴趣的朋友,欢迎点赞评论区留言和我探讨!

- i; Z0 o( r) g) F' B5 T2 a
! a1 A3 d5 d4 K6 X, E

该用户从未签到

3#
 楼主| 发表于 2021-9-1 14:28 | 只看该作者
mellifluous 发表于 2021-8-24 17:21) M/ }6 {, f6 J7 k7 g$ W% \. Q
AM3352/AM3354/AM3359的Linux开发
( p7 C* L, W' c0 B  R
感谢支持,欢迎咨询$ D& J! D1 u+ g0 A9 N1 j( Z, z

该用户从未签到

2#
发表于 2021-8-24 17:21 | 只看该作者
AM3352/AM3354/AM3359的Linux开发1 {0 @9 q( x3 Y) C8 S

点评

感谢支持,欢迎咨询  详情 回复 发表于 2021-9-1 14:28
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-24 08:00 , Processed in 0.187500 second(s), 28 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表