问下大佬还记得G社笔试题吗?行测和游戏常识类题目占比大吗?还是都是简答题呀?
1 1

相关推荐

1. 嵌入式系统的组成嵌入式系统通常由以下几个部分组成:硬件平台:包括微处理器(如ARM、MIPS、x86等)、传感器、执行器、输入输出设备(如LCD、按键、LED等)。操作系统:嵌入式系统可以使用实时操作系统(RTOS)或裸机(bare-metal)开发。RTOS如FreeRTOS、uC/OS-II等,裸机编程通常指直接与硬件打交道,没有操作系统的介入。软件:包括驱动程序、应用程序、系统软件等。驱动程序负责硬件与软件的通信,应用程序则实现系统功能。2. 嵌入式开发工具链嵌入式开发通常需要一系列的开发工具:集成开发环境(IDE):常用的IDE有Keil、IAR Embedded Workbench、Eclipse等,它们提供了代码编辑、编译、调试等功能。编译器:常见的嵌入式编译器有GCC、ARM Compiler等,能够将源代码编译成适合嵌入式平台的机器代码。调试器:如JTAG调试器、ST-Link、OCD等,用于调试程序的执行,帮助开发者查看寄存器、内存等信息,实时诊断问题。仿真器:帮助开发者在没有实际硬件的情况下测试代码。3. 嵌入式编程语言嵌入式开发中,最常用的编程语言是:C语言:几乎所有嵌入式开发都使用C语言,因为它能够直接操作硬件,提供较高的执行效率,并且占用内存较少。嵌入式开发中,C语言常用于编写驱动、操作系统和应用层代码。汇编语言:对于需要极高性能和硬件控制的任务,汇编语言有时用于优化代码,直接操作硬件寄存器。C++:在一些复杂的嵌入式系统中,C++用于面向对象编程,尤其是在处理较为复杂的算法时。4. 嵌入式开发中的实时性要求实时性是嵌入式系统中至关重要的概念,特别是在处理信号采集、控制系统时。根据实时性要求,嵌入式系统可以分为:硬实时系统:对时间要求非常严格,任务必须在规定的时间内完成,否则将导致系统失败。例如,航空航天、医疗设备等。软实时系统:虽然有时间限制,但如果超时不会导致系统完全失败,系统仍然能正常工作。例如,视频播放、音频处理等。5. 基本的嵌入式开发流程嵌入式开发流程一般包括以下步骤:需求分析:明确系统的功能需求、硬件需求、性能要求等。硬件选择:选择适合的微控制器(MCU)或微处理器(MPU),并了解其硬件资源(如GPIO、UART、SPI、I2C等外设)。软件设计:根据需求设计嵌入式软件架构,包括驱动、RTOS配置、应用层逻辑等。编程与调试:在开发环境中编写代码,进行调试和测试,确保软件的正确性和性能。测试与验证:在目标硬件上进行系统测试,验证软件和硬件的协同工作。  c++/嵌入式面经专栏-牛客网 https://www.nowcoder.com/creation/manager/columnDetail/MJNwoM
点赞 评论 收藏
分享
嵌入式学习之路:进阶阶段一、进阶阶段(6 - 12 个月)深入学习知识体系操作系统:深入理解嵌入式操作系统的原理和机制,如实时操作系统(RTOS)。学习任务调度、中断处理、内存管理等核心概念。推荐研究 FreeRTOS 等开源 RTOS,并阅读相关的技术文档和书籍。通信协议:掌握常见的嵌入式通信协议,如 UART、SPI、I2C 等。了解这些协议的工作原理和应用场景,通过实际项目进行协议的编程实现。推荐阅读《嵌入式系统通信协议实战》。数据结构与算法:学习基本的数据结构(链表、栈、队列、树等)和算法(排序、搜索等),提高程序的效率和性能。可以参考《数据结构与算法分析(C 语言描述)》,并在在线编程平台上进行算法练习。开发工具进阶集成开发环境(IDE):熟练使用专业的嵌入式开发 IDE,如 Keil、IAR 等。掌握项目创建、代码编辑、编译、调试等全流程操作。版本控制工具:学会使用版本控制工具,如 Git,进行代码管理和团队协作。了解分支管理、合并冲突解决等基本操作。硬件平台拓展尝试使用更复杂的嵌入式开发板或模块,如 STM32 系列微控制器。深入了解其硬件架构、外设功能和编程方法。通过实际项目,如电机控制、传感器数据采集等,提升硬件开发能力。嵌入式C++面试冲刺可以看大佬面经  链接在下边  c++/嵌入式面经专栏-牛客网 https://www.nowcoder.com/creation/manager/columnDetail/MJNwoM
点赞 评论 收藏
分享
牛客网
牛客企业服务