当前位置: 首页 > news >正文

青海建设局网站广告投放

青海建设局网站,广告投放,安阳县辛村镇,八亿免费wap自助建站前言:之前的基于单片机的闭环控制步进电机项目其实已经完成了,但很多时间都花在调试和生产上,实在没时间去做总结笔记,现在又开始做新项目了,从单片机到了Linux,想用这个平台来督促自己继续学习&#xff0c…

前言:之前的基于单片机的闭环控制步进电机项目其实已经完成了,但很多时间都花在调试和生产上,实在没时间去做总结笔记,现在又开始做新项目了,从单片机到了Linux,想用这个平台来督促自己继续学习,所以新开一章。之前的单片机项目应该还是会补全的。


Linux到底是什么?
我之前只是听过,并没有深入学习过Linux,我之前会以为它是一个和单片机同级别的概念,现在发现是大错特错且很业余。我现在理解的相关概念是这样的。

- Linux是一个操作系统(OS),和Windows, MACOS, Android, IOS是同级别的概念
- Linux和Android是完全开源的,甚至Android的底层是Linux,但其他几种OS都不是
- 单片机可以说是CPU的一种,之前学习的STM32又是单片机的一种
- 操作系统是运行在CPU之上,例如Windows运行在Intel的CPU上,MACOS运行在苹果的M系列芯片上,IOS运行在A系列芯片上
- Linux操作系统可以运行在很多个CPU上,例如NXP的I.MX6UL(这也是我开发板使用的CPU)
- 之前单片机也学习到了FreeRTOS,是一种轻量化的操作系统,如果需要网络,文件系统,GUI等需要开发者自行移植
- 如果要学习一个功能完善的操作系统,Linux是非常合适的选择
- Linux的多任务管理、存储管理、设备管理、文件管理和网络,都是单片机缺少或者不那么强大的功能

我选择从搞明白Makefile开始Linux的学习

之前学习单片机的时候是有IDE这个东西的,最开始的Keil,后来的Clion,都是很出色的单片机IDE。我们只需要在IDE上写代码,它可以帮我们自动补全代码,加上HAL库CubeMX的支持,单片机的开发难度大大降低。

在Linux中就没有CubeMX这样的神器,至少目前没有,所以系统的初始化需要自己写代码完成。

最重要的是,IDE给我们提供了编译链接的功能,它使我们甚至都不知道编译这件事情的存在,只要点击一个按钮,IDE就会自动给我生成**.hex或者.bin**文件让我们烧写到单片机里。(当然是编译没有错误的情况)

Linux的嵌入式编程情况不太一样:

  • 首先Linux的可执行文件必须在Linux系统中编译,一般是在Windows中用虚拟机建一个Ubuntu系统下使用命令行来做编译和链接(Ubuntu系统和MACOS非常像)
  • 在开发项目的时候,可以先在Windows下的IDE进行代码编写,之后使用FTP(FileZilla)传输到虚拟机中,基于命令行和gcc编译器进行编译、链接
  • 还有种方法是在Ubuntu下直接使用图形化的IDE工具,例如VSCode来做代码编写工具,而且也能进行简单的编译,亲测功能和Windows版本的VSCode基本一致
  • 我看很多文章都说源文件很多的情况下用VSCode编译会有问题,但我目前还没有碰到,用VSCode编译存在的问题用命令行gcc编译一样也会跳出来,可能目前用的源文件还是不够多吧?
    等等,什么是编译?什么又是链接?至少我是一直没有明确概念。

编译是将源文件(C, C++, python等等)转换成中间代码文件,中间代码文件在Windows中是**.obj文件**,在Linux中是**.o文件**,即ObjectFile;编译器需要的是语法的正确,函数与变量声明的正确;
由于一个工程里包含的源文件很多,所以编译得到的ObjectFile也会很多,所以把大量的ObjectFile合成执行文件的动作叫做链接(Link)。链接器会在所有中间文件中找寻函数的实现,如果找不到会报链接错误码。

好了,从这里进入Makefile是一个比较好的时机。上面说了,每一个源文件都需要编译成中间文件,我们当然可以使用合适的IDE实现傻瓜操作,但也可以自己写makefile来证明具备完成大型工程的能力。

makefile关系到了整个工程的编译规则。一个工程中的源文件不计数,其按类型、功能、模块分别放在若干个目录中,makefile定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能操作。makefile带来的好处就是——“自动化编译”,一旦写好,只需要一个make命令,整个工程完全自动编译,极大的提高了软件开发的效率。

接下来详细的学习Makefile
(未完待续)

http://www.yayakq.cn/news/385895/

相关文章:

  • 如何自助建网站一站式建网站龙泉网站开发
  • 电商营销型网站建设网站游戏网站开发
  • 中国建材网官方网站百度明星人气排行榜
  • 如何做网站轮播图和菜单全屏建设部一建查询网站
  • 移动端网站设计欣赏网站建设为啥每年都要收费
  • 韶关市网站建设公司网站开发后端用什么技术
  • 邢台做wap网站价格建网站云空间
  • 淘宝客是怎么做代理网站的asp网站 上传空间
  • 唯一做性视频的网站网站建设的优势
  • 旅游网站的导航栏目设计怎么用手机建网站
  • 建行官网网站网站开发需要的技能
  • seo网站打开慢703804温州论坛
  • 宁波专业网站seo公司可以在自己的电脑上做网站吗
  • 盐城市住房城乡建设网站谷歌seo最好的公司
  • 网站托管费wordpress kallyas
  • 做网站自动赚钱网络推广技术培训
  • 海纳企业网站建设模板学服装设计学费要多少
  • html5网站演示如何建立网站会员系统
  • 网站的结构包括哪些内容php网站验证码
  • 建设平台网站网站备案跟网安备案区别
  • 中国建设工程造价管理协会网站查询商城网站建设经验
  • 个人网站做废品回收做海鲜团购网站
  • 小程序推广网站看课学校网站建设
  • 青海省住房和建设厅网站电子产品网站模板
  • 石家庄seo网站推广泉州网站
  • 建设银行自贡分行网站wordpress无法启动
  • 网站手机客户端制作宣传册
  • 哪些网站做二手挖机肇庆市企业网站建设品牌
  • html网站登陆页面模板做网站的网络公司有哪些
  • 黄页网站推广app营销自动化