0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

arm开发版怎样选择?简说ARM开发小知识

如果是生产研发用的,物美价廉,技术给力最重要。建议选择那种有实力的专门做开发板的厂商,比如迈冲科技、米尔科技等。这些厂商一个是做开发板多年,技术方面已经特别成熟。二是一般这种厂商都已经有一些标准版型是在经常大批量生产的,相对于其他的小厂商来说,成本要小一点。对于我们买家来说,也就是价格要便宜一点

分享:

好的,我们来简明扼要地聊聊 ARM 开发板的选择和一些基本知识。

一、ARM 开发板选择“三步走”

选择 ARM 开发板没有唯一答案,关键在于看你的需求。遵循这三个步骤:

  1. 明确你的目标(最重要!)

    • 做什么项目? 学习嵌入式编程、物联网节点、小型机器人、媒体播放器(GUI)、运行 Linux/Android、工业控制?
    • 需要什么性能? 是简单的传感器控制,还是复杂的图像处理/多媒体?
    • 需要哪些外设? WiFi/BT、以太网、摄像头接口、显示器接口、特定传感器(温湿度、陀螺仪)、音频输入输出、CAN总线?
    • 打算运行什么操作系统? 裸机? FreeRTOS/uCOS 等 RTOS? Linux? Android?
  2. 关键硬件参数看这些

    • 核心处理器 (Chip): 这是核心!
      • Cortex-M系列 (M0, M0+, M3, M4, M7, M33...): “微控制器”(MCU)。特点: 低功耗,实时性强(适合中断处理),成本低,通常无MMU(内存管理单元),不能运行标准Linux/Android,适合跑裸机/RTOS。性能从 M0+(超低功耗) 到 M7(高性能) 递增。典型厂商: STM32 (ST), Kinetis (NXP), SAM (Microchip), Nordic (无线), TI MSP432/CC26xx/CC32xx。
      • Cortex-A系列 (A7, A53, A72, A78...): “应用处理器”(Application Processor/Microprocessor)。特点: 高性能,集成MMU,可运行标准Linux、Android等复杂操作系统,功耗较高,成本较高。适合做带GUI、网络服务、复杂计算的应用。典型厂商: Raspberry Pi系列 (Broadcom), BeagleBone (TI), i.MX 8 (NXP), 全志系列 (Allwinner), Rockchip系列。
      • Cortex-R系列: 用于高可靠、强实时的嵌入式系统(如汽车、工业控制的主控),使用场景相对专业。
    • 主频: GHz (A系列) 或 MHz (M系列),但不是绝对性能指标,架构和内存带宽同样重要。
    • 内存 (RAM): M系列通常 KB 到几 MB,A系列至少百 MB 到几 GB。运行 Linux 或大型应用需要更多 RAM。
    • 存储 (Flash): M系列通常 MB 级(片上或片外),A系列多为板载 eMMC (几 GB 到几十 GB) 或需要 SD卡/U盘。
    • 外设接口: USB (Host/OTG), Ethernet, WiFi/BT 模块 (板载还是需扩展?), HDMI/Display Port, 摄像头接口, ADC/DAC, GPIO 数量, PWM, I2C, SPI, UART, CAN等。确保你需要的关键接口都有且够用。
    • 板载资源: 有无加速度计、陀螺仪、光感、音频编解码器等?可简化开发。
    • 扩展性: Arduino/MikroBUS/Raspberry Pi Hat 兼容插座?方便未来扩展模块。
    • 调试接口: SWD (主要 M系列), JTAG。方便烧录程序和在线调试。
  3. 软件生态与社区支持

    • 官方资料: 芯片数据手册、硬件参考手册、开发板用户手册是否齐全?官方是否提供软件库/驱动/BSP?
    • 软件开发环境 (IDE): 是否有成熟的工具链支持(ARM GCC, Keil MDK, IAR Embedded Workbench, TI CCS, STM32CubeIDE, Yocto/Buildroot 对于 Linux)?
    • 操作系统支持: 是否有官方或社区维护稳定的 Linux/Android/U-Boot/RTOS 支持?
    • 教程/示例代码: 入门教程、常见外设驱动示例是否丰富?
    • 社区活跃度: 活跃的论坛、GitHub 项目、博客文章意味着你能更容易找到问题和答案(如 Arduino、树莓派、STM32社区非常活跃)。

简单结论:

  • 学习基础嵌入式/单片机编程、低功耗物联网终端:选 Cortex-M 系列开发板。 (如 STM32 Discovery/Nucleo, ESP32-S3/ESP32-C3/ESP32-C6)
  • 学习 Linux/Android 驱动开发、运行图形界面/多媒体、做小型服务器:选 Cortex-A 系列开发板。 (如 Raspberry Pi 4B/5, BeagleBone AI-64, Orange Pi 5, Banana Pi BPI-CM4)
  • 做高可靠、强实时控制:选 Cortex-R 系列开发板(专业领域)。

二、ARM 开发小知识

  1. ARM ≠ 芯片厂商: ARM 公司只设计处理器核心架构(IP 核),自己不生产芯片。芯片厂商(ST, NXP, TI, Microchip, 瑞萨, 全志, Rockchip, 高通, 联发科等)从 ARM 获得授权,然后基于 ARM 内核设计、生产和销售自己的集成芯片(SoC, MCU)。所以你说“用ARM开发”,实际是用某家公司的基于ARM内核的芯片开发。
  2. 核心家族: ARM 内核主要分为三个大系列,分工明确(见上一点)。
  3. 工具链: ARM 开发需要“交叉编译工具链(Cross-Compilation Toolchain)”。你在 PC (x86) 上写 C/C++ 代码,需要用一套特殊的编译器 (arm-none-eabi-gcc 对应 M系列裸机/RTOS, aarch64-linux-gnu-gcc 对应 A系列 Linux)` 生成在 ARM 芯片上运行的机器码(二进制文件)。像 Keil、IAR 是收费的集成开发环境(IDE),GNU Toolchain 是开源的。
  4. 调试器/仿真器: 需要专用的硬件设备(如 J-Link, ST-Link, CMSIS-DAP)连接到开发板的调试接口(SWD/JTAG)进行下载程序、单步调试、查看变量/寄存器。
  5. 启动流程 (Boot): CPU 上电后,首先执行芯片固化的BootROM代码,初始化基本硬件,然后加载并执行第一级引导程序(Bootloader,如U-Boot)。Bootloader 完成更复杂的初始化,加载并启动操作系统(或运行应用程序)。对于简单应用(裸机),你的代码就是最终执行的东西。
  6. 寄存器操作: 底层驱动或裸机编程,主要是通过读写芯片寄存器(Register)来控制外设(如让某个GPIO管脚输出高电平)。
  7. 实时操作系统: 对于要求快速响应事件、任务调度的应用(实时性要求高),在MCU上常用 RTOS(Real-Time OS),如 FreeRTOS(非常流行)、uC/OS-II/III, Zephyr, RT-Thread, ThreadX。它们管理内存、任务调度、通信(队列、信号量、互斥锁)。
  8. 嵌入式 Linux/Android: 功能强大、资源丰富的操作系统,适用于复杂的联网、多媒体应用开发。需配合 Bootloader (U-Boot) 和根文件系统(rootfs)。

一句话总结选板:先想清楚要干啥(项目需求和资源需求),再根据需求找合适核心(M/A)和硬件配置的开发板,最后考察它的软件生态和社区活跃度是否强大易用。 对于新手,选择社区热门、资料丰富的板子(如树莓派、STM32 Nucleo)会让入门更轻松。

STM32开发

STM32开发板 STM32F103RCT6最小系统板 ARM 一键串口下载 液晶屏

2023-04-04 11:05:04

ARM-Linux开发和MCU开发的不同点

针对ARM-Linux程序的开发,主要分为三类:应用程序开发、驱动程序开发、系统内核开发。针对不同种类的软件开发,有其不同的特点。 今天,我们来看看ARM-Linux开发和MCU开发的不同点,以及

2023-06-22 11:46:00

N32G430C8L7_STB开发

N32G430C8L7_STB开发板用于32位MCU N32G430C8L7的开发

2023-03-31 12:05:12

如何去选择Android-LInux-ARM开发板呢

怎样选择单片机呢?如何去选择Android-LInux-ARM开发板呢?

储蓄叛逆 2021-10-27 06:02:46

ARM-Linux应用开发和单片机开发的区别是什么

这里先要做一个说明,对于ARM的应用开发主要有两种方式:一种是直接在ARM芯片上进行应用开发,不采用操作系统,也称为裸机编程,这种开发方式主要应用于一些低端的ARM芯片上,其开发过程非常类似单片机,这里不多叙述。

2020-03-27 14:29:32

N32G4FRML-STB开发

高性能32位N32G4FRM系列芯片的样片开发开发板主MCU芯片型号N32G4FRMEL7

2023-03-31 12:05:12

ARM-Linux开发和 MCU开发的不同点 ARM-Linux的基本开发环境

针对 ARM-Linux 程序的开发,主要分为三类:应用程序开发、驱动程序开发、系统内核开发,针对不同种类的软件开发,有其不同的特点。

2023-08-07 16:23:48

arm开发板能干什么_arm开发板用什么语言

ARM开发板,即以英国ARM(Advanced RISC Machines)公司的内核芯片作为CPU,同时附加其他外围功能的嵌入式开发板,用以评估内核芯片的功能和研发各科技类企业的产品 。

2020-09-11 15:59:28

Arm推出GitHub平台AI工具,简化开发者AI应用开发部署流程

专为 GitHub Copilot 设计的 Arm 扩展程序,可加速从云到边缘侧基于 Arm 平台的开发Arm 原生运行器为部署云原生、Windows on Arm 以及云到边缘侧的 AI

2024-10-31 18:51:52

如何选择合适的ARM开发

在嵌入式系统设计和开发领域,ARM处理器因其高性能、低功耗和广泛的应用场景而受到青睐。 1. 确定项目需求 在选购ARM开发板之前,首先要明确项目的具体需求。这包括: 性能需求 :项目是否需要

2024-11-05 11:09:11

树莓派和arm开发板的区别

树莓派(Raspberry Pi)和ARM开发板都是基于ARM架构的微型计算机,但它们之间存在一些关键区别。 一、历史背景 树莓派(Raspberry Pi) 树莓派是由英国树莓派基金会

2024-08-30 15:36:46

ARM开发板不工作的原因_Arm开发板的制作过程

本文主要阐述了ARM开发板不工作的原因及制作方法。

2020-09-11 16:07:36

ARM-Linux开发与MCU开发的差别是什么

对于ARM-Linux开发,通常是没有硬件的调试器的,尤其是在应用开发的过程中,很少使用硬件的调试器,程序的调试主要是通过串口进行调试的;但是需要说明的是,对于ARM芯片也是有硬件仿真器的,但通常用于裸机开发

2020-03-09 16:43:12

ARM-Linux应用开发和单片机开发的不同

对于ARM-Linux开发,通常是没有硬件的调试器的,尤其是在应用开发的过程中,很少使用硬件的调试器,程序的调试主要是通过串口进行调试的;但是需要说明的是,对于ARM芯片也是有硬件仿真器的,但通常用于裸机开发

2020-08-27 14:24:48

ARM Linux开发与单片机开发到底不同

ARM-Linux程序的开发,主要分为三类:应用程序开发、驱动程序开发、系统内核开发,不同种类的软件开发,有其不同的特点。它相比于单片机的开发又有着不同,具体如何呢?

2020-06-27 17:53:00

ARM开发板与FPGA的结合应用

一、引言 ARM开发板是一种基于ARM架构的嵌入式开发平台,具有高性能、低功耗的特点。FPGA是一种可编程的数字电路,可以根据需要配置不同的逻辑功能。将ARM开发板与FPGA结合,可以实现更强

2024-11-05 11:42:21

ARM-Linux应用开发和单片机开发的不同

针对ARM-Linux程序的开发,主要分为三类:应用程序开发、驱动程序开发、系统内核开发。针对不同种类的软件开发,有其不同的特点。

2022-03-23 16:01:06

看看ARM-Linux开发和MCU开发的不同点

针对ARM-Linux程序的开发,主要分为三类:应用程序开发、驱动程序开发、系统内核开发。针对不同种类的软件开发,有其不同的特点。

2023-07-25 09:25:36

Cadence 与 Arm Total Design 合作,加速开发基于 Arm 的定制 SoC

双方的共同客户可获取 Cadence 的全流程系统级设计验证和实现解决方案以及接口 IP,依托 Neoverse CSS 加速开发基于 Arm 的定制 SoC 中国上海,2023 年 10 月 25

2023-10-25 10:40:02

ARM-Linux开发和MCU开发的不同点

针对ARM-Linux程序的开发,主要分为三类:应用程序开发、驱动程序开发、系统内核开发。针对不同种类的软件开发,有其不同的特点。

2023-05-30 09:01:51

怎样开发ARM裸机的主频与时钟呢

IMX的系统时钟主频配置原理是什么?怎样开发ARM裸机的主频与时钟呢?

无人岛 2022-01-19 07:08:34

ARM开发板与树莓派的比较

ARM开发板和树莓派都是基于ARM架构的单板计算机,它们在教育、工业控制、物联网等领域有着广泛的应用。 硬件配置 ARM开发板和树莓派的硬件配置各有特点,具体取决于不同的型号和制造商。 1.1

2024-11-05 11:11:51

加载更多
相关标签