首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
一勺西瓜
重庆邮电大学 嵌入式软件开发
发布于重庆
关注
已关注
取消关注
@Hcoco:
面试真题 | 浙江大华
大华一面 嵌入式 主要是问的项目相关 标准的十五分钟 电话面 这个面试官主要问项目,我同门面的全问八股,可能面试官不一样吧 @[toc] 话说很多硬件终端、军工研究所都很喜欢考通信协议相关的知识。 往期内容:ARM/Linux嵌入式面经z专栏 UART串口通信的波特率,常用波特率有哪些 UART(Universal Asynchronous Receiver / Transmitter)是一种异步数据传输技术,它使用特定的波特率来传输数据。UART波特率是指每秒传输的数据位数,也称为波特率或传输速率。 UART波特率有多种,其中最常用的是2400、4800、9600、19200、38400、57600、115200。 串口通信校验方式是什么,有什么区别 利用串口传输数据时,近距离传输还好,远距离传输由于线路长度影响,可能会使信号在传输过程中出现不可预知的错误,为了达到通信的稳定性,在远距离通信时一般要引入一种校验方式来去除干扰。 这里主要介绍几种常见的校验方式,也是我们串口通讯板子上需要添加的几种校验方式。 即奇校验ODD,偶校验EVEN,累加和校验,CRC循环码冗余码校验 方便简单的奇偶校验 奇偶校验需要一位校验位,即使用串口通信的方式2或方式3(8位数据位+1位校验位)。 奇校验(odd parity):让传输的数据(包含校验位)中1的个数为奇数。 即:如果传输字节中1的个数是偶数,则校验位为“1”,奇数相反。 以发送字符:10101010为例 偶校验(even parity) 让传输的数据(包含校验位)中1的个数为偶数。 即:如果传输字节中1的个数是偶数,则校验位为“0”,奇数相反。 还是以发送字符:10101010为例 数据和校验位发送给接受方后,接收方再次对数据中1的个数进行计算,如果为奇数则校验通过,表示此次传输过程未发生错误。如果不是奇数,则表示有错误发生,此时接收方可以向发送方发送请求,要求重新发送一遍数据。 优缺点: 奇偶校验的检错率只有50%,因为只有奇数个数据位发生变化能检测到,如果偶数个数据位发生变化则无能为力了╮(╯﹏╰)╭ 奇偶校验每传输一个字节都需要加一位校验位,对传输效率影响很大。 奇偶校验只能发现错误,但不能纠正错误,也就是说它只能告诉你出错了,但不能告诉你怎么出错了,一旦发现错误,只好重发。 虽然奇偶校验有很多缺点,但因为其使用起来十分简单,故目前仍被广泛使用。 应用: 如何用编程确定一个字节中“1”个数的奇偶性?我们可以利用二进制数相加的特点: 0+0=0、1+0=1、1+1=0 可以看出,如果我们将一个字节的所有位相加 有奇数个“1”的字节的和为1 +有偶数个“1”的字节的和为0 由此即可通过编程完成判断。实际应用中,实现方法很多,但这是相对简单的一种,这里不再赘述。 累加和校验 所谓的累加和校验有很多种,最常见的一种是在每次通信数据包最后都加一个字节的校验数据,这个校验字节里的数据是通信数据包里所有数据的不进位累加和。例如: 接收方接收到数据后同样对一个数据包的数据进行不进位累加和计算,如果累加出的结果与校验位相同的话就认为传输的数据没有错误。 优缺点: 实现起来方便简单,被广泛运用。 检错率一般,例如一个字节多1,一个字节少1,则会出现误判。 和奇偶校验一样,只能发现错误,但不能纠正错误。 另外,累加和校验的数据传输格式可以表示为:通讯数据+校验数据。这与我们之后要说的CRC循环冗余码校验是相同的。 虽然奇偶校验和累加和校验使用方便,应用广泛,但由于其存在许多缺点,在一些使用场合下很难满足要求,于是就有了更稳定更强大的校验方式,它就是……CRC循环冗余码校验! CRC循环冗余码校验 CRC 即 Cyclic Redundancy Check 的缩写 CRC 循环冗余校验属于检错码,只能检测出现了错误,但无法纠正错误。 与CRC循环冗余校验类似的,还有奇/偶校验,但是 CRC 漏检率更低,因此在实际应用中更为重要 发送方对原始数据追加校验码 假设原始数据是:101001 生成待追加的校验码,需要使用一个生成多项式,G(x)(收发双方事先约定),例如 G(x) = x3 + x2 + 1 构造被除数:原始数据 + 生成多项式最高次项个0,即:101001000 除数:除数实际上就是生成多项式的系数,G(x) 展开得到: G(x) = 1 * x3 + 1 * x2 + 0 * x1 + 1 * x0,即 1101 两数相除得余数,并进行补位(补到与生成多项式最高次项一致),即得到校验码。但是,这里的除法跟常规除法并不相同 常规除法在上下两行数进行运算时,使用的是减法运算,而这里使用的是异或 接收方对收到的数据进行校验 继续接前文,假设收到的数据为 101001001 接收方对该数据做除法,除数仍然是之前使用的多项式的系数 1101 过程如下 若余数为0,则表示未出错 假设,接收方收到的数据出现了错误: 101101001,校验过程如下: 余数不为0,则表示传输过程中出现了错误 结语 计算CRC校验码时,用到的除法运算,内部使用的是异或运算而非减法运算 计算出余数后,还要对其进行补位,才能得到最终使用的校验码 在计算机网络中,数据链路层将数据封装成帧时,会在帧尾添加校验码,从而判断数据在传输过程中是否发生错误 在实际使用CRC时,采用的生成多项式更为复杂,从而确保较低的漏检率 另外,生成多项式的常数项必须是1 参考资料: https://blog.csdn.net/TL18382950497/article/details/113794438 https://zhuanlan.zhihu.com/p/29693940 有校验位和无校验位的区别 iic收发数据的流程 IIC 即 inter-integrated-circuit,又称 I2C 一种总线结构,具体接受请度娘。 I2C串行总线一般有两根信号线,一根是双向的数据线SDA,另一根是时钟线SCL。所有接到I2C总线设备上的串行数据SDA都接到总线的SDA上,各设备的时钟线SCL接到总线的SCL上。 以下为mini2440的IIC设备:AT24C08 IIC遵从 主/从结构,通信由主机发起,并且由主机结束。 开始信号(s):当时钟信号处于高电平,向数据信号线发送下降沿。 结束信号(p):当时钟信号处于高电平,向数据信号线发送上升沿。 由于IIC总线上可能连有多个设备,因此我们应该在开始信号后进行设备选择,也就是发送地址信号,当设备收到符合自己地址的信号后会返回响应。 一般地址位宽为7位,而发送的数据位为8位,除了7位地址,剩下的一位为读写位。 如果为写,则在设备返回ack信号后,接着主机发送8位数据,当设备收到数据后,设备返回ack信号。 如果为读,则在设备返回ack信号后,接着设备返回8位数据,当主机接收到信号后,接下来的ack信号就由主机发送。 Data Transferred段周而复始,直到数据传输完成。 而在主机发送(R)或者接受(W)到ack信号后,会产生中断,我们可以在中断处理程序中对数据进行进一步处理,或者在中断处理程序内继续发送/接收数据。 当传输完成后, 如果主机作为数据发送方,可以发送停止信号,终止IIC传输过程。 如果主机作为数据接收方,可以不发送响应信号ack,终止传输过程。 寄存器配置: 根据芯片手册,IICCON用于初始化,其余用于数据传输的相关操作。 IICCON: IIC控制寄存器 IICDS: IIC数据移位寄存器 IICSTAT: IIC状态寄存器 IICADD: IIC地址寄存器 流程如下 主机发送流程: 主机接收流程: 设备发送流程: 设备接收流程: 另外,对于AT24C08,值得注意的是,该设备是先进行地址选择(非IIC设备的地址选择,而是AT24C08内部的地址选择),然后进行数据读
点赞 5
评论 3
全部评论
推荐
最新
楼层
暂无评论,快来抢首评~
相关推荐
今天 17:54
科大讯飞_教育BG_后端开发(准入职员工)
诚实作答,从容应对
面试中遇到不会的问题,不必慌张掩饰。坦诚说明自己暂时不了解,同时表达愿意学习补充的态度,再结合相关经验简单阐述思路。既体现真诚,也展现应变力与学习意愿,远比不懂装懂更能赢得认可。#面试被问到不会的问题,你怎么应对?#
点赞
评论
收藏
分享
03-26 13:09
广西大学 算法工程师
信雅达 AI Agent开发 二面
1. 你做过的 Agent 项目里,Agent 和普通问答系统最大的区别是什么?普通问答系统更多是输入一个问题,模型生成一个回答,核心在回答质量。Agent 更强调任务闭环,不只是回答,还要规划步骤、调用工具、拿到结果、根据结果继续下一步,最后把任务完成。也就是说,问答系统重点是“说”,Agent 重点是“做”。如果项目里接了数据库查询、知识库检索、接口调用、审批流或者脚本执行,那基本就已经不是单纯的聊天系统了。2. 你怎么理解 Agent 的核心组成?一个完整的 Agent 一般包括模型、Prompt、工具、记忆、规划、执行控制这几部分。模型负责理解和推理,Prompt 负责约束行为,工具负...
AI-Agent面试实战...
点赞
评论
收藏
分享
03-07 02:28
南京理工大学 Java
27届找实习
年后投到现在至今0约面,是哪里出了问题,是背景问题还是简历问题呢希望大佬指点一下
I_can_do_b...:
问题不大,现在就是开的少,校友别太焦虑
点赞
评论
收藏
分享
03-05 22:34
河南工程学院 测试开发
感觉自己废了,找个正式就这么难吗
原本想以为实习经历就更好找正式了,但是恰恰相反,在boss上面,石沉大海,要么是实习转正,要么必须线下面试,我真没招了,准备跳楼了
点赞
评论
收藏
分享
今天 17:30
科大讯飞_教育BG_后端开发(准入职员工)
Vibe Coding 会干掉初级岗位吗?
我认为是会的,cursor 现在的 vibe coding 能很快从 0 到 1 进行代码的自动生成了,不仅快,生成的代码还不差。至少对于不怎么复杂的系统还是能够使用的。我觉得可以这样比喻AI实现的系统目前可以达到了 80 分,有些时候80分就够用了,有时候需要我们程序员优化到100分。时代在不断的进步,我们也要不断进步才行。#Vibe Coding 会干掉初级岗位吗?#
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
Vibe Coding开发前的 7 个关键步骤
1.2W
2
...
我放弃互联网大厂了。。
3556
3
...
AIcoding上线了!你确定不来刷刷?
3419
4
...
如何把面试主动权握在手里?Ai岗面试焚诀!
3283
5
...
笔试做完两周没动静,我查了进度才知道不是挂了
2870
6
...
必看实用VibeCoding项目
2789
7
...
4.1 美团后端暑期实习面经
2708
8
...
我招了!当年就是被招行这么招进去的
2687
9
...
美团后端暑期实习一面
2572
10
...
钉钉Java暑期一面
2532
创作者周榜
更多
正在热议
更多
#
你觉得大几开始实习最合适?
#
14732次浏览
161人参与
#
uu们,春招你还来吗?
#
52279次浏览
294人参与
#
开放七大实习专项,百度暑期实习值得冲吗
#
34451次浏览
610人参与
#
面试被问到不会的问题,你怎么应对?
#
12301次浏览
138人参与
#
面试中,你被问过哪些奇葩问题?
#
92119次浏览
882人参与
#
做完笔试后你收到面试了吗?
#
13678次浏览
148人参与
#
厦门银行科技岗值不值得投
#
13692次浏览
311人参与
#
恒生电子笔试
#
17228次浏览
133人参与
#
2023年不发年终奖的公司盘点
#
30249次浏览
174人参与
#
你都用vibe coding做过什么?
#
8720次浏览
335人参与
#
AI Coding实战技巧
#
7433次浏览
153人参与
#
你现在一天AI几次?
#
6354次浏览
77人参与
#
七猫笔试
#
6326次浏览
46人参与
#
Claude Code泄露源码
#
6351次浏览
96人参与
#
你见过哪些招聘隐形歧视?
#
10302次浏览
90人参与
#
26届春招投递记录
#
1434次浏览
24人参与
#
Vibe Coding 会干掉初级岗位吗?
#
11994次浏览
155人参与
#
大厂实习和小厂实习最大的区别是什么?
#
23788次浏览
174人参与
#
如果人生可以debug你会改哪一行?
#
5431次浏览
93人参与
#
机械人你知道哪些单休企业
#
101759次浏览
476人参与
#
牛友の3月总结
#
17163次浏览
146人参与
#
四大天坑是哪四家?
#
111113次浏览
241人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务