嵌入式开发 | 软件开发 | |
传感器 | 使用模块或自行焊接 | 手机自带 |
操作系统 | FreeRTOS/usos | Android |
开发硬件 | 开发板 |
手机 |
可视化选择 | 显示模块 | 手机 |
工作侧重 | 底层-驱动 | 应用-逻辑 |
开发芯片 | MCU/MPU/CPU | CPU |
硬件架构 | 可剪裁 | 偏向计算机组成 |
开发架构 | 通常不侧重数据库 | 前后端 |
对于硬件开发,开发板是不固定的,各种各样的芯片平台和不同的模块需要大量的适配,更多的工作偏向于驱动,比如驱动TFT-LCD屏幕,让其可以显示字符、图片和符号。
对于软件开发,手机就好像一个开发板,虽然芯片平台不同,但底层驱动已经写好(各种组件),编写程序时并不需要知道屏幕显示的原理等等,侧重过程和事件处理的逻辑。
主要是由于两者的应用场景不同,嵌入式一般作为工业控制端,不需要特别强的处理性能,更在乎控制;软件开发的产品体现在人们的日常生活中,游戏需要强的处理性能、日常程序需要UI,不再考虑底层如何实现能更好的开发出应用级产品。
但是目前随着AI嵌入式、边缘计算的热门,和勘智K230、全志H618、RK3588更强处理性能的MPU类芯片的出现(这类“卡片电脑”上可以移植安卓和Linux等操作系统),未来人工智能的应用场景等等,两者的编程思维会有越来越多的交叉。
标签:软件开发,区别,芯片,开发板,开发,驱动,嵌入式 From: https://www.cnblogs.com/HenuWzk/p/18384212