2014025687 《嵌入式程序设计》第2周学习总结
学号2014025687(29) 《嵌入式程序设计》第2周学习总结
教材学习内容总结
本周学习的是教材第三章3.5节~5.5节的内容
第三章
3.5make
make工程管理器
作用:可以根据文件时间戳自动发现更新过的文件而减少编译的工作量,并且Makefile可以执行大量的编译工作。
(1)makefile基本结构
target:dependency_file
command/*该行必须以tab键开头*/、
#The simplest example
hello.o: hello.c hello .h
gcc -c hello.c -o hello.o
[root@localhost makefile]# make hello.o
gcc -c hello.c -o hello.o
[root@localhost makefile]# ls
hello.c hello.h hello.o makefile
(2)makefile变量
变量定义有两种方式:
一、递归展开方式 VAR=var
二、简单方式 VAR:=var
变量的分类:用户自定义变量、预定义变量、自动变量及环境变量
(3)makefile规则
隐式规则 模式规则
3.6使用autotools
制作Makefile的工具
第四章
本章讲解了嵌入式中的基本概念,包括嵌入式系统的含义、发展历史、特点以及其体系结构。在这里,重点要掌握嵌入式系统和通用计算机的区别以加深对嵌入式系统的理解。
接下来对ARM体系进行了概括性讲解,希望读者能重点掌握ARM9的特性,有条件的读者希望能结合实际开发板进行学习,没有开发板的读者也可参看书中的实物图,以获得感性的认识。另外,不同的硬件平台都会有一定的区别,但其主要原理是一样的,对于某些细节的不同处理请读者参阅对应厂商的用户手册。
本章的最后讲解了嵌入式软件开发的流程,其中重点讲解了交叉编译和交叉调试,这些概念初次学习会感觉比较枯燥,但这些概念又是非常重要的,在后面的具体开发中会经常涉及,希望读者对这些内容能够认真消化。
最后安排的一个实验希望有条件的读者能动手做做,当然在做之前一定认真阅读不同厂商提供的用户手册。
第五章
本章详细讲解了嵌入式Linux开发环境的搭建,包括minicom和超级终端的配置,如何创建并下载映像文件到开发板,如何移植嵌入式Linux内核以及如何移植U-Boot
本周实验截图
Makefile
gcc和gdb
教材学习中的问题和解决过程
问题:对自动变量和环境变量的理解不到位
解决:多次编码练习才能更深入的理解课本上的意思
代码调试中的问题和解决过程
(1)代码大小写弄混导致编译错误
(2)vi的复合剪切功能使用不习惯造成打代码速度太慢
课后作业中的问题和解决过程
使用Makefile编译hello.c文件时提示:
make:'hello' is up date
解决:因为hello.c已经生成可执行文件所以删掉 hello 重新打就好了
rm hello
其他(感悟、思考等,可选)
学习需要日积月累, 脚踏实地一步一步积累,耐心认真也是打好代码的关键。
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | 100/100 | 1/1 | 5/5 | |
第二周 | 200/300 | 2/2 | 5/10 |
参考资料
- 《嵌入式应用程序设计》学习指导