嵌入式系统开发

加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论
  • 一个嵌入式线程池的极简实现!
    C-Thread-Pool 是一个轻量级且高效的线程池实现,适用于嵌入式系统开发。它基于 POSIX 标准,具有极简的 API 设计和精巧的同步机制,能够有效降低线程创建和销毁的性能开销,并支持动态任务管理和资源控制。该库包含完整的线程池功能,如任务队列、线程复用和状态查询,适合用于数据处理、网络通信和传感器数据采集等多种应用场景。
    一个嵌入式线程池的极简实现!
  • 用一套IDE管理、开发和保护您的主要Arm工程资产
    作者:夏青 随着嵌入式系统开发的复杂度不断提升,开发人员参与的项目随时可以超越Cortex-M系列,这对集成开发环境(IDE)也提出了更高的要求,最好能够用一套IDE来管理、开发和保护日益多样化的工程项目。Keil MDK和IAR EWARM是市面上最常见的两款用于Arm Cortex-M MCU开发的集成开发环境。目前Keil MDK主要支持Arm Cortex-M,对于Arm Cortex-A
    862
    2025/04/29
    用一套IDE管理、开发和保护您的主要Arm工程资产
  • 化繁为简,软件解决异构多核嵌入式系统开发七大挑战
    针对异构多核嵌入式系统遇到的开发难度,Mentor Graphics(明导)公司近日推出了一款嵌入式虚拟机产品,与明导公司原有的实时操作系统、嵌入式Linux操作系统、Android操作系统,Sourcery工具链,Volcano电子控制单元和网络工具,AUTOSAR开发套件以及用户可自由配置的工具链一起,为异构多核嵌入式软件开发提供全面
  • 如何利用HardFault异常定位程序崩溃点?
    在嵌入式系统开发中,程序运行时可能会遇到各种异常情况,其中HardFault异常是一种比较常见的异常类型。当程序运行出现HardFault异常时,系统会停止工作且很难通过常规调试手段找到具体的问题点。因此,有效地利用HardFault异常来定位程序崩溃点对于解决嵌入式系统开发中的故障非常重要。本文将介绍如何利用HardFault异常定位程序崩溃点的方法和技巧。
  • RTOS任务栈配太小,为什么会导致HardFault?
    在嵌入式系统开发中,实时操作系统(RTOS)扮演着重要的角色,使多任务并发执行成为可能。然而,当RTOS任务栈分配过小时,可能会引发严重问题,其中最常见的是HardFault。本文将探讨RTOS任务栈大小与HardFault之间的关系,解释为何任务栈太小会导致HardFault的发生。
  • 嵌入式中“不检查函数返回值”为什么是常见的危险编程实践?
    在嵌入式系统开发中,忽略函数返回值是一种危险的编程实践,可能引发严重的程序故障和安全问题。通过对函数返回值的检查,可以及时发现潜在的错误和异常,确保系统的稳定性和可靠性。借助良好的编程习惯、详细的日志记录、错误处理机制、代码审查和测试等手段,可以有效避免忽略函数返回值所带来的危险,并提高软件开发的效率和质量。在嵌入式系统设计中,开发人员应当意识到忽略函数返回值可能导致的风险,并努力遵循最佳实践,养成良好的编程习惯。通过持续的学习和实践,可以提升对函数返回值重要性的认识,减少因忽略函数返回值而引发的潜在问题,从而确保嵌入式系统的正常运行和稳定性。
  • 新做的MCU板子,SWD无法连接下载程序,可能是什么原因?
    在嵌入式系统开发中,一种常见的调试和下载接口是Serial Wire Debug(SWD),用于与Microcontroller Unit(MCU)板子进行通信、调试以及下载程序。然而,在新制作的MCU板子上,出现SWD无法连接下载程序的情况并非罕见。本文将探讨可能导致这一问题的原因,并提供解决方案以帮助工程师解决SWD连接问题。
  • volatile关键字在嵌入式编程中的意义是什么?哪些场景必须使用? 
    在嵌入式系统开发中,volatile关键字起着非常重要的作用,特别是在处理外部硬件访问、多任务并行执行、中断处理、实时操作系统等场景下。通过使用volatile关键字,可以防止编译器对变量进行不必要的优化,确保程序的正确性和可靠性。
  • volatile关键字在嵌入式编程中的意义是什么?哪些场景必须使用?
    在嵌入式系统开发中,volatile关键字的作用是确保编译器不会对其修饰的变量进行优化,从而避免因为编译器优化而产生的意外行为。在涉及到硬件寄存器、中断服务程序中的变量、多线程共享数据、外部中断标志位以及实时时钟/定时器中断等场景下,必须使用volatile关键字来声明相关变量,以保证系统的稳定性和可靠性。volatile关键字在嵌入式系统中确保了程序与外部环境(硬件、中断、多线程等)的正确交互。然而,在使用volatile时也需谨慎,因为过度使用可能会导致代码的复杂性增加,降低代码的可读性和维护性。因此,在选择使用volatile关键字时,需要权衡好其必要性和影响范围,避免不必要的使用。
  • KEIL
    KEIL是一款广泛用于嵌入式系统开发的软件工具。它支持多种常见的微型控制器架构和编程语言,并提供了丰富的调试辅助功能,能够帮助开发人员高效快速地开发和调试嵌入式系统。
  • uLisp
    uLisp是一种基于Lisp语言的嵌入式系统开发工具,它可以在嵌入式设备中运行,支持多种硬件平台和操作系统。uLisp具有高度可定制化、兼容性好、易学易用等特点。
  • uBASIC
    uBASIC是一种基于BASIC语言的嵌入式系统开发工具,它可以在嵌入式设备中运行,支持多种硬件平台和操作系统。uBASIC在体积和性能方面都有很好的折衷,可以实现较为复杂的应用程序。
  • 嵌入式系统开发
    嵌入式系统是指集成一定计算机功能的电子系统,通常被用于控制、监视或执行特定任务。嵌入式系统开发是一种将软件与硬件有机结合的技术,它涉及到多个领域,包括电子工程、计算机科学、通信技术等。
  • volatile关键字在嵌入式中有哪些必须使用的场景?
    在嵌入式系统开发中,volatile关键字扮演着重要的角色。它告诉编译器该变量可能在程序执行期间任何时间点被外部因素更改,因此应该直接从内存中读取或写入,而不是依赖于寄存器缓存。本文将探讨volatile关键字在嵌入式系统中的必须使用场景。
  • IAP升级时,中断向量表如何重映射?
    在嵌入式系统开发中,In-Application Programming(IAP)是一种常见的技术,用于通过软件方式对设备的固件进行更新。在进行IAP升级时,通常需要重映射中断向量表,以确保新固件能够正确处理各种中断情况。本文将探讨IAP升级时中断向量表的重映射原理及实现方法。
  • 嵌入式系统开发是做什么的 嵌入式系统开发的基本流程
    嵌入式系统开发是通过软硬件协同设计,将计算机系统集成到产品或设备中,以实现特定功能的技术。嵌入式系统通常由处理器、存储器、输入输出接口和必要的软件组成。它们被广泛应用于各种日常生活中的电子设备,包括智能手机、冰箱、电视、汽车、机器人等。

正在努力加载...