Arm社区

文章数:282 被阅读:641628

账号入驻

裸机编程指南

最新更新时间:2023-08-09 19:26
    阅读数:

当下的嵌入式编程通常需要使用开发套件来加快和简化开发流程。例如,Arm Keil 带有集成 IDE、调试器和一组软件包,内含 RTOS、驱动程序、中间件 (如 TCP/IP 堆栈) 以及 mbedTLS (SSL/TLS) 或 lvgl (图形) 之类的库。意法半导体的 Cube IDE 以及恩智浦的 MCUXpresso、德州仪器的 CCS、微芯的 MPLAB 等开发工具也提供类似的功能。



当开发者在其中一个框架中启动项目后,他们要在各种软件层之上开发应用代码。有时开发者可能会选择绕过所有这些层,而开发直接与硬件通信的代码。这种开发方式称为 裸机编程 。该做法的主要目的如下:



通过对所开发的应用进行充分了解,掌握每一个细节,由此减轻维护负担



充分实现目标硬件的性能和灵活性,起初比较耗时,但随着项目的推进,可能会带来巨大回报



避免花费时间来修复和调试底层软件层,尤其是在测试不充分、文档记录不完整且漏洞百出的情况下


裸机开发可以不使用集成开发套件 (IDE),只需使用任何一款编辑器和 Arm GCC 编译器即可操作。当然,也可以使用诸如 Arm Keil 这样的 IDE 来完成开发工作。无论是哪种情况,开发者都需要了解以下几个关键概念:



内存的组织方式


外设的工作原理


生成的二进制代码的布局


用于生成所需布局的链接器脚本情况


矢量表、中断和弱符号


CMSIS 设备头文件:Arm 核心和供应商外设




想要更进一步了解裸机编程方面的知识并获得专业的指导?那就不要错过我们为你精心准备的一份裸机编程指南,这份由 Cesanta 工程总监 Sergey Lyubka 撰写的指南将从基础入手,以循序渐进的方式为你介绍所有必要的主题,比如内存映射的组织、外设 I/O 等等。从经典的 LED 闪烁入手,逐步过渡到定时器、中断等深度主题,然后切入到一个显示有交互式设备仪表板的嵌入式 Web 服务器。在指南的最后,还将着重介绍关键主题,即在目标硬件上进行自动化软件构建和自动化测试。


无论你是否具备嵌入式开发经验,仅需了解基础的 C 编程语言知识,就可以根据这份指南的内容,开启你的裸机开发之旅了, 点击“阅读原文”查看更多指南详情,立即体验吧!





推荐帖子


最新有关Arm社区的文章

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: TI培训

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2021 EEWORLD.com.cn, Inc. All rights reserved