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

单片机和ARM A的区别

单片机和ARM A的区别

  • 1. 架构
  • 2、软件方面
  • 3、硬件方面
  • 4.区别
  • 5.开发难度
  • 6.单片机是微控制器,ARM是微处理器
  • 7.reference

1. 架构

arm现在分为A R M三个系列,A面向高端,M主要面向低端。
M说白了就是单片机,现在比较流行的cortex-m3。
stm32(cortex-m3内核)的低端的价格可以低到10块钱以下,价格非常的低廉,性能很强,而且有库函数的支持,开发的流程简化很多,理论上应该会替代,但是其他的单片机也有自己的优势,比如:51也有自己的优势,简单,使用的人多,价格更低,开发工具更多,MSP430的低功耗,各有各的优势,取不取代还要看市场,公司的推广。

2、软件方面

这应该是最大的区别了。引入了操作系统。为什么引入操作系统?有什么好处嘛?
1)方便。主要体现在后期的开发,即在操作系统上直接开发应用程序。不像单片机一样一切都要重新写。前期的操作系统移植工作,还是要专业人士来做。

2)安全。这是LINUX的一个特点。LINUX的内核与用户空间的内存管理分开,不会因为用户的单个程序错误而引起系统死掉。这在单片机的软件开发中没见到过。

3)高效。引入进程的管理调度系统,使系统运行更加高效。在传统的单片机开发中大多是基于中断的前后台技术,对多任务的管理有局限性。

3、硬件方面

单片机大多是把内存和存储集成在一起,支持GPIO ADC TIM UART USB等接口,对于高速信号很少支持。
ARM A系列多把内存和存储分开,需要外接,支持GPIO ADC TIM UART USB等接口,重点还有像HDMI MIPI 4/8K_Camera 编解码 NPU GPU等复杂的运行硬件模块。

4.区别

1.单片机是一种有完整计算机体系的芯片,适用于简单的测控系统,功能相对简单。
2.ARM是微处理器,具有强大的事务处理功能,可以配合嵌入式操作系统使用。
ARM最大的优势在于速度快、低功耗、芯片集成度高,多数ARM芯片都可以算作SOC,基本上外围加上电源和驱动接口就可以做成一个小系统了,基于ARM核心处理器的嵌入式系统以其自身资源丰富、功耗低、价格低廉、支持厂商众多的缘故,越来越多地应用在各种需要复杂控制和通信功能的嵌入式系统中。
目前,采用ARM核的微处理器,即我们通常所说的ARM微处理器,已遍及工业控制、消费类电子产品、通信系统、网络系统、无线系统等各类产品市场,基于ARM技术的微处理器应用约占据了32位RISC微处理器75%以上的市场份额,ARM技术正在逐步渗入到我们生活的各个方面。

5.开发难度

单片机开发周期短,硬件设计简单,方便快速成产品。
ARM A先要调试linux系统,驱动复杂,硬件设计复杂,开发周期一般在3-6个月。

6.单片机是微控制器,ARM是微处理器

总的来说,单片机是个微控制器,ARM显然已经是个微处理器了。
单片机适合做一些工控产品,ARM A更适合做消费电子等产品。

7.reference

  • 单片机和ARM的区别
  • 单片机与ARM嵌入式,DSP,FPGA的联系与区别

相关文章:

  • STC 51单片机40——汇编语言 串口 接收与发送
  • python破解wifi教程
  • Android App开发即时通信中通过SocketIO在客户端与服务端间传输文本和图片的讲解及实战(超详细 附源码)
  • 【网络安全】文件上传之安全狗bypass
  • MATLAB | 世界杯来用MATLAB画个足球玩叭~
  • LeetCode | 循环队列的爱情【恋爱法则——环游世界】
  • Android App开发音量调节中实现拖动条和滑动条和音频管理器AudioManager讲解及实战(超详细 附源码和演示视频)
  • 电视剧里的代码真能运行吗?
  • 让我们进入面向对象的世界(三)
  • 动态域名解析
  • 《工程伦理》1-13章汇总
  • Jackson @JsonProperty重复字段处理
  • 元组啊,不就是不可变的列表吗?
  • Java练习题
  • 蓝桥杯跑步锻炼.c语言
  • 【干货分享】SpringCloud微服务架构分布式组件如何共享session对象
  • 【每日笔记】【Go学习笔记】2019-01-10 codis proxy处理流程
  • 【跃迁之路】【477天】刻意练习系列236(2018.05.28)
  • Babel配置的不完全指南
  • Fastjson的基本使用方法大全
  • IE报vuex requires a Promise polyfill in this browser问题解决
  • JS数组方法汇总
  • JS题目及答案整理
  • PermissionScope Swift4 兼容问题
  • PHP面试之三:MySQL数据库
  • 第13期 DApp 榜单 :来,吃我这波安利
  • 基于Dubbo+ZooKeeper的分布式服务的实现
  • 那些年我们用过的显示性能指标
  • 实现简单的正则表达式引擎
  • 树莓派 - 使用须知
  • 延迟脚本的方式
  • - 语言经验 - 《c++的高性能内存管理库tcmalloc和jemalloc》
  • 阿里云ACE认证之理解CDN技术
  • 关于Android全面屏虚拟导航栏的适配总结
  • 没有任何编程基础可以直接学习python语言吗?学会后能够做什么? ...
  • ​io --- 处理流的核心工具​
  • ​ubuntu下安装kvm虚拟机
  • "无招胜有招"nbsp;史上最全的互…
  • (10)ATF MMU转换表
  • (20)目标检测算法之YOLOv5计算预选框、详解anchor计算
  • (9)YOLO-Pose:使用对象关键点相似性损失增强多人姿态估计的增强版YOLO
  • (pt可视化)利用torch的make_grid进行张量可视化
  • (翻译)Quartz官方教程——第一课:Quartz入门
  • (附源码)ssm高校志愿者服务系统 毕业设计 011648
  • (免费领源码)Python#MySQL图书馆管理系统071718-计算机毕业设计项目选题推荐
  • (亲测有效)解决windows11无法使用1500000波特率的问题
  • (十) 初识 Docker file
  • (一一四)第九章编程练习
  • (已解决)什么是vue导航守卫
  • (转)shell中括号的特殊用法 linux if多条件判断
  • 、写入Shellcode到注册表上线
  • .NET BackgroundWorker
  • .net core 调用c dll_用C++生成一个简单的DLL文件VS2008
  • .net core 依赖注入的基本用发
  • .Net 应用中使用dot trace进行性能诊断