首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
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
全部评论
推荐
最新
楼层
暂无评论,快来抢首评~
相关推荐
07-23 15:26
长江大学 产品经理
今天投递记录——OPPO校招
有没有人了解oppo校招的情况!!真的期待能够暑假就早早上岸啊
投递OPPO等公司10个岗位
点赞
评论
收藏
分享
07-26 09:43
东南大学 后端
双非本末9硕勇闯Java实习——重启
上次学Java竟已是4个月前的事情了,当时面对研二开题困难,研三毕业困难(后来证明果然有延毕的)我决定先放下找实习的进程,进而转向水论文,保毕业,详情可见我上一篇文章。后知后觉一开始决定放弃Java的学习是非常痛苦的,毕竟看着身边27届的同学陆陆续续都有了实习,甚至不少都是大厂,而我却按下暂停,转身处理毕业事务。但留在学校也不是一无所获,我可以把校园相关的事务,比如课程,比如校园活动都能体验到,毕竟出去实习后,回学校的日子就不多了,这是我最后的学生时光,务必珍惜。论文从3月底开始摸索,到如今7月初彻底投递,磕磕绊绊不容易,但所幸自己有师兄指导,有ai提示,导师也愿意先投递会议试水,期待自己能够...
没有实习经历,还有机会进...
点赞
评论
收藏
分享
07-08 21:30
已编辑
南昌大学 嵌入式软件开发
简历求拷打
虚心接受建议
点赞
评论
收藏
分享
07-19 13:28
长沙学院 Java
普通一本,没有实习经历,秋招有机会进中厂吗?下面是简历
程序员小白条:
你有面试就有希望,没面试自然就没希望,到时候就知道了,你问别人也没啥用处的
点赞
评论
收藏
分享
07-23 22:54
门头沟学院 数据分析师
大数据面试2小时前冲刺必备:大厂高频大数据面经【下】(数据分析挖掘篇-多张原理图)
数据仓库的概念及与数据库的区别是什么?(shein、大厂八股文、soul)数据仓库(Data Warehouse)是为支持决策分析而设计的面向主题(Subject-Oriented)、集成的(Integrated)、相对稳定的(Non-Volatile)、反映历史变化(Time-Variant)的数据集合。其主要目的是通过对大量历史数据的整理、整合、清洗和建模,为业务管理层、数据分析师等提供准确、全面、及时的决策支持。与传统数据库系统相比,数据仓库与数据库在多个方面存在本质差异:主要用途面向事务处理,如增删改查面向分析处理,如报表、统计、趋势分析等数据特征当前数据,实时性强历史数据,为分析提供...
大数据从入门到精通-最全...
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
大模型应用开发面经 (5年经验)
2.9W
2
...
别害怕前端手写,真没想象的难
1.5W
3
...
2025 年了,万分推荐的前端学习路径!!!
8019
4
...
实习都是CRUD怎么包装
5275
5
...
滴滴提前批
4534
6
...
🍀双非鼠鼠上岸大厂攻略🍀
3673
7
...
秋招首凉-腾讯TEG 云架构平台提前批
2567
8
...
百度提前批一面(秋招第一场也估计是压力最大的)
2340
9
...
字节懂车帝 后端实习一面
2118
10
...
扪心自问,你配ssp吗
1725
创作者周榜
更多
正在热议
更多
#
26届的你,投了哪些公司?
#
7449次浏览
108人参与
#
我对___祛魅了
#
16080次浏览
148人参与
#
中兴秋招
#
186784次浏览
2073人参与
#
如何快速融入团队?
#
6047次浏览
81人参与
#
你跟室友的关系怎么样?
#
1357次浏览
32人参与
#
和同事相处最忌讳的是__
#
8157次浏览
91人参与
#
简历上的经历如何包装
#
6439次浏览
172人参与
#
你遇到最难的面试题目是_
#
2263次浏览
50人参与
#
元戎启行求职进展汇总
#
35317次浏览
268人参与
#
打工人的精神状态
#
65553次浏览
1088人参与
#
我和mentor的爱恨情仇
#
61089次浏览
373人参与
#
工作中哪个瞬间让你想离职
#
38538次浏览
305人参与
#
什么样的背景能拿SSP?
#
9689次浏览
83人参与
#
25届如何提前做秋招准备?
#
176026次浏览
2493人参与
#
你最讨厌面试问你什么?
#
5131次浏览
97人参与
#
毕业季,给职场新人一些建议
#
98127次浏览
1775人参与
#
工作中的卑微时刻
#
20284次浏览
165人参与
#
职场人,说说你的烦心事
#
13222次浏览
110人参与
#
远景求职进展汇总
#
53987次浏览
299人参与
#
职场常用语录大全
#
5771次浏览
42人参与
#
一人推荐一个机械人值得去的公司
#
413973次浏览
4157人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务