8.23面试问题的总结与反思(诺瓦星云)
1.自我介绍
2.单片机用的什么,GPIO模式有哪些,推挽开漏有什么区别(开漏的作用:防止短路和线与)
3.IIC软件模拟时,GPIO是什么模式,为什么?IIC的restart信号的时序
4.其他硬件协议SPI
5.数据存储到哪里?直接处理,实时去读,循环间隔
6.最小系统晶振,外部时钟还是内部时钟
7.讲讲ADC采集数据处理,参考电压,含义,低通滤波电路
8.摄像头是USB几,速率是多少
9.多线程操作的同步互斥的方法,互斥锁和读写锁的区别,
10.多线程的互斥方式
11.网络通信的了解:TCP和UDP的区别
(1)GPIO
(General Purpose Input Output),通用输入输出口
电平:0-3.3V,部分可以容忍5V,容忍指在这个端口输入5V的电压也认为是高电平,但是最大是输出只有3.3V,因为供电都只有3.3V
输出模式:控制端口输出高低电平,用来驱动外设(外设功率大的话可以加入驱动电路),还可以模拟通信协议输出时序
输入模式:读取端口的高低电平,用于读取按键输入,外接模块电平信号输入,ADC电压采集,模拟通信协议接受数据等。
VDD=3.3V ,VSS=0V
如果IO口的电压大于3.3V,那么上方保护二极管就会导通,流入VDD,避免过高电压
小于0V,下方导通.......
输入:连接了一个上拉和下拉R,提供不同的参考电压,切换不同模式------->连接施密特触发器,进行整形,高于上限输出高,低于下限输出低
输出:
推挽输出:对电流的动作,最基础的高低电平
开漏输出:Q1 关闭,Q2 的漏极啥也没接
推挽输出的5V可能烧毁芯片,而开漏模式,Q2关闭,接上拉电阻,让EN被3.3V拉到高电平;Q2导通,EN低电平。
还可以支持几个GPIO同时输入:只要有一个打开就是低电平,同时为关闭才为高电平。
(2)软件模拟IIC
为什么要用开漏和上拉电阻:IIC支持多主多从,如果用推挽,会导致短路;而上拉电阻是给IIC输出高电平的能力
(3)SPI(IIC时钟速度慢)
全双工(数据发送和数据接收各一条线)、同步(时钟线)、包括有且仅有一个主机(master)、一个或多个从机(slave)。
包含四根信号线: