北邮坤坤 level
获赞
132
粉丝
52
关注
0
看过 TA
342
北京邮电大学
2023
C++
IP属地:北京
学习嵌入式两坤年,不要黑我鸽鸽
私信
关注
昨天 10:23
北京邮电大学 C++
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
0 点赞 评论 收藏
分享
1. std::vector的insert()与push_back()的区别是什么?2. unique_ptr底层是如何实现资源管理的?3. C++中的重载与覆盖的原理是什么?4. 一个类的默认构造函数中会包含哪些内容?5. virtual关键字用在哪里?有什么作用?6. 类的成员函数的调用顺序是什么?7. C++中的引用占用的内存大小是多少?8. 什么是悬空指针和内存泄漏?如何避免它们?9. free和delete的区别是什么?10. 多线程编程中可能会遇到哪些问题?如何进行线程同步?11. 什么是C++标准库(STL)?12. 迭代器和索引访问的区别是什么?13. 线程的生命周期有哪些状态,锁的种类有哪些?14. 解释一下std::map和std::unordered_map的区别。15. std::vector的resize()和reserve()有什么不同、以及使用场景?16. 如何实现线程安全,除了使用互斥锁还有哪些方法?17. std::vector扩容时,resize和push_back的区别是什么?18. std::vector扩容时为了避免频繁扩容采取了哪些策略?19. C++中空结构体的大小是多少?20. shared_ptr是如何管理资源的?21. 虚析构函数的底层实现原理是什么?22. 一个函数g(int x, int y),其中x和y的地址关系是什么?23. 移动赋值和拷贝赋值的区别是什么?24. lambda表达式中的捕获方式有哪些?引用捕获时需要注意什么?25. 处理哈希冲突的常见方法有哪些?26. std::unordered_map的扩容机制是怎样的?27. std::vector如何判断是否需要扩容?(size与capacity的关系)28. 构造函数可以被声明为override吗?为什么?29. 类中的静态成员函数可以是虚函数吗?30. 哪些成员函数不能被声明为虚函数?31. 如何确保一个类的实例只能在堆上创建?(私有构造函数、单例模式)32. 请解释你理解的虚继承。33. C++中哪些运算符无法被重载?34. 静态链接和动态链接的区别,动态链接的机制是什么?35. C++中如何调用C语言编写的函数?答案附在面经中  c++/嵌入式面经专栏-牛客网 https://www.nowcoder.com/creation/manager/columnDetail/MJNwoM
0 点赞 评论 收藏
分享
1. 如何在嵌入式系统中实现实时操作系统(RTOS)的基本使用?2. 使用MQTT协议进行物联网设备的消息传递?3. 如何在嵌入式系统中实现音频信号的处理与分析?4. 使用ADC进行模拟信号的采集与数字化?5. 如何在嵌入式系统中实现LED灯的渐变效果?6. 使用SPI与OLED显示屏进行图形显示?7. 如何在嵌入式系统中实现温度控制系统?8. 使用USB接口与外部设备进行数据交互?9. 如何在嵌入式系统中实现数据的加密与解密?10. 使用Lora模块进行远程低功耗数据传输?11. 如何在嵌入式系统中实现语音识别功能?12. 使用PWM控制直流电机的速度?13. 如何在嵌入式系统中实现图像的压缩与存储?14. 使用HTTP协议进行RESTful API的调用?15. 如何在嵌入式系统中实现智能温控系统?16. 使用RFID模块进行物品识别与管理?17. 如何在嵌入式系统中实现环境监测系统?18. 使用CAN总线进行车辆状态监测?19. 如何在嵌入式系统中实现电流和电压的监测?20. 使用GPS模块进行位置跟踪与导航?21. 如何在嵌入式系统中实现数据的远程控制与管理?22. 使用光传感器实现自动调节亮度的灯光系统?23. 如何在嵌入式系统中实现多种传感器的数据融合?24. 使用Zigbee与传感器网络进行环境监测?25. 如何在嵌入式系统中实现电机的闭环控制?26. 使用RTC模块进行定时唤醒功能?27. 如何在嵌入式系统中实现用户输入的处理?28. 使用BLE模块进行低功耗无线通信?29. 如何在嵌入式系统中实现电池充电管理?30. 使用图像处理算法实现目标识别与跟踪? 我面试看的是大佬的面经,链接放下边了  c++/嵌入式面经专栏-牛客网 https://www.nowcoder.com/creation/manager/columnDetail/MJNwoM
0 点赞 评论 收藏
分享
嵌入式开发就是指在嵌入式操作系统下进行开发,包括在系统化设计指导下的硬件和软件以及综合研发。除暂且分离硬件的EDA研发以外,侧重的就是在一定硬件条件下的系统化设计和软件研发。定义嵌入式开发是指利用分立元件或集成器件进行电路设计、结构设计,再进行软件编程(通常是高级语言),实验,经过多轮修改设计、制作,最终完成整个系统的开发。这种嵌入式开发,适用于未来产品比较单一,产量比较大,产品开发周期比较长,成本控制比较严格的系统。嵌入式技术不是单纯的软件技术,也不是单纯的硬件技术,是一门如何在一个特定的硬件环境上开发与构建特定的可编程软件系统的综合技术。嵌入式技术是在嵌入式系统的发展中应运而生的,它是依附于嵌入式系统,并推动嵌入式系统不断向前发展的核心动力。嵌入式是一种专用的计算机系统,作为装置或设备的一部分。通常,嵌入式系统是一个控制程序存储在ROM中的嵌入式处理器控制板。事实上,所有带有数字接口的设备,如手表、微波炉、录像机、汽车等,都使用嵌入式系统,有些嵌入式系统还包含操作系统,但大多数嵌入式系统都是是由单个程序实现整个控制逻辑。嵌入式技术近年来得到了飞速的发展,但是嵌入式产业涉及的领域非常广泛,彼此之间的特点也相当明显。例如,很多行业:手机、PDA、车载导航、工控、军工、多媒体终端、网关、数字电视等。 主流平台主流的嵌入式平台有三种:ARM平台、DSP平台和FPGA平台。一、ARMARM微处理器是由ARM公司提供IP(Intellectual Property,知识产权)授权,交付多个芯片设计厂商整合生产的。在2007年,意法半导体(ST)公司成为第一个引入ARM Cortex-M授权的半导体厂商,开启了高性能、低成本、低功耗的ARM嵌入式芯片新时代,其生产的STM32系列微处理器是最流行的Cortex-M微处理器。ARM嵌入式系统广泛应用于自动检测与控制、智能仪器仪表、机电一体化设备、汽车电子及日常消费电子产品中,其优越的性能和完善的开发环境得到广大电子工程师的青睐。二、DSP平台嵌入式DSP处理器(Embedded Digital Signal Processor,EDSP),是专门用于信号处理方面的处理器,其在系统结构和指令算法方面进行了特殊设计,芯片内部采用程序和数据分开存储及传输的哈佛结构,具有专门硬件乘法器,采用流水线操作,提供特殊的DSP指令,可用来快速地实现各种数字信号处理算法,具有很高的编译效率和指令的执行速度,在数字滤波、FFT、谱分析等各种仪器上获得了大规模的应用。三、FPGA平台随着平台级FPGA产品的出现和EDA设计工具软件的不断发展,利用现有的FPGA和EDA工具,人们也可以很方便地在FPGA中嵌入RISC(Reduced Instruction Set Computer,精简指令集)处理器内核、DSP算法、存储器、专用ASIC模块、其它数字IP Core以及用户定制逻辑等,构建成一个可编程的片上系统(SOPC),把原来需要在PCB上采用处理器、DSP、若干ASIC芯片才能实现的功能全都集成到了单片FPGA上。FPGA内部嵌入了丰富的乘法器(DSP)资源、高速收发器(GTP/GTX)资源、以太网MAC资源、嵌入式处理器(Power PC)资源、时钟及锁相环资源、存储器(BRAM)资源等,甚至在Xilinx公司最新推出的Zynq-7000系列芯片之中嵌入了ARM资源,将传统的FPGA演变成了ARM+FPGA的扩展开发平台。这些嵌入的硬件资源极大地增强了传统FPGA的功能,提升了FPGA的工作效率和灵活性,使得一块FPGA平台就可适用于多种产品,进行各种扩展。开发者只需要掌握Verilog HDL等硬件描述语言和嵌入式系统开发的相关知识,就可对整个系统进行编程和控制。  我面试看的是大佬的面经,链接放下边了  c++/嵌入式面经专栏-牛客网 https://www.nowcoder.com/creation/manager/columnDetail/MJNwoM
0 点赞 评论 收藏
分享
1. 如何在嵌入式系统中实现蓝牙模块的AT指令解析?2. 使用SPI与DAC进行音频信号的输出?3. 如何在嵌入式系统中实现电池电量监测?4. 在STM32中配置并使用USART进行串口调试?5. 嵌入式系统中如何实现多路复用(MUX)?6. 使用PWM控制步进电机的运动?7. 如何在嵌入式系统中实现温湿度传感器的数据采集?8. 使用I2C与加速度传感器进行数据传输?9. 如何在嵌入式系统中实现图像采集与处理?10. 在FreeRTOS中使用信号量进行任务间同步?11. 如何在嵌入式系统中实现USB设备的识别与通信?12. 使用RTC模块实现定时唤醒和定时任务?13. 如何在嵌入式系统中实现数据的压缩与解压?14. 使用CAN总线进行实时数据监控?15. 如何在嵌入式系统中实现数据的实时传输与处理?16. 在STM32中配置ADC的多通道采集?17. 嵌入式系统中如何实现网络时间协议(NTP)?18. 使用DMA进行图像数据的传输?19. 如何在嵌入式系统中实现音频信号的处理与回放?20. 在RT-Thread中实现文件系统操作?21. 如何在嵌入式系统中实现环境光传感器的应用?22. 使用Zigbee进行智能家居控制?23. 如何在嵌入式系统中实现数据的加密与解密?24. 在STM32中使用外部中断进行事件触发?25. 嵌入式系统中如何实现电流监测与控制?26. 如何在嵌入式系统中实现多种传感器的数据融合?27. 使用NFC模块进行近场通信?28. 如何在嵌入式系统中实现数据的持久化存储?29. 在FreeRTOS中实现任务的优先级动态调整?30. 如何在嵌入式系统中实现LED灯的闪烁模式?我面试看的是大佬的面经,链接放下边了  c++/嵌入式面经专栏-牛客网 https://www.nowcoder.com/creation/manager/columnDetail/MJNwoM
0 点赞 评论 收藏
分享
1. 实时系统 如何实现任务的优先级继承?2. 任务状态有哪些?3. 如何使用队列实现任务间的消息传递?4. FreeRTOS如何处理时间片轮转调度?5. 如何使用软件定时器实现周期性任务?6. FreeRTOS中如何处理任务的堆栈溢出?7. 如何在FreeRTOS中实现任务的优先级动态调整?8. 如何使用事件组实现多任务间的同步?9. FreeRTOS中如何实现多任务的负载均衡?10. 如何使用信号量实现生产者-消费者模型?11. FreeRTOS中如何进行任务的延时等待?12. 如何实现任务的状态机设计?13. FreeRTOS中如何配置和使用硬件定时器?14. 如何使用互斥量实现临界区保护?15. FreeRTOS中如何监控任务的内存使用情况?16. 如何实现任务的优先级动态提升?17. FreeRTOS中的任务优先级如何影响系统性能?18. 如何使用回调机制处理异步事件?19. FreeRTOS中如何使用消息缓冲区?20. 如何利用FreeRTOS的API进行任务的调试?21. FreeRTOS中如何实现任务的动态堆栈分配?22. 如何使用信号量实现任务的互斥访问?23. FreeRTOS中如何实现任务的重启机制?24. 如何使用事件标志组实现任务间的通信?25. FreeRTOS中如何处理硬件中断的优先级?26. 如何在FreeRTOS中实现任务的负载监控?27. FreeRTOS如何支持多核处理器的任务调度?28. 如何使用FreeRTOS的API进行系统性能分析?29. FreeRTOS中如何处理任务的异常和错误?30. 如何优化FreeRTOS的内存管理策略?分享不易,关注我分享更多面试知识,嵌入式c++的同学可以看一下大佬总结的面经  c++/嵌入式面经专栏-牛客网 https://www.nowcoder.com/creation/manager/columnDetail/MJNwoM
0 点赞 评论 收藏
分享
1. 在嵌入式设备中,我们怎么让它通过蓝牙发送和接收数据?2. 当多个任务需要使用同一个资源时,我们该如何管理它们之间的关系?3. 如果我想通过I2S接口传输音频数据,具体步骤是什么?4. 在FreeRTOS中,我要如何让一个任务暂停一段时间再继续运行?5. 怎么通过SPI接口从EEPROM中读取数据呢?6. PWM控制电机速度的原理是什么,具体是怎么实现的?7. 我们如何在嵌入式系统中添加文件系统的支持,让它能读写文件?8. 如何使用ADC读取光敏电阻的值,步骤是怎样的?9. 嵌入式系统怎么进入低功耗模式,节省电能?10. 如何利用中断来实现一个脉冲计数器的功能?11. 嵌入式设备如何与网络同步时间,确保时间准确?12. 如果我想通过MQTT协议远程控制设备,该怎么做?13. 在FreeRTOS中,怎么实现任务之间的优先级继承,避免优先级反转?14. 如何通过CAN总线来监控和控制工业设备?15. 在FreeRTOS中,如何使用软件定时器来定时执行任务?16. 我们如何使用DMA来快速采集ADC的数据?17. 在嵌入式系统中,如何设计一个图形用户界面(GUI)?18. 如果我想通过HTTP协议把设备的数据上传到服务器,应该怎么做?19. 在FreeRTOS中,如何查询任务的状态,知道它们在做什么?20. 如何通过USB CDC接口实现设备的串口通信?21. 嵌入式设备如何实现音频录制功能,步骤是什么?22. 我们如何通过网络给设备进行配置更新,确保它能正常工作?23. 使用GPIO控制步进电机的具体方法是什么?24. 在FreeRTOS中,如何使用事件组来管理任务之间的事件?25. 如何使用SD卡来备份和恢复数据,确保数据安全?26. 嵌入式系统如何与外部传感器进行连接和通信?27. 如何利用UART接口来进行设备的故障诊断,找出问题所在?28. 在FreeRTOS中,如何使用互斥量来保护共享资源?29. 如何使用DAC输出模拟信号来控制音量,具体步骤是什么?30. 嵌入式系统如何记录和分析系统日志,以便后续排查问题?我面试看的是大佬的面经,链接放下边了  c++/嵌入式面经专栏-牛客网 https://www.nowcoder.com/creation/manager/columnDetail/MJNwoM
0 点赞 评论 收藏
分享
秋招面经1. 如何在嵌入式系统中实现蓝牙通信?2. 使用GPIO控制步进电机的运动。3. 嵌入式系统中如何实现看门狗定时器?4. 如何使用I2S接口进行音频数据传输?5. FreeRTOS中如何实现任务的时间片轮转调度?6. 如何使用CAN进行汽车故障诊断?7. 嵌入式系统中如何实现气体泄漏监测?8. 使用PWM控制电机的速度。9. 在FreeRTOS中如何实现消息队列机制?10. 如何在嵌入式系统中实现图像处理?11. 使用ADC进行温度传感器数据采集。12. FreeRTOS中如何实现任务的优先级继承?13. 使用中断处理温度传感器的输入事件。14. 在嵌入式系统中如何实现数据压缩?15. 如何使用LoRa进行远程无线通信?16. 嵌入式系统中如何实现智能家居控制?17. 使用DMA进行ADC数据采集。18. 在FreeRTOS中如何实现任务的周期性调度?19. 如何在嵌入式系统中实现OLED显示?20. 使用RTOS实现多线程网络通信。21. 如何在嵌入式系统中实现音频录制?22. 使用GPIO实现按键输入的去抖动处理。23. 在FreeRTOS中如何实现任务的优先级动态调整?24. 如何使用NFC进行近场通信?25. 嵌入式系统中如何实现电池电量监测?26. 使用I2C与气压传感器进行数据采集。27. 在FreeRTOS中如何实现任务的资源共享?28. 如何在嵌入式系统中实现数据日志记录?29. 使用RS-485总线实现工业设备通信。30. 在嵌入式系统中如何实现设备的固件升级?嵌入式C++面经推荐大佬面经  链接在下边  c++/嵌入式面经专栏-牛客网 https://www.nowcoder.com/creation/manager/columnDetail/MJNwoM
0 点赞 评论 收藏
分享
秋招面经1. 如何在嵌入式系统中实现蓝牙通信?2. 使用GPIO控制步进电机的运动。3. 嵌入式系统中如何实现看门狗定时器?4. 如何使用I2S接口进行音频数据传输?5. FreeRTOS中如何实现任务的时间片轮转调度?6. 如何使用CAN进行汽车故障诊断?7. 嵌入式系统中如何实现气体泄漏监测?8. 使用PWM控制电机的速度。9. 在FreeRTOS中如何实现消息队列机制?10. 如何在嵌入式系统中实现图像处理?11. 使用ADC进行温度传感器数据采集。12. FreeRTOS中如何实现任务的优先级继承?13. 使用中断处理温度传感器的输入事件。14. 在嵌入式系统中如何实现数据压缩?15. 如何使用LoRa进行远程无线通信?16. 嵌入式系统中如何实现智能家居控制?17. 使用DMA进行ADC数据采集。18. 在FreeRTOS中如何实现任务的周期性调度?19. 如何在嵌入式系统中实现OLED显示?20. 使用RTOS实现多线程网络通信。21. 如何在嵌入式系统中实现音频录制?22. 使用GPIO实现按键输入的去抖动处理。23. 在FreeRTOS中如何实现任务的优先级动态调整?24. 如何使用NFC进行近场通信?25. 嵌入式系统中如何实现电池电量监测?26. 使用I2C与气压传感器进行数据采集。27. 在FreeRTOS中如何实现任务的资源共享?28. 如何在嵌入式系统中实现数据日志记录?29. 使用RS-485总线实现工业设备通信。30. 在嵌入式系统中如何实现设备的固件升级?嵌入式C++面经推荐大佬面经  链接在下边  c++/嵌入式面经专栏-牛客网 https://www.nowcoder.com/creation/manager/columnDetail/MJNwoM
0 点赞 评论 收藏
分享
秋招到底谁在拿offer?秋招嵌入式笔记第2天1. 如何在嵌入式系统中实现实时数据采集?2. 使用UART进行设备间通信的注意事项?3. 在FreeRTOS中如何实现任务的延时功能?4. 如何使用SPI与传感器进行数据交换?5. 在嵌入式系统中如何配置和使用TCP/IP协议栈?6. 使用PWM信号控制伺服电机的角度?7. FreeRTOS中如何实现互斥量的使用?8. 如何在嵌入式系统中实现低功耗模式?9. 使用I2C与温度传感器进行数据读取?10. 在FreeRTOS中如何实现任务的通知机制?11. 如何配置ADC进行温度传感器的读取?12. 在嵌入式系统中如何实现数据压缩?13. 使用PWM控制电机速度的基本原理?14. FreeRTOS中如何实现任务的优先级反转?15. 如何使用中断处理按键输入?16. 在嵌入式系统中如何实现数据的CRC校验?17. 使用CAN总线进行车辆数据通信的基本原理?18. 在FreeRTOS中如何实现事件组的使用?19. 如何使用外部中断响应传感器数据变化?20. 在嵌入式系统中如何实现压力传感器的读取?21. 使用DMA进行音频数据传输的优势和实现方法?22. FreeRTOS中如何实现软件定时器的使用?23. 如何在嵌入式系统中实现图像传输?24. 使用RTC进行定时事件的调度?25. 在FreeRTOS中如何监控内存使用情况?26. 使用USB进行设备识别和通信的基本原理?27. 在嵌入式系统中如何实现音频录制?28. 使用MQTT协议进行设备状态监控?29. 如何在FreeRTOS中实现任务的时间管理?30. 在嵌入式系统中如何实现固件的安全更新机制?嵌入式C++面经推荐大佬面经  链接在下边  c++/嵌入式面经专栏-牛客网 https://www.nowcoder.com/creation/manager/columnDetail/MJNwoM
0 点赞 评论 收藏
分享
关注他的用户也关注了:
牛客网
牛客企业服务