树莓派与嵌入式开发的关系

树莓派是一款基于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万块,世界第三大计算平台。

树莓派与嵌入式开发的关系相关推荐

  1. 嵌入式开发需掌握的技能有哪些

    嵌入式开发需掌握的技能有哪些 合格的嵌入式开发者应是多面手,应具备各方面的技能,包括从硬件到软件到应用(电力系统保护,自动化,控制,人工智能,机器学习等),从单板到系统整机,从技术到管理,甚至吹拉弹唱 ...

  2. 掌握这些,就能成为嵌入式开发多面手!

    合格的嵌入式开发者应是多面手,应具备各方面的技能,包括从硬件到软件到应用(电力系统保护,自动化,控制,人工智能,机器学习等),从单板到系统整机,从技术到管理,甚至吹拉弹唱也需要了解一点,做项目管理时可 ...

  3. 嵌入式开发需要具备什么技能才能在这个行业躺平

    嵌入式开发需要具备什么技能才能在这个行业躺平 ///插播一条:我自己在今年年初录制了一套还比较系统的入门单片机教程,想要的同学找我拿就行了免費的,私信我就可以哦~点我头像黑色字体加我地球呺也能领取哦. ...

  4. 嵌入式开发中DSP与FPGA的关系

    嵌入式开发中DSP与FPGA的关系 常所说的单片机侧重于控制,不支持信号处理,属于低端嵌入式处理器,arm可以看做是低端单片机升级版,支持操作系统管理,更多接口如网卡,处理能力更强;fpga是可编程逻 ...

  5. STM32与树莓派:嵌入式系统开发与教育计算的区别

    STM32和树莓派是两种不同的硬件平台,用于不同的应用领域. STM32:STM32是一系列由STMicroelectronics(意法半导体)生产的32位ARM Cortex-M微控制器.它们被广泛 ...

  6. 关于嵌入式开发,到底需要会多少门语言,做好准备了吗

    我觉得在嵌入式环境是linux,arm体系架构的情况下 一个健康的完整的 嵌入式 工程应包含以下语言: (C++自学了大概总时长2-3个月,熟悉对象编程和语法,没有对C++11库的具体的进行学习) ( ...

  7. 有哪些工具可以让嵌入式开发事半功倍?详细盘点工程师必备工具

    嵌入式开发就是指在嵌入式操作系统下进行开发,一般常用的系统有μcos,vxworks,linux,android等.当然,对于嵌入式或单片机工程师的利器就是C语言.C++或汇编语言.那么有哪些好工具可 ...

  8. 嵌入式开发-各种干货

    1.Jar包上传到FTP 2.登录Ubuntu,修改jar包的属性sudo chmod 777 xxxxx.jar 3.运行jar nohup java -jar xxxxxx.jar 4.结束服务: ...

  9. 嵌入式开发在过去20年中是如何演变的

    嵌入式开发在过去20年中是如何演变的 How embedded development has evolved over the past two decades 与任何开发领域一样,嵌入式系统开发就 ...

最新文章

  1. IPv6 — 与 5G 共荣共生
  2. 三层架构实战篇—系统登录实例
  3. 怎么在Caffe中配置每一个层的结构
  4. ASP.NET Core启动地址配置方法及优先级顺序
  5. 《C++ Primer 第五版》第二章(第5小节)——using和typedef,auto和decltype总结
  6. HDUOJ --2523
  7. Java中按位运算符
  8. 面向机器学习的特征工程 八、自动化特征提取器:图像特征提取和深度学习
  9. 完整简单的红黑树算法
  10. PAIP.DB4O与SQL配合使用在海量数据下.txt
  11. Edraw Max 9.x 安装
  12. Unitue_逆流的处事原则
  13. Photoshop脚本 设置前景色和背景色
  14. 在Quartus中调用Modelesim时仿真出现“Error:Failed to find design unit work“可能的解决方法
  15. 『转载』完全用Linux工作 王垠
  16. 秘术 | 我刚出生的时候,喝了几天狼奶,我把这头狼当妈,我以为我一辈子见不到她,直到有一个女人过来找我……
  17. 计算机备品备件如何管理,备品备件管理系统
  18. VS2019怎么没有C++的窗体应用模板_简历中常被忽视的「自我评价」,怎么写?
  19. springBoot 定时任务执行一段时间后失效
  20. 电子商务计算机考试,电子商务师考试电子商务训练试题

热门文章

  1. C++ 控制台移动光标
  2. 量化交易系统如何获取股票数据的执行过程?
  3. 创造与魔法服务器维护一维护是多久,创造与魔法 | 维护完快速进服指南必刷稀有物介绍...
  4. Java开发已经烂大街,没前途了?假的
  5. 中科院人工智能学院982程序设计在职考研
  6. EXCEL公式VLOOKUP函数用法详解
  7. 三个臭皮匠浅谈xss获取用户cookie的安全漏洞
  8. 瑞萨R7F0Cxxx系列单片机入门教程
  9. 透明设置Android:将activity设置为弹出式的并设置为透明的
  10. 随机在圆上生成n个点,这n个点在同一半圆的概率是多少?