我想从零开始学习嵌入式系统编程。经过一段时间的搜索,我发现自己有些困惑。
我可以编写C和C ++程序,但是我不知道从哪里开始进行嵌入式编程。我应该购买某种设备进行练习,使用微处理器模拟器(如果是这样,应该使用哪种?)等等,任何关于开始学习的建议或资源都非常欢迎。
我想从零开始学习嵌入式系统编程。经过一段时间的搜索,我发现自己有些困惑。
我可以编写C和C ++程序,但是我不知道从哪里开始进行嵌入式编程。我应该购买某种设备进行练习,使用微处理器模拟器(如果是这样,应该使用哪种?)等等,任何关于开始学习的建议或资源都非常欢迎。
嵌入式系统可以分为两类:
那些运行完整操作系统的。如果有已记录的方法获取和启动操作系统,则这些和桌面电脑没有太大区别,除了你需要构建或下载交叉编译器。当然,对于像手机之类的设备,环境赞助商会提供详细的开发环境和调试器。
在称为“裸机”的程序上运行的。它们只加载你的程序和语言运行时。(其中一些非常简单,只运行一个简单的解释器或汇编语言。这有一个优点,不需要复杂的编程来设置集成外设。)
您可能不需要仿真器或其他硬件调试设置,事实上,您甚至可能不需要硬件即可开始开发。如可能,尝试在虚拟机中进行初始开发。
总之,你会得到你所付出的。商业项目提供了许多环境,但这些环境显然不适用于机器人项目等。
有许多平台可提供合理的支持。最新的热潮(由于其惊人的35美元价格)是树莓派,但目前无法立即获取。