哈工大计算机学院嵌入式系统设计与实现实验 基于Linux内核的LED控制实验

实验任务:修改并编译led等的代码,将其拷贝到sd卡上,启动板子后,运行对应代码的可执行文件,最后板子上的led灯会被循环点亮

本篇博客内容:

1.实验步骤

2.注意事项

0.实验前准备

打开Ubuntu,将Demo文件夹拷贝到AM437x目录下,备用。待会的led和串口实验都要用到demo里面的代码

demo文件夹在disk1压缩包里面

1.实验步骤

第一步:使用脚本测试板载LED是否正常

把 "Demo\app\led"目录下的led_loop.sh脚本文件拷贝到sd卡的rootfs分区

使用sd卡启动板子(00110),进入到脚本所在的目录,运行脚本,发现LED等被循环点亮(指导书上网络配置那部分不做,因为我们不通过网络发送文件,而是直接拷贝过去)

第二步:修改代码

找到led应用程序代码,代码在如下目录中:

我们修改flashing_led.c文件里面的代码,只需修改mian函数里面的代码,如此修改:

【1】指定led灯的数量count=4 ;并且指定4个led灯的变量名(系统根据4个led灯的变量名去识别对应的led灯硬件)

【2】注释掉不必要的代码

第三步:编译代码

按照指导书指定的方法,用指定的交叉编译器去编译代码

第4步:拷贝代码,运行代码

把代码拷贝到sd卡的rootfs分区下

使用sd卡启动板子(00110),进入根目录(也就是rootfs分区)

运行我们编译的可执行文件(因为我们修改过代码,所以原本指导书上面 -n 和 3 这两个参数都不重要了,在运行可执行文件时,不需要输入这两个参数)

出现现象:板子的led灯循环点亮

2.注意事项

【1】代码无法编译

注意看报错信息,如果是无法访问某个文件导致的编译失败,就去检查这个文件的权限,将其变为普通用户可读可写可执行rwx

如果还是没有办法,则重新配置交叉编译环境(实验报告第3章)

【2】编译出来的可执行文件无法运行

注意检查该文件的权限,有时候从电脑往sd卡里面拷贝,会导致文件权限改变,比如失去执行权限x ,我们需要使用chmod 777命令修改其权限为可读可写可执行 rwx

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值