12th第二次省赛.客观题笔记

:clipboard: 12th第二次省赛.客观题笔记

:trophy: 赛事:第十二届蓝桥杯 单片机设计与开发项目 省赛
:date: 整理时间:2026-03-09
:bullseye: 总题数:10题(8道单选 + 2道多选)
:white_check_mark: 答对:4题 | :cross_mark: 答错:6题


:bar_chart: 答题总览速查

题号 主题 类型 你的答案 正确答案 结果
Q1 触发器状态数 单选 D D :white_check_mark:
Q2 TTL悬空输入 单选 A A :white_check_mark:
Q3 贴片电阻标识 单选 C C :white_check_mark:
Q4 串口传输时间 单选 A B :cross_mark:
Q5 二极管温度特性 单选 C B :cross_mark:
Q6 C51数据类型 单选 B B :white_check_mark:
Q7 运放电路计算 单选 D B :cross_mark:
Q8 IAP15不具备资源 单选 D B :cross_mark:
Q9 STC15 IO工作模式 多选 BCD ABCD :cross_mark:
Q10 IAP15复位条件 多选 AB ABD :cross_mark:

:magnifying_glass_tilted_left: 详细题目解析


:pushpin: Q1 · 触发器状态数 · 单选 · :white_check_mark: 答对

8个触发器最多可以标识多少种状态( )。

  • A:4

  • B:16

  • C:128

  • D:256 :white_check_mark:

:white_check_mark: 正确答案说明

每个触发器有 2 种稳定状态(0 或 1),n 个触发器组合后最多可以标识 2 的 n 次方种状态。

8 个触发器:2 × 2 × 2 × 2 × 2 × 2 × 2 × 2 = 2^8 = 256 种

:face_with_monocle: 错误选项分析

  • A(4):2^2,只有 2 个触发器时的结果

  • B(16):2^4,只有 4 个触发器时的结果

  • C(128):2^7,只有 7 个触发器时的结果

:light_bulb: 拓展知识:触发器与计数器

触发器数量 最大状态数 典型应用
4 个 16 十六进制计数器 / BCD码
8 个 256 单字节寄存器(0~255)
16 个 65536 双字节寄存器(0~65535)

:light_bulb: 记忆技巧:n 位二进制数 = n 个触发器 = 2^n 种状态 = 0 ~ 2^n - 1 的范围


:pushpin: Q2 · TTL悬空输入 · 单选 · :white_check_mark: 答对

在TTL电路中,若输入端悬空了,其状态( )。

  • A:等效于输入了高电平 :white_check_mark:

  • B:等效于输入了低电平

  • C:等效于接地

  • D:状态不确定

:white_check_mark: 正确答案说明

TTL(晶体管-晶体管逻辑)电路内部输入端通过 基极结电阻 连接到 Vcc(正电源),当输入端悬空时,无驱动电流,内部上拉效果使得悬空端等效为 高电平(逻辑 1)

:face_with_monocle: 错误选项分析

  • B/C:悬空不是低电平。低电平需要主动拉低到接近 GND(< 0.8V)

  • D:TTL悬空状态是确定的——就是高电平,而非不确定(CMOS才容易不确定)

:warning: 易错点

CMOS 电路与 TTL 电路行为不同:

  • TTL 悬空 = 高电平(内部弱上拉)

  • CMOS 悬空 = 不确定/浮空(输入阻抗极高,极易受干扰)

:light_bulb: 拓展知识:TTL vs CMOS 对比

特性 TTL CMOS
悬空状态 等效高电平 不确定(危险!)
工作电压 5V 3.3V / 5V 可选
功耗 较高 低(静态近零)
抗噪性 一般 较强
STC15 IO 类CMOS结构

:pushpin: Q3 · 贴片电阻标识 · 单选 · :white_check_mark: 答对

一个贴片电阻,标识为1002,下列对该电阻描述正确的是( )。

  • A:电阻值为10K,精度为10%

  • B:电阻值为100K,精度为1%

  • C:电阻值为10K,精度为1% :white_check_mark:

  • D:电阻值为100K,精度为10%

:white_check_mark: 正确答案说明

贴片电阻标识规则:

4位数字标识法(精度1%,E96系列):

  • 前3位 = 有效数字

  • 第4位 = 乘数(10 的几次方)

1 0 0 | 2
↑有效数字 | ↑乘数

计算:100 × 10^2 = 100 × 100 = 10000Ω = 10KΩ

精度:4位数字代码的贴片电阻精度为 1%(3位数字的精度通常为5%)

:face_with_monocle: 错误选项分析

  • A(10K, 10%):精度判断错误,4位数字是1%精度

  • B(100K, 1%):把乘数当成了有效数字,1002 ≠ 1000×10^2

  • D(100K, 10%):阻值和精度都错了

:warning: 易错点

位数 精度 示例 结果
3位(如 102) 5% 10 × 10^2 1KΩ
4位(如 1002) 1% 100 × 10^2 10KΩ

:light_bulb: 拓展知识:贴片电阻系列

  • E24系列:3位标识,精度 5%

  • E96系列:4位标识,精度 1%

  • 特殊标识:R表示小数点,如4R7 = 4.7Ω;000 = 跳线(0Ω)


:pushpin: Q4 · 串口传输时间 · 单选 · :cross_mark: 答错(你选A,正确为B)

以9600波特率进行串口通信时,完成1K字节的数据传输,大约需要( )。

  • A:0.1秒 ← 你的答案(:cross_mark:

  • B:1秒 :white_check_mark:

  • C:5秒

  • D:10秒

:white_check_mark: 正确答案说明

串口异步通信每个字节的帧格式:

  • 1位起始位 + 8位数据位 + 1位停止位 = 10位/字节

计算过程:

  • 波特率 = 9600 bps(每秒传输 9600 位)

  • 每字节需要 10 位

  • 每秒传输字节数 = 9600 ÷ 10 = 960 字节/秒

  • 1K字节 = 1024 字节

  • 所需时间 = 1024 ÷ 960 ≈ 1.07秒 ≈ 1秒

:face_with_monocle: 错误分析

选 A(0.1秒) 可能是误以为:

  • 9600 bps ÷ 8 = 1200 字节/秒 → 1024 ÷ 1200 ≈ 0.85秒(但仍不是0.1秒)

  • 或者没有加上起始位/停止位的开销

:warning: 常见错误:只用 8 位计算,忽略了帧开销(起始位 + 停止位)

:light_bulb: 拓展知识:常用波特率传输速度

波特率 实际字节速率(含帧位) 传输1KB约需
1200 120 字节/秒 ~8.5秒
9600 960 字节/秒 ~1秒
115200 11520 字节/秒 ~0.09秒

:light_bulb: 快速公式:字节速率 ≈ 波特率 ÷ 10(异步串口默认1起始+8数据+1停止)


:pushpin: Q5 · 二极管温度特性 · 单选 · :cross_mark: 答错(你选C,正确为B)

二极管的伏安特性曲线(正向部分)在环境温度下降时将( )。

  • A:左移

  • B:右移 :white_check_mark:

  • C:上移 ← 你的答案(:cross_mark:

  • D:下移

:white_check_mark: 正确答案说明

二极管正向导通电压 Vf 具有 负温度系数,约 -2mV/°C。

温度与 Vf 的关系

  • 温度升高 → Vf 降低 → 同等电压下电流更大 → 曲线左移

  • 温度下降 → Vf 升高 → 需要更高电压才能达到相同电流 → 曲线右移

在 V-I 坐标系(横轴 = 电压V,纵轴 = 电流I)中:

  • 温度下降:阈值电压增大,整条曲线向 右方 平移

:face_with_monocle: 错误分析

选 C(上移):上移意味着在相同电压下电流增大,这与温度升高的效果相同,与题意(温度下降)相反。

:warning: 易错点:上/下移是纵向移动(电流轴方向),左/右移是横向移动(电压轴方向)。温度变化引起的是 阈值电压的变化,应该是左右移动,不是上下移动。

:light_bulb: 拓展知识:二极管温度系数对比

器件 正向电压温度系数 温度升高时
普通硅二极管 -2mV/°C Vf 降低,曲线左移
稳压二极管(低压型 <5V) 负温度系数 Vz 降低
稳压二极管(高压型 >6V) 正温度系数 Vz 升高
LED -1~-3mV/°C 亮度微变

:pushpin: Q6 · C51不支持数据类型 · 单选 · :white_check_mark: 答对

不属于C51支持的数据类型有( )。

  • A:bit

  • B:byte :white_check_mark:

  • C:float

  • D:long

:white_check_mark: 正确答案说明

byte 不是 C51 标准的数据类型关键字!C51 使用 unsigned char 来表示一个字节(8位)。byte 是 Arduino 等平台的别名定义,并非 Keil C51 内置类型。

C51 实际支持的数据类型:

类型 长度 范围 说明
bit 1位 0/1 C51特有,位寻址
unsigned char 8位 0~255 常用作"byte"
signed char 8位 -128~127
unsigned int 16位 0~65535
long 32位 有符号长整型 ✓ 支持
float 32位 浮点数 ✓ 支持(但耗资源)
sbit 1位 0/1 C51特有,SFR位

:light_bulb: 拓展知识:C51 vs 标准C 特有类型

C51 新增了 3 个标准C没有的关键字:

  • bit:定义可位寻址的 bit 变量

  • sbit:定义 SFR(特殊功能寄存器)中的单个位

  • sfr / sfr16:定义 8位/16位 SFR 寄存器


:pushpin: Q7 · 运放电路计算 · 单选 · :cross_mark: 答错(你选D,正确为B)

如下图所示的电路中,当 Ui = 1V 时,Uo 为( )。

![image-20260309122145280](file:///C:/Users/21906/Desktop/%E5%8D%95%E7%89%87%E6%9C%BA%E7%9C%9F%E9%A2%98%E7%AD%94%E6%A1%88(%E8%B0%83%E5%BA%A6%E5%99%A8%E7%89%88)/picture/image-20260309122145280.png?lastModify=1773045632)

电路结构:R1=2kΩ(-端到地),R2=2kΩ(Ui到+端),R3=18kΩ(+端到地),RF=10kΩ(输出到-端反馈)

  • A:0.1V

  • B:5.4V :white_check_mark:

  • C:0V

  • D:-0.1V ← 你的答案(:cross_mark:

:white_check_mark: 正确答案说明

这是一个 同相放大器(Non-inverting Amplifier) 电路。

第一步:计算同相输入端电压 U+

R2 和 R3 对 Ui 构成分压电路:

U+ = Ui × R3 ÷ (R2 + R3)
U+ = 1V × 18kΩ ÷ (2kΩ + 18kΩ)
U+ = 1V × 18 ÷ 20
U+ = 0.9V

第二步:计算闭环增益 Av

同相放大器闭环增益公式:
Av = 1 + RF ÷ R1 = 1 + 10kΩ ÷ 2kΩ = 1 + 5 = 6

第三步:计算输出电压 Uo

Uo = Av × U+ = 6 × 0.9V = 5.4V

:face_with_monocle: 错误分析

选 D(-0.1V):可能误将此电路当成 反相放大器(-端接输入,+端接地),反相放大器增益为 -(RF/R1) = -5,但输入接错了,同时忽略了分压网络。

:warning: 区分同相 vs 反相放大器

  • 同相放大器:信号接 + 端,R1 接 - 端到地,输出同相且幅值放大

  • 反相放大器:信号接 - 端(通过输入电阻),+ 端接地,输出反相

:light_bulb: 拓展知识:运放放大器公式汇总

类型 增益公式 特点
同相放大器 Av = 1 + RF/R1 增益≥1,输出同相
反相放大器 Av = -RF/R1 输出反相,增益可<1
电压跟随器 Av = 1 RF=0,R1=∞
差分放大器 Uo = (R2/R1)(U+ - U-) 共模抑制

:pushpin: Q8 · IAP15F2K61S2不具备资源 · 单选 · :cross_mark: 答错(你选D,正确为B)

下列哪些资源是IAP15F2K61S2单片机的不具备的( )。

  • A:ADC

  • B:DAC :white_check_mark:

  • C:EEPROM

  • D:内部RC振荡器 ← 你的答案(:cross_mark:

:white_check_mark: 正确答案说明

IAP15F2K61S2 是 STC15 系列单片机(与蓝桥杯竞赛板 IAP15F2K61S2 型号相同),它的片上资源:

资源 IAP15F2K61S2 是否具备
ADC(8路10位) :white_check_mark:
DAC :cross_mark: 没有!
EEPROM(IAP/Data Flash) :white_check_mark: (通过IAP实现,约2KB)
内部RC振荡器(IRC) :white_check_mark: (高精度IRC,无需晶振)
UART×2 :white_check_mark:
SPI :white_check_mark:
I2C :cross_mark: 无硬件I2C(需软件模拟)
定时器0~3 :white_check_mark:
PWM(CCP/PCA) :white_check_mark:

结论:IAP15F2K61S2 没有片上 DAC。需要 DAC 功能时,蓝桥杯竞赛板使用外接 PCF8591(同时提供ADC+DAC+I2C接口)。

:face_with_monocle: 错误分析

选 D(内部RC振荡器):STC15 系列的一大亮点就是内置高精度 IRC(内部RC振荡器),完全不需要外部晶振!选 D 是对 STC15 特性的误解。

:warning: 易错点

虽然题目含"哪些",但选项中只有 B(DAC) 一个不具备,本题仍是单选。

:light_bulb: 拓展知识:蓝桥杯竞赛板外设 vs 片内外设

功能 片内(IAP15F2K61S2) 片外(竞赛板)
ADC :white_check_mark: 8路10位 PCF8591也有ADC
DAC :cross_mark: PCF8591提供1路DAC
I2C :cross_mark: 无硬件I2C DS1302/AT24C02/PCF8591均用I2C
实时时钟 :cross_mark: DS1302(SPI接口)
温度传感器 :cross_mark: DS18B20(单总线)
超声波 :cross_mark: HC-SR04模块

:pushpin: Q9 · STC15 IO工作模式 · 多选 · :cross_mark: 答错(你选BCD,正确为ABCD)

STC15系列单片机的IO具有哪些工作模式( )。

  • A:双向口模式 :white_check_mark: ← 你漏选了这个!

  • B:推挽输出模式 :white_check_mark:

  • C:高阻输入模式 :white_check_mark:

  • D:开漏输出模式 :white_check_mark:

:white_check_mark: 正确答案说明

STC15 系列 IO 口通过 PxM0 / PxM1 两个寄存器配置,共有 4 种工作模式

PxM1 PxM0 工作模式 说明
0 0 双向口模式(准双向) 复位默认模式,上拉弱驱动
0 1 推挽输出模式 强推挽,可输出 20mA
1 0 高阻输入模式 纯输入,不影响外部电路
1 1 开漏输出模式 需外部上拉,可做线与逻辑

A(双向口模式) 是复位后的默认模式,A/B/C/D 全部都是 STC15 IO 的工作模式!

:face_with_monocle: 错误分析

漏选 A(双向口模式):双向口模式是 STC15(也是传统 8051)最基础的 IO 模式,是上电复位后的默认状态。可能误以为它不算"特殊"工作模式,但它确实是 4 种模式之一。

:warning: 易错点

双向口模式 ≠ 双向传输都是强驱动。双向口读状态时读的是端口锁存器状态,而非引脚实际电平,需先向端口写 1 才能读取外部电平!

:light_bulb: 拓展知识:各模式应用场景

模式 典型使用场景
双向口(Mode0) LED驱动、按键读取(复位默认)
推挽输出(Mode1) 大电流输出、驱动继电器、蜂鸣器
高阻输入(Mode2) ADC模拟输入、敏感信号采集
开漏输出(Mode3) I2C总线(SDA/SCL)、线与逻辑

:light_bulb: 配置示例(蓝桥杯竞赛代码)

// 将 P1.0 配置为推挽输出
P1M0 |= 0x01;   // PxM0 对应位置1
P1M1 &= ~0x01;  // PxM1 对应位清0

:pushpin: Q10 · IAP15F2K61S2复位条件 · 多选 · :cross_mark: 答错(你选AB,正确为ABD)

以下哪些条件可以让IAP15F2K61S2单片机复位( )。

  • A:电源电压低于掉电复位电压。 :white_check_mark:

  • B:在RST引脚上施加一定宽度的复位脉冲信号。 :white_check_mark:

  • C:在EA引脚上保持一段时间的低电平信号。 :cross_mark:

  • D:控制IAP_CONTR寄存器。 :white_check_mark: ← 你漏选了这个!

:white_check_mark: 正确答案说明

IAP15F2K61S2 支持多种复位方式:

A :white_check_mark: 掉电复位(LVD/Power-Down Reset)

  • 当 VCC 低于设定的掉电检测电压时,芯片自动复位

  • 可通过 STC-ISP 软件烧录时配置掉电复位电压阈值

B :white_check_mark: 外部 RST 引脚复位

  • RST 引脚输入高电平脉冲(STC15 是高电平有效复位)

  • 脉冲宽度需大于 2 个机器周期

C :cross_mark: EA 引脚无法触发复位

  • EA 引脚在 STC15 系列中并不作为独立引脚(与P4.6复用)

  • EA 低电平在传统 8051 中表示使用外部程序存储器,STC15 内部程序存储器时,EA 保持高电平即可

  • EA 低电平 不会触发复位

D :white_check_mark: IAP_CONTR 软件复位

  • IAP_CONTR 寄存器的 SWRST 位(bit6) 置 1,可实现软件复位

  • 代码:IAP_CONTR = 0x20;IAP_CONTR |= 0x20;

:face_with_monocle: 错误分析

漏选 D(IAP_CONTR):STC15 新增的 软件复位 功能,是蓝桥杯考试的常考点。通过设置 IAP_CONTR.SWRST=1,程序可以主动触发软件复位,非常实用。

:light_bulb: 拓展知识:IAP15F2K61S2 全部复位方式

复位方式 触发条件 类型
上电复位(POR) VCC 从 0 上升超过阈值 自动
掉电复位(LVD) VCC 降低超过设定阈值 自动
RST 引脚复位 RST 引脚高电平脉冲 外部
软件复位 IAP_CONTR.SWRST = 1 软件
看门狗复位 WDT 计数溢出未喂狗 自动

:light_bulb: IAP_CONTR 寄存器地址:0xC7

// 软件复位
IAP_CONTR = 0x20;  // SWRST位 = bit6 = 0x20

:books: 速查卡 · 本套题核心知识点汇总

:1234: 数字电路基础

知识点 核心结论
n个触发器状态数 2^n 种状态
TTL悬空输入 等效高电平
CMOS悬空输入 状态不确定(危险!)

:nut_and_bolt: 元器件知识

知识点 核心结论
贴片电阻4位标识 前3位×10^第4位,精度1%
贴片电阻3位标识 前2位×10^第3位,精度5%
二极管温度系数 负温度系数,温度降→Vf升→曲线右移

:satellite_antenna: 串口通信

知识点 核心结论
串口帧格式 1起始+8数据+1停止 = 10位/字节
字节速率公式 字节速率 = 波特率 ÷ 10
9600 bps 速度 ≈ 960字节/秒,传1KB约1秒

:laptop: C51编程

知识点 核心结论
byte :cross_mark: 不是C51关键字,用unsigned char代替
bit / sbit / sfr :white_check_mark: C51特有关键字
支持类型 bit, char, int, long, float, double

:high_voltage: 运算放大器

电路类型 增益公式
同相放大器 Av = 1 + RF/R1(含分压时乘分压比)
反相放大器 Av = -RF/Rin
电压跟随器 Av = 1

:robot: IAP15F2K61S2 片上资源

资源 有无 备注
ADC :white_check_mark: 8路10位
DAC :cross_mark: 无! 用PCF8591外接
EEPROM :white_check_mark: IAP方式,约2KB
内部IRC :white_check_mark: 高精度,无需外部晶振
硬件I2C :cross_mark: 需软件模拟
UART :white_check_mark: 2路
定时器 :white_check_mark: T0~T3共4个

:wrench: STC15 IO工作模式

PxM1 PxM0 模式 默认?
0 0 双向口(准双向) :white_check_mark: 复位默认
0 1 推挽输出
1 0 高阻输入
1 1 开漏输出

:counterclockwise_arrows_button: IAP15F2K61S2 复位方式

复位类型 触发条件
上电复位 VCC 上升超阈值
掉电复位 VCC 下降低于阈值(A选项)
外部RST RST引脚高电平脉冲(B选项)
软件复位 IAP_CONTR
看门狗复位 WDT溢出