11th第二次省赛.客观题笔记
项目:单片机设计与开发 |
年份:2020 年 |
机型:IAP15F2K61S2(等同 STC15F2K60S2)
答对 6 题 |
答错 4 题(第 4、5、6、7 题)
第 1 题 · 译码器地址线 · 单选 ·
答对
题目:
通常情况下,译码器的输入地址线位 4 条,输出线位( )条。
- A. 8
- B. 12
C. 16- D. 20
正确答案:C
答案说明与解析:
4 条地址线能表示的状态数 = 2 的 4 次方 = 16,所以译码器有 16 条输出线,每次只有一条输出有效(低电平或高电平,取决于型号)。这就是"4-16 译码器"的基本概念。
- A (8):只有 3 条地址线才对应 8 条输出(3-8 译码器)。
- B (12):不存在这样的标准译码器。
- D (20):不存在 4-20 的标准译码器。
记忆技巧: 输入 n 条地址线 → 输出 2^n 条线。3→8,4→16,5→32,背口诀:“3八、4十六、5三二”
拓展知识:
蓝桥杯板子上用的是 74HC138(3-8 译码器),控制继电器、数码管、LED 的片选。
- P2.5(Y4C)、P2.6(Y6C)、P2.7(Y7C)控制 3 条地址线
- 常见操作:
P2 = (P2 & 0x1F) | 0xA0;(Y5C,选数码管位选)
操作完外设后记得关锁存器!防止误操作。
第 2 题 · 电平转换 · 多选 ·
答对
题目:
通过 IAP15F2K61S2 单片机与 3.3V 外设通信时,通常可以采用( )措施。
- A. 电容耦合
B. 三极管电路- C. 电感耦合
D. 专用集成电路
正确答案:BD
答案说明与解析:
IAP15F2K61S2 工作电压为 5V,而某些外设(如部分 OLED、传感器)工作在 3.3V,需要电平转换。
- B(三极管电路)
:NPN/PNP 三极管可以实现 5V→3.3V 的电平转换,成本低,常见方案。 - D(专用集成电路)
:如 TXS0102、BSS138 等专用电平转换芯片,效果好,适合高速信号。 - A(电容耦合)
:电容耦合用于交流信号隔直通交,不能用于数字电平转换,会使直流信号失真。 - C(电感耦合)
:电感耦合用于变压器隔离,不是标准电平转换手段,不适用此场景。
记忆技巧: “三极管 + 专用 IC"是电平转换两大法宝,电容电感都是"交流选手”,数字电路别用它们。
拓展知识:
常见电平转换方案对比:
| 方案 | 优点 | 缺点 | 适用场景 |
|---|---|---|---|
| 三极管 | 便宜、好买 | 信号反向、速度有限 | 低速数字信号 |
| 专用 IC | 双向、高速 | 价格稍高 | 高速通信如 I2C、SPI |
| 电阻分压 | 超简单 | 只能降压单向 | 3.3V 输出→5V 输入 |
第 3 题 · 稳压二极管 · 单选 ·
答对
题目:
稳压二极管是利用 PN 结的( )特性制作而成的。
- A. 单向导电性
B. 反向击穿- C. 正向
- D. 载流子的扩散
正确答案:B
答案说明与解析:
稳压二极管(Zener 二极管)工作在反向击穿区。在击穿电压附近,两端电压几乎保持恒定,不随电流变化,正是利用这个特性来稳压。
- A(单向导电性)
:这是普通二极管的正向特性,不是稳压管的工作原理。 - B(反向击穿)
:稳压管故意工作在反向击穿区,但要加限流电阻防止击穿损坏。 - C(正向)
:正向特性对应普通整流二极管。 - D(载流子的扩散)
:扩散是 PN 结形成的原理,不是稳压管的工作特性。
易错点: 普通二极管反向击穿是损坏,稳压管反向击穿是正常工作状态,两者不同!
记忆技巧: “稳压管反向用,普通管正向通”
拓展知识:
稳压二极管电路标准接法:
VCC → R(限流电阻)→ ┤D稳压├ → GND
↑
输出稳定电压
- 限流电阻 R 必须存在,否则电流无限增大烧毁稳压管
- 常见稳压管型号:IN4733(5.1V)、IN4148(普通,不是稳压管!)
第 4 题 · 位寻址 · 单选 ·
答错(你答 C,正确答案是 D)
题目:
在 IAP15F2K61S2 单片机中,可以进行位寻址和字节寻址操作的单元是( )。
- A. D1H
- B. 97H
- C. 8EH
D. B8H
正确答案:D(你答了 C,答错了
)
答案说明与解析:
STC15 单片机(与 8051 兼容)中,可位寻址的特殊功能寄存器(SFR)地址必须是 8 的整数倍,即末位十六进制为 0 或 8。
逐一验证:
- A(D1H = 1101 0001B):末位为 1,不能位寻址

- B(97H = 1001 0111B):末位为 7,不能位寻址

- C(8EH = 1000 1110B):末位为 E,不能位寻址

- D(B8H = 1011 1000B):末位为 8,可以位寻址

B8H 对应的是 IP 寄存器(中断优先级寄存器),确实是可位寻址 SFR。
易错点: 判断方法是看地址十六进制末位是否为 0 或 8,不是看高位!8EH 末位是 E,容易被误以为是 8 开头就能位寻址,这是陷阱!
记忆技巧: “末位 0 或 8,位址才能加”,直接看地址末位十六进制数字。
拓展知识:
常见可位寻址 SFR(地址末位为 0 或 8):
| 寄存器 | 地址 | 功能 |
|---|---|---|
| P0 | 80H | P0 口 |
| TCON | 88H | 定时器控制 |
| P1 | 90H | P1 口 |
| SCON | 98H | 串口控制 |
| P2 | A0H | P2 口 |
| IE | A8H | 中断允许 |
| P3 | B0H | P3 口 |
| IP | B8H | 中断优先级 |
| ACC | E0H | 累加器 |
| B | F0H | B 寄存器 |
| PSW | D0H | 程序状态字 |
第 5 题 · ADC 分辨率 · 多选 ·
答错(你答 ABC,正确答案是 AC)
题目:
模拟/数字转换器的分辨率可以通过以下哪些指标来判断( )。
A. 允许输入模拟电压的范围- B. 运算放大器的放大倍数
C. 输出二进制数字信号的位数- D. 以上均不正确
正确答案:AC(你答了 ABC,多选了 B,答错了
)
答案说明与解析:
ADC 分辨率 = 满量程电压 / (2 的 n 次方),n 为位数。
- A(输入电压范围)
:满量程范围越大,同等位数下每个量化台阶越大,影响分辨率的计算和实际精度。 - B(运算放大器的放大倍数)
:运放放大倍数影响的是 ADC 前端增益,不是 ADC 本身的分辨率定义。ADC 分辨率是硬件固定参数,与外部运放无关。 - C(输出位数)
:位数越多 → 量化台阶越细 → 分辨率越高,这是 ADC 分辨率最直接的指标。 - D(以上均不正确)
:A 和 C 都正确,所以 D 错。
易错点: B 选项很迷惑!运放确实常和 ADC 配合使用,但运放是信号调理电路,不决定 ADC 的分辨率规格。
记忆技巧: ADC 分辨率只看两个:“量程大小 + 位数多少”,运放是外设,不算!
拓展知识:
STC15F2K60S2 内置 8 位 ADC(PCF8591 是外部 8 位 ADC):
- 内置 ADC:8 通道,8 位精度,参考电压 = VCC
- 分辨率 = VCC / 256(约 19.5mV,VCC = 5V 时)
- PCF8591:也是 8 位,4 路 ADC + 1 路 DAC,通过 I2C 通信
- 蓝桥杯板常用 PCF8591 读取电位器、光敏电阻等模拟信号
第 6 题 · 定时器 T0 控制 · 单选 ·
答错(你答 A,正确答案是 B)
题目:
在 IAP15F2K61S2 单片机中,由( )位控制定时器 T0 的启动和停止。
- A. TH0
B. TR0- C. TL0
- D. T1
正确答案:B(你答了 A,答错了
)
答案说明与解析:
TCON(定时器控制寄存器,地址 88H)中各位功能:
- TH0(Timer High 0)
:定时器 T0 的高 8 位计数值,存数据用,不控制启停。 - TR0(Timer Run 0)
:TCON.4 位,T0 的运行控制位,TR0=1 启动,TR0=0 停止。 - TL0(Timer Low 0)
:定时器 T0 的低 8 位计数值,存数据用,不控制启停。 - T1(Timer 1)
:T1 是定时器 1 的相关概念,不控制 T0。
易错点: TH0 / TL0 是计数数据寄存器,TR0 是控制位,三者容易混淆!你把 TH0 当成控制位了。
记忆技巧: “TR = Timer Run”,Run 就是跑,TR0 控制 T0 跑不跑。TH/TL 是"High/Low"存数据。
拓展知识:
TCON 寄存器(88H)各位完整说明(可位寻址):
| 位 | 符号 | 功能 |
|---|---|---|
| TCON.7 | TF1 | T1 溢出标志(溢出时自动置 1) |
| TCON.6 | TR1 | T1 运行控制(1=启动) |
| TCON.5 | TF0 | T0 溢出标志(溢出时自动置 1) |
| TCON.4 | TR0 | T0 运行控制(1=启动) |
| TCON.3 | IE1 | 外部中断 1 标志 |
| TCON.2 | IT1 | 外部中断 1 触发方式 |
| TCON.1 | IE0 | 外部中断 0 标志 |
| TCON.0 | IT0 | 外部中断 0 触发方式 |
典型代码:TR0 = 1; 启动定时器,TR0 = 0; 停止定时器。
第 7 题 · 时序逻辑电路 · 多选 ·
答错(你答 BC,正确答案是 AB)
题目:
数字时序逻辑电路的输出与( )有关。
A. 电路的原状态
B. 当前输入- C. 电路的反馈
- D. 电压源
正确答案:AB(你答了 BC,答错了
)
答案说明与解析:
数字逻辑电路分两大类:
| 类型 | 输出取决于 | 有无记忆 |
|---|---|---|
| 组合逻辑电路 | 仅当前输入 | 无 |
| 时序逻辑电路 | 当前输入 + 电路原状态 | 有 |
- A(电路的原状态)
:时序电路有记忆(由触发器/寄存器构成),输出依赖于当前存储的状态。 - B(当前输入)
:当前输入也是输出的决定因素之一。 - C(电路的反馈)
:反馈是时序电路的实现手段,不是"输出取决于反馈"。混淆了"机制"和"决定因素"。时序电路用反馈来记住状态,但严格来说输出函数是 f(输入, 状态),不是 f(反馈)。 - D(电压源)
:电压源是电路工作的能量来源,不影响逻辑输出的逻辑值。
易错点: C 选项是最大陷阱!反馈确实存在于时序电路中,但题目问的是"输出与什么有关",答案是状态和输入,反馈是实现状态记忆的手段,不是输出的直接决定变量。
记忆技巧: “时序 = 当前 + 历史”,组合只有当前,时序多了"历史(原状态)"。反馈是怎么记住历史的手段,不是输出变量。
拓展知识:
时序逻辑电路在单片机中的体现:
- 寄存器:存储状态(如 TCON、P0、P1 等)
- 计数器:定时器 TH0/TL0,每个时钟周期状态+1
- 状态机:按键扫描、协议解码都可以用状态机实现
- 蓝桥杯中定时器中断就是典型的时序逻辑应用:当前计数值(原状态)+ 时钟脉冲(输入)→ 新的计数值(输出/新状态)
第 8 题 · Keil C51 头文件 · 单选 ·
答对
题目:
在 Keil C51 集成开发环境中使用 nop() 函数时,需要包含( )头文件。
- A. reg52.h
- B. stdlib.h
- C. absacc.h
D. intrins.h
正确答案:D
答案说明与解析:
- A(reg52.h)
:包含 SFR 的定义(如 P0、TCON、SCON 等),是必备头文件,但不提供 nop()。 - B(stdlib.h)
:C 标准库,提供 malloc、rand 等函数,与单片机内联汇编无关。 - C(absacc.h)
:提供绝对地址访问宏(如 XBYTE、DBYTE),用于访问外部 RAM,不是 nop()。 - D(intrins.h)
:提供内联汇编指令函数,专门为 Keil C51 设计。
记忆技巧: “intrinsic = 内在的”,intrins.h 是把汇编指令"内在化"到 C 里。记住:nop 延时用 intrins。
拓展知识:
intrins.h 提供的常用函数:
| 函数 | 对应汇编 | 功能 |
|---|---|---|
| nop() | NOP | 空操作,延时约 1 机器周期 |
| crol(val, n) | RL A | 循环左移 n 位 |
| cror(val, n) | RR A | 循环右移 n 位 |
| testbit(bit) | JBC | 测试并清零位 |
蓝桥杯中 nop() 常用于软件延时,如 DS18B20 的时序控制。
STC15 主频较高时,单个 nop() 延时可能不够,需要多次调用。
第 9 题 · 单片机复位方式 · 多选 ·
答对
题目:
以下哪些操作可以实现 IAP15F2K61S2 单片机复位( )。
A. 在 RST 引脚上产生一个复位脉冲- B. 设置特殊功能寄存器中的相关位
C. 通过内部专用复位电路复位
D. 通过内部看门狗复位
正确答案:ACD
答案说明与解析:
IAP15F2K61S2 的复位方式:
- A(RST 引脚复位)
:在 RST 引脚保持高电平两个机器周期以上即可触发外部硬件复位。 - B(设置 SFR 相关位)
:IAP15 系列虽然技术上支持软件复位(IAP_CONTR 的 SWRST 位),但本题官方答案为 ACD,B 不计入。可能是题目特指某种标准方式,或版本差异。以官方答案为准。 - C(内部专用复位电路)
:包含上电复位(Power-On Reset)和掉电复位,芯片内部自动检测 VCC 变化触发复位。 - D(内部看门狗复位)
:WDT(Watch Dog Timer),程序跑飞时若未在规定时间内喂狗,自动触发复位。
易错点: B 选项存在争议,部分资料答 ABCD,本题按主流答案 ACD 记录。考试中遇到此题建议优先选 ACD。
记忆技巧: “外部 RST + 上电掉电 + 看门狗” = 三大复位,记住这三类。
拓展知识:
看门狗(WDT)使用要点:
// 启动看门狗,设置溢出时间
WDT_CONTR = 0x35; // 启用,分频系数设置
// 喂狗操作(在主循环中定期调用)
WDT_CONTR = 0x35; // 重写即为喂狗
- 喂狗太慢 → 触发复位(保护机制)
- 喂狗太快 → 没问题,但浪费资源
- 蓝桥杯中一般不主动使用 WDT,了解原理即可
第 10 题 · 全双工串行通信 · 单选 ·
答对
题目:
单片机的全双工串行通信是指( )。
- A. 通信过程中有发送引脚和接受引脚
- B. 数据传输速度和启动、停止是可以通过编程控制的
C. 接收和发送数据互不影响的- D. 通信过程必须由主机发起和结束
正确答案:C
答案说明与解析:
- A(有发送和接收引脚)
:半双工也有 TX/RX 引脚,但不能同时收发;有引脚不代表全双工。 - B(速率和启停可编程)
:这是异步串行通信(UART)的特点,与全/半双工概念无关。 - C(收发互不影响)
:全双工 = 发送和接收可以同时进行、互不干扰,这才是核心定义。 - D(必须由主机发起)
:描述的是主从通信模型(如 SPI),与双工方向无关。
记忆技巧: “全双工 = 全力双向”,收发同时进行,互不影响,就像打电话(双方同时说话也没事)。
拓展知识:
三种通信模式对比:
| 模式 | 特点 | 典型例子 |
|---|---|---|
| 单工(Simplex) | 只能单向传输 | 广播、遥控器 |
| 半双工(Half-duplex) | 双向,但不能同时 | 对讲机、RS-485 |
| 全双工(Full-duplex) | 双向,可同时 | 电话、STC15 UART |
STC15 的 UART(串口)就是全双工:TXD 发送、RXD 接收,可以同时工作。蓝桥杯中串口通信题必考,注意配置波特率(通常用定时器 1 或独立波特率发生器)。
速查卡 · 本套题核心知识点汇总
数字电路基础
| 知识点 | 结论 |
|---|---|
| n 条地址线 → 输出 | 2^n 条(4→16,3→8) |
| 时序逻辑 vs 组合逻辑 | 时序 = 输入 + 原状态;组合 = 仅输入 |
| 稳压二极管工作原理 | 反向击穿区,电压近似恒定 |
| 反馈 vs 状态 | 反馈是实现手段,状态是决定变量 |
模拟电路 / ADC
| 知识点 | 结论 |
|---|---|
| ADC 分辨率决定因素 | 输入量程(A)+ 输出位数(C) |
| 运放与 ADC 分辨率 | 无关!运放是前端调理,不决定分辨率 |
| STC15 内置 ADC | 8 位,8 通道,Vref = VCC |
| PCF8591 | 外部 8 位 ADC + DAC,I2C 接口 |
STC15 单片机寄存器
| 寄存器/位 | 地址 | 功能 |
|---|---|---|
| TR0 | TCON.4(88H) | 定时器 T0 启停控制 |
| TH0/TL0 | 8CH/8AH | T0 计数值高/低字节(数据,非控制) |
| IP 寄存器 | B8H | 中断优先级,可位寻址 |
| IAP_CONTR | — | 软件复位控制(含 SWRST 位) |
可位寻址 SFR 判断规则
末位十六进制为 0 或 8 → 可位寻址
例:80H、88H、90H、98H、A0H、A8H、B0H、B8H、D0H、E0H、F0H
Keil C51 常用头文件
| 头文件 | 功能 |
|---|---|
| reg52.h / STC15F2K60S2.h | SFR 定义(P0、TCON 等) |
| intrins.h | 内联汇编:nop()、crol()、cror() |
| absacc.h | 绝对地址访问(XBYTE、DBYTE) |
| stdlib.h | C 标准库(不常用于单片机) |
单片机复位方式(三大类)
- 外部硬件复位 — RST 引脚高电平 2+ 机器周期
- 内部上电/掉电复位 — 芯片内部检测 VCC 变化
- 看门狗复位(WDT) — 程序跑飞时自动触发
电平转换方案
| 方案 | 能否用于数字信号 |
|---|---|
| 三极管电路 | |
| 专用 IC | |
| 电容耦合 | |
| 电感耦合 |
串行通信模式
| 模式 | 关键词 |
|---|---|
| 单工 | 单向 |
| 半双工 | 双向、不同时(RS-485) |
| 全双工 | 双向、同时、互不影响 |
本套题错误分析:
第 4 题:判断可位寻址地址时看末位,不看高位
第 5 题:运放放大倍数与 ADC 分辨率无关
第 6 题:TH0 是数据寄存器,TR0 才是控制位
第 7 题:时序电路输出决定于"状态+输入",反馈是手段不是变量