嵌入式软件开发工程师笔试题收集

1.单片机IO口开漏输出和推挽输出有什么区别?

开漏输出:开漏输出只能输出低电平,如果要输出高电平必须通过上拉电阻才能实现。就类似于三极管的集电极输出。
推挽输出:推挽输出既可以输出低电平,也可以输出高电平,可以直接驱动功耗不大的数字器件。导通损耗小、效率高、既提高电路的负载能力,又提高开关速度。

2.单片机里定时器有什么作用和优势?

作用:计数器、延时、输入捕获(解码和测量时间间隔)、输出比较(主要输出PWM波)、单脉冲输出、触发中断(对其他模块进行操作)
优势:不需要CPU参与、精确。

3.同步通信和异步通信有什么区别?UART SPI 和I2C分别属于什么类型的通信方式?

同步信号需要相同频率的时钟,逐字符发送接收。发一个收一个,收一个发一个,不能有间隙。
异步通信可以任意间隙,接收端随时准备,发送端任意时刻发送,需要加停止位和开始位。
UART异步通信,全双工 2线 RX TX
I2C同步通信,半双工 2线 SDA SCL
SPI同步通信 全双工 3线或4线 MOSI MISO SCLK SS(片选)

4.中断是什么?请简述单片机中断处理的过程

CPU在正常执行程序的过程中,由于内部/外部事件的触发或程序的预先安排引起CPU暂时中断当前正在运行的程序,而转去执行中断服务子程序,待中断服务子程序执行完毕后,CPU继续执行原来的程序,这一过程称为中断;

中断处理的过程:
第一步:保护现场,将当前位置的PC地址压栈;
第二步:跳转到中断服务程序,执行中断服务程序;
第三步:恢复现场,将栈顶的值回送给PC;
第四步:跳转到被中断的位置开始执行下一个指令;

5.C语言不同数据类型间的混合运算+常见数据类型

1)+. -. *. /运算的两个数中有一个数为float或double型,结果是double型,因为系统将所有float型数据都先转换为double型,然后进行运算;
2)若int型与float或double型数据进行运算,先将int型和float型转换为double型,然后进行运算,结果为double型;
3)  Char型与int型数据进行运算,就是把字符的ASCII码与整型数据进行运算;

           如:12+'A'=12+65=77

4)两个int型相除,不管是否有余数,结果都为整型;如:5/10 输出是整数部分:0
5)强制类型转换的一般形式为:(类型名)(表达式),将表达式整体的输出结果转换,若写成(int)x+y,则是将x先转换为整型,再与y想加,

          如上式中: 5/10的输出结果为:0
                             5.0/10的输出结果为:0.5
                            (fioat)(5/10)的输出结果为:0.00
                         (float)5/10的输出结果为:0.5

6.三态门与模拟开关的区别

三态门(Three-state gate)亦称"三态输出门"、"三态门输出电路"。是一种重要的总线接口电路。具有高电平、低电平和高阻抗三种输出状态的门电路。主要有晶体管-晶体管逻辑(TTL)三态门电路和互补型金属-氧化物一半导体(CMOS)三态门电路,两种电路都是在普通门电路的基础上附加控制电路而构成的。多用于各种集成电路中。
模拟开关主要是完成信号链路中的信号切换功能。采用MOS管的开关方式实现了对信号链路关断或者打开;由于其功能类似于开关,而用模拟器件的特性实现,成为模拟开关。模拟开关在电子设备中主要起接通信号或断开信号的作用。由于模拟开关具有功耗低、速度快、无机械触点、体积小和使用寿命长等特点,因而,在自动控制系统和计算机中得到了广泛应用。

不定期更新!!!!!!!!

 

  • 2
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值