嵌入式面试解析:GCC、DHT11、Modbus与通信协议

5星 · 超过95%的资源 | 下载需积分: 1 | DOCX格式 | 686KB | 更新于2024-08-12 | 80 浏览量 | 33 下载量 举报
1 收藏
本文主要涵盖了嵌入式领域面试中常见的技术问题,包括GCC编译过程、DHT11传感器的工作原理、Modbus协议的特点及结构、CRC校验以及RS485和IIC通信协议的基本知识。 1. GCC编译过程: GCC编译器的四个主要步骤是预处理、编译、汇编和链接。预处理阶段处理宏定义、条件编译指令等,生成预编译文件(扩展名为.i)。编译阶段将预编译文件转化为汇编语言(扩展名为.s)。汇编阶段则把汇编代码转换成机器可理解的目标文件(扩展名为.o)。最后,链接阶段将目标文件与库函数链接,生成可执行文件。 2. DHT11传感器: DHT11是一种常用的湿度和温度传感器,采用主从结构进行通信。主机(MCU)发起请求,从机(DHT11)响应。传感器一次发送40位数据,包含5个字节:湿度整数、湿度小数、温度整数、温度小数和校验位。校验位通过和校验计算得出,确保数据的准确性。温度小数的最高位是符号位,0表示正数,1表示负数。 3. Modbus协议: Modbus是一个开放标准的通信协议,以主从结构运行,适用于各种设备间的简单通信。其特点是协议简单,应用广泛。功能码对应数据类型,PDU(协议数据单元)最长253字节,ADU(应用数据单元)最长256字节,包含地址域、PDU和差错校验。CRC校验用于检测数据传输错误,遵循低字节在前,高字节在后的规则。 4. RS485通信: RS485是一种串行通信接口,允许在多节点网络中进行半双工通信,具有良好的抗干扰性。在同一时刻,只允许一个主节点发送数据,其他节点作为从节点接收。 5. IIC(I2C)总线: IIC总线是一种多主机、多从机的两线制接口,由主机控制数据传输,产生串行时钟SCL并管理起始和停止条件。每个设备都有唯一的地址,主机和从机之间通过数据帧进行通信,包括起始条件、8位数据、应答位和停止条件。从机不会主动向主机发送数据,除非被主机请求。 以上内容是嵌入式初级工程师面试中可能遇到的问题,对于理解和掌握嵌入式系统的基本工作原理和通信协议至关重要。熟悉这些知识点将有助于在面试中展现出扎实的技术基础。

相关推荐