熟悉Linux 开发环境 1、 实验步骤:
cd /arm2410s/exp/basic/01_hello 进入目录 make clean 清除之前编译生成的文件 make编译
telnet 192.168.0.115 远程登录到板子
mount –t nfs 192.168.0.121:/arm2410s /mnt/nfs 挂载 cd .. 返回上一级
cd nfs/exp/basic/01_hello 进入目录 ./01_hello 运行 2、 实验感想:
此次实验让我熟悉了Linux开发环境,学会基于S3C2410的Linux开发环境的配置和使用,了解嵌入式开发的基本过程。此实验只需要理解各种命令的作用,运用ls来显示当前目录下的所有文件和目录,并且使用TAB键在访问名字很长的文件和目录时非常有效。本次实验我学习了在Linux下的编程和编译过程,以及ARM开发板的使用和开发环境的设置。能够让下载已经编译好的文件到目标开发板上运行。 二、 多线程应用程序设计 1、实验步骤:
cd /arm2410s/exp/basic/02_pthread 进入目录 make clean 清除之前编译生成的文件
make编译
telnet 192.168.0.115 远程登录到板子
mount –t nfs 192.168.0.121:/arm2410s /mnt/nfs 挂载 cd .. 返回上一级
cd nfs/exp/basic/02_pthread 进入目录 ./02_pthread 运行 3、 实验感想:
通过此次的实验,对于Linux操作系统有了进一步的认识。通过实验,感到理论课上的不少知识所学甚浅,在实际运用中会遇到一些意想不到的问题。但是,通过进一步学习与交流,我较好的完成了这次试验。由于我的水平有限和实验的时间较为紧张,有些细节还是了解的十分不是十分详细,对于较为复杂的编程以及Linux下的很多技巧任然知之甚少,希望能多一些这样的实践性的教学环节,让我们更好的了解书本中知识的应用。
三、 串行端口程序设计 1、实验步骤: minicom 拨号连线 cd /dev 进入目录
ln –sf /dev/tts/0 /dev/ttS0 链接 cd /mnt/yaffs 进入目录
mount -t nfs -o nolock 192.168.0.121:/arm2410s /mnt/nfs 挂
载
cd /mnt/nfs/exp/basic/03_tty/ 进入目录 ./term 运行
2、实验感想:此次实验刚开始时切换到minicom终端窗口不成功,后来在学姐的帮助下才完成了切换。本次实验,难点在于对串口的设置以及发送和接收子程序的设计,我对串行口在嵌入式系统中的应用只是有了初步的了解,在源程序的阅读理解中还有一定的困难。此实验我学会了将多线程编程应用到串口的接收和发送程序设计中。此次试验让我加深了对于串口的优势、劣势有了进一步认识。 串口通信虽然在速度上与并口有差距,但架构简单,传输便捷,其简单易学是它得到广泛的应用。最后,此次试验能让我了解这一个十分实用的技术我感到非常的高兴!
四、 A/D 接口实验 1、实验步骤:
telnet 192.168.0.115 远程登录到板子
mount –t nfs 192.168.0.121:/arm2410s /mnt/nfs 挂载 cd .. 返回上一级
cd /nfs/demos/ad/ 进入目录 insmod s3c2410-adc.o 载入模块 ./ad 运行 4、 实验感想:
此次实验我开始时不够细心,打字时将一些空格漏掉导致不能运行,当检查过很多遍还没用发现错误时请教了学长才发现了自己的错误。这次实验告诉我做事要细致认真。此实验我学会了利用外部模拟信号编程实现ARM循环采集全部前4路通道,并且在超级终端上显示
五、 D/A 接口实验 1、实验步骤:
telent 192.168.0.115 远程登录到板子
mount –t nfs 192.168.0.121:/arm2410s /mnt/nfs 挂载 cd /mnt/nfs/exp/basic/05_da/ 进入目录 cd drivers/ 进入目录 insmod exio.o 载入模块
lsmod 显示已载入系统的模块 cd /mnt/nfs/exp/basic/05_da/ 进入目录 ./da_main 1 2.5 运行
2、实验感想: 此实验用insmod s3c2410-exio.o 命令插入D/A 驱动,与A/D相比,使用了 lsmod命令查看是否已经插入,开始时由于没有指定参数造成运行不正确,后来自己发现并进行了设置,并且最终使用万用表测量到了电压。此次实验让我对数模转换电路的原理有了深入的了解。 六、 直流电机实验 1、实验步骤:
cd /arm2410s/exp/basic/10_dcmotor 进入目录 make clean 清除之前编译生成的文件 make 编译
telnet 192.168.0.115 远程登录到板子
mount –t nfs 192.168.0.121:/arm2410s /mnt/nfs 挂载 cd .. 返回上一级
cd nfs/ exp/basic/10_dcmotor/drivers/ 进入目录 cd .. 返回上一级 ./dcm_main 运行
2、实验感想:此实验和实验二的步骤相似,都是通过ls一步一步的找到目录。此实验我学会了编译直流电机的驱动模块和应用程序,并且运行程序,实现了直流电机的调速转动。通过本次试验,增强了我对嵌入式的实验的兴趣,看到自己通过认真的做实验,获得的成果感到了十分欣喜,
七、步进电机实验 1、实验步骤:
cd /arm2410s/exp/basic/11_stepmotor 进入目录 make clean 清除之前编译生成的文件 make 编译
telnet 192.168.0.121:/arm2410s /mnt/nfs 远程登录到主机 cd .. 返回上一级
cd nfs/ exp/basic/11_stepmotor/drivers/ 进入目录 insmod exio.o 载入模块 cd .. 返回上一级 ./stepmotor 运行 2、实验感想:
步进电机和直流电机相似,只是步进电机多了载入模块这一操作。此实验编程实现了ARM 的四路I/O 通道实现环形脉冲分配用于控制步进电机的转动。除此之外,我了解到了步进电机的工作原理,同时通过实验验证了自己通过学习的一些想法,补充了自己之前的不足。
总结:
第一次接触linux时,不太明白自己的每一步操作的原因和目的,一旦出错,也不知道从哪儿排错。做完第一次实验后好好综合总结了一下,才明白了每一步操作的意义和嵌入式linux的基本原理,有了这个基础,在后续的实验中感觉就明白多了,碰到问题的时候可以自己摸索着解决或者像学长、同学请教,最后成功地完成了实验。
但是总觉得在这七次实验中有个遗憾,可能因为课时限制和学生精力有限,代码大部分都是老师给的现成的。我觉得掌握了这些编程,才算真正掌握了嵌入式系统系统开发,不过这个只能留待我们在课后实现了。
因篇幅问题不能全部显示,请点此查看更多更全内容