树莓派与嵌入式开发的关系
树莓派与嵌入式开发的关系
树莓派是一款基于Linux系统的单板机电脑。它由英国的树莓派基金会所开发,目的是以低价硬件及自由软件刺激在学校的基本的计算机科学教育。树莓派被赋予的希望是,能够帮助全世界的孩子学习编程,并能够了解计算机是如何工作的。
树莓派是最有名的卡名式电脑,在全世界有很多的玩家,那么它可以用来当做ARM开发板,进行嵌入式开发与学习吗?下面我们从两个方面讨论一下。
树莓派能不能做为嵌入式的ARM开发板?
树莓派的特点是:具有强大的运算性能,全面的软件支持,以及开源硬件的易用性。
虽然树莓派是开源硬件,但是实际上它的底层Bootloader和核心数据手册是闭源的。这对于应用开发没有影响,但如果是想要借助此学习ARM Linux底层开发这些的话,就不适合了。
硬件资源对比
下面就以一块常见的友善电子的ARM开发板NanoPi S2同树莓派3B进行比较。
核心硬件资源差不多,因为NanoPi S2板载8GB eMMC价格上要贵几十块,体积大小上树莓派要大3/1。
NanoPi S2
Raspberry Pi 3B
树莓派能不能进行嵌入式开发与学习?
下面从91创客学堂的嵌入式职业培训课程进行分析比较。
课程内容 | 树莓派 | NanoPi S2 | 备注 |
---|---|---|---|
嵌入式应用开发(阶段一) | |||
C语言编程基础 | 不需要 | 不需要 | Linux环境 |
嵌入式开发基础 | 适用 | 适用 | 开发板Linux环境 |
Linux系统编程 | 适用 | 适用 | 开发板Linux环境 |
阶段一项目 | 适用 | 适用 | 开发板Linux环境 |
嵌入式底层系统开发(阶段二) | |||
ARM汇编程序设计 | 不需要 | 不需要 | RVDS软件 |
ARM裸机开发 | 不适用 | 适用 | ARM开发环境 |
Linux内核移植 | 不适用 | 适用 | Bootloader |
Linux驱动开发 | 适用 | 适用 | 开发方式不同 |
阶段二项目 | 适用 | 适用 | 开发板Linux环境 |
嵌入式图形应用开发(阶段三) | |||
C++语言编程基础 | 不需要 | 不需要 | Linux环境 |
Qt程序设计 | 适用 | 适用 | 开发板Linux环境 |
阶段三项目 | 适用 | 适用 | 开发板Linux环境 |
那么从上面比较看树莓派不适合最底层的裸机程序、bootloader内核移植的开发,驱动程序开发树莓派可以使用标准的Linux驱动程序架构也可以使用第三库快速开发,三个阶段的项目都可以在树莓派上进行开发。
结论:
1.树莓派是属于嵌入式开发板的比较特殊的一种,底层Bootloader和核心数据手册是闭源。拿其做原型,修改硬件进行开发不可行。
2.树莓派非常适合嵌入式开发学习入门,软件资源丰富,开发快速。现在裸机开发,Bootloader移植的机会很少,如果只做嵌入式应用开发,树莓派就足够。
3.树莓派自2012年推出以来全球销量已达1250万块,世界第三大计算平台。
树莓派与嵌入式开发的关系相关推荐
- 嵌入式开发需掌握的技能有哪些
嵌入式开发需掌握的技能有哪些 合格的嵌入式开发者应是多面手,应具备各方面的技能,包括从硬件到软件到应用(电力系统保护,自动化,控制,人工智能,机器学习等),从单板到系统整机,从技术到管理,甚至吹拉弹唱 ...
- 掌握这些,就能成为嵌入式开发多面手!
合格的嵌入式开发者应是多面手,应具备各方面的技能,包括从硬件到软件到应用(电力系统保护,自动化,控制,人工智能,机器学习等),从单板到系统整机,从技术到管理,甚至吹拉弹唱也需要了解一点,做项目管理时可 ...
- 嵌入式开发需要具备什么技能才能在这个行业躺平
嵌入式开发需要具备什么技能才能在这个行业躺平 ///插播一条:我自己在今年年初录制了一套还比较系统的入门单片机教程,想要的同学找我拿就行了免費的,私信我就可以哦~点我头像黑色字体加我地球呺也能领取哦. ...
- 嵌入式开发中DSP与FPGA的关系
嵌入式开发中DSP与FPGA的关系 常所说的单片机侧重于控制,不支持信号处理,属于低端嵌入式处理器,arm可以看做是低端单片机升级版,支持操作系统管理,更多接口如网卡,处理能力更强;fpga是可编程逻 ...
- STM32与树莓派:嵌入式系统开发与教育计算的区别
STM32和树莓派是两种不同的硬件平台,用于不同的应用领域. STM32:STM32是一系列由STMicroelectronics(意法半导体)生产的32位ARM Cortex-M微控制器.它们被广泛 ...
- 关于嵌入式开发,到底需要会多少门语言,做好准备了吗
我觉得在嵌入式环境是linux,arm体系架构的情况下 一个健康的完整的 嵌入式 工程应包含以下语言: (C++自学了大概总时长2-3个月,熟悉对象编程和语法,没有对C++11库的具体的进行学习) ( ...
- 有哪些工具可以让嵌入式开发事半功倍?详细盘点工程师必备工具
嵌入式开发就是指在嵌入式操作系统下进行开发,一般常用的系统有μcos,vxworks,linux,android等.当然,对于嵌入式或单片机工程师的利器就是C语言.C++或汇编语言.那么有哪些好工具可 ...
- 嵌入式开发-各种干货
1.Jar包上传到FTP 2.登录Ubuntu,修改jar包的属性sudo chmod 777 xxxxx.jar 3.运行jar nohup java -jar xxxxxx.jar 4.结束服务: ...
- 嵌入式开发在过去20年中是如何演变的
嵌入式开发在过去20年中是如何演变的 How embedded development has evolved over the past two decades 与任何开发领域一样,嵌入式系统开发就 ...
最新文章
- IPv6 — 与 5G 共荣共生
- 三层架构实战篇—系统登录实例
- 怎么在Caffe中配置每一个层的结构
- ASP.NET Core启动地址配置方法及优先级顺序
- 《C++ Primer 第五版》第二章(第5小节)——using和typedef,auto和decltype总结
- HDUOJ --2523
- Java中按位运算符
- 面向机器学习的特征工程 八、自动化特征提取器:图像特征提取和深度学习
- 完整简单的红黑树算法
- PAIP.DB4O与SQL配合使用在海量数据下.txt
- Edraw Max 9.x 安装
- Unitue_逆流的处事原则
- Photoshop脚本 设置前景色和背景色
- 在Quartus中调用Modelesim时仿真出现“Error:Failed to find design unit work“可能的解决方法
- 『转载』完全用Linux工作 王垠
- 秘术 | 我刚出生的时候,喝了几天狼奶,我把这头狼当妈,我以为我一辈子见不到她,直到有一个女人过来找我……
- 计算机备品备件如何管理,备品备件管理系统
- VS2019怎么没有C++的窗体应用模板_简历中常被忽视的「自我评价」,怎么写?
- springBoot 定时任务执行一段时间后失效
- 电子商务计算机考试,电子商务师考试电子商务训练试题