面试真题-嵌入式软件开发工程师(单片机)

前两天去面试,面试前有一个技术笔试,一共8道题,凭记忆总结列出,供各位参考。

(感兴趣的读者可以在评论区作答讨论,有的题目笔者也没答出来)

1. 有8只传感器A1~A8,每个传感器有4种状态,分别表示为0、1、2、3,编写程序将8只传感器的状态用一个32位无符号整形数据表示,并printf出来。

2. 下面程序输出结果是什么,为什么?

uint32_t i = 10;
int j = -10;
(i+j>0)?puts(">0"):puts("<=0");

3. 已知下列代码段

int A[] = {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15};
int *p = &A[5];

则p[5]为多少?

4. 已知设备采用大端模式,在0x8000处定义一个int型变量A,值为0x223344,填空。

地址0x80000x80010x80020x8003
数据

5. 编写函数,函数功能为使程序跳转到0x8001000处执行。

6. 采用485通信,传输一个字节0x37占用11bit,采用偶校验,填空:

起始数据校验结束
00

帧格式如下:

帧头1帧头2长度数据数据数据数据数据数据校验
0xFF0x551Byte1Byte1Byte1Byte1Byte1Byte1Byte1Byte

如果每次接收数据时,一帧数据的前面总有几个多余的无效字节,编写程序完成数据过滤。

7. 已知MCU的内部ADC为6位精度,内部参考电压是1.6V,采用图示电路进行AD采样,MCU转换后的值为0x20,则A、B、C三点的电压分别是多少?

8. 采用50%占空比的方波进行超声波测距,频率为40kHz,则方波的脉宽是多少微秒?已知声音速度是340m/s,如果用超声波从发射到接收信号一共用了1ms,则障碍物距离为多少?如果在电路中采用一个三极管作为电子开关,将MCU引脚通过一个330Ω的电阻连到三极管的基极,此处电阻的作用是什么,如果不连电阻,直接将MCU引脚接到三极管的基极,会有什么影响?

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值