专业嵌入式软件开发——全面走向高质高效编程-c#高效编程 pdf
专业嵌入式软件开发——全面走向高质高效编程1.编程学习思路本篇学习讲解了什么是编程,简单的讲就是为一个单一的功能(一般为模块)编写一套程序语言。编程学习思路分为几个部分:1.循序渐进:从入门到入行。2.基础到精通:从嵌入式入门到嵌入式高级工程师。3.精通到业务:从业务应用高级工程师到嵌入式高级工程师。
4.套用框架到创新:从嵌入式创新到分布式开发。学习编程的完整路线图是什么样的呢?基础夯实——ucosii——stm32——飞思卡尔、树莓派fpga学习路线3步学习路线+1个基础版本1.编程思维学习的第一步,看一下他们都是怎么学习编程的?(。
1)循序渐进ucosii很早就开始涉及编程语言编写系统功能了,比如远程登录、白名单(应用级)、历史记录。stm32上手非常快,一般程序员不太熟悉的复杂函数可以省略,直接使用标准库程序。飞思卡尔开发平台基本上两个功能相同,但是操作不一样,要稍微难一点。
2)基础到精通微机原理、汇编语言、地址转换,这些编程精髓必须记住。学习嵌入式开发的第二步,查阅文档文件使用com文件生成函数专业嵌入式软件开发——全面走向高质高效编程,列出各个生成函数的功能列表,看看和接口函数有什么不同?怎么写兼容性更好的接口函数?
3)高级工程师嵌入式工程师进阶,得有一点网络编程经验。树莓派外接fpga跑远程编程程序没有问题,但是飞思卡尔stm32平台里加一个linux程序就会显得比较麻烦。飞思卡尔上做fpga驱动的模块一般都是纯软件的,很少用接口函数专业嵌入式软件开发——全面走向高质高效编程,所以ucosii没有时序要求的地方,最好使用stm32,至少要熟悉软件编程语言,树莓派也可以,但是价格贵。
2.编程软件
1)ucosii——freertos是1996年初设计的,大概是unix2.2版本的一半左右,用ucosii写的,放到树莓派上一点都不差。但是ucosii内核对c语言支持不好,其实用树莓派自带的gcc写c语言也很简单,只要使用gcc在树莓派设置gcc-sv,就能编译出树莓派所有支持的语言。而且树莓派自带的vcpu编译器自带gcc语言编译功能,用树莓派本身语言也足够好了。
可以从树莓派freertos官网下载最新版本的freertosv1.3.0——armv7的freertosv3.1.1的debugging——make命令可以直接出来make的依赖环境,使用makefullapi写驱动的时候省去了编译整个freertos内核的大工作量。将linux的库拷贝到树莓派的driverbuilder中去,树莓派本身提供的kernel和systemkernel可以一起写,一次不行就写两次。include的时候,要按照树莓派内核的路线走,比如linux2.6就要include。