8th省赛.客观题笔记
届次:第八届(2017年)|阶段:省赛|题型:选择题(含多选)|共 8 题
我的成绩:4/8(答对 4 题,答错 4 题)
错题集中在:P0口功能、数码管消隐、C51存储关键字、单片机基础概念
第 1 题 · 滤波器类型选择【单选(双空)】
答对
题目:
当电路中有用信号为某一固定频率,宜选用 滤波器;直流电源的滤波电路宜选用 滤波器。
A. 带阻 B. 低通 C. 高通 D. 带通
(第一空)
B. 低通
(第二空)
正确答案:D(带通),B(低通)
解析:
-
固定频率信号 → 只需要让这个特定频率通过 → 带通滤波器(Band-Pass Filter),允许某个频率范围的信号通过,抑制其余频率 -
直流电源滤波 → 直流信号频率接近 0Hz,需要去除高频噪声/纹波 → 低通滤波器(Low-Pass Filter),允许低频(含直流)通过
错误选项分析:
-
A. 带阻:阻止某一频段信号,适用于去除特定干扰频率(如 50Hz 工频干扰),不适合保留有用信号
-
C. 高通:只让高频通过,会把直流分量滤掉,不适合直流电源
拓展知识:
| 滤波器类型 | 功能 | 典型应用场景 |
|---|---|---|
| 允许低频通过,抑制高频 | 直流电源滤波、音频低音提取 | |
| 允许高频通过,抑制低频 | 去除直流偏置、音频高音提取 | |
| 允许特定频段通过 | 无线电接收、特定频率信号提取 | |
| 阻止特定频段 | 去除 50Hz 工频干扰 |
记忆技巧: “带通保频、低通保直、高通去直、带阻去频”
易错点: 带通和带阻容易混淆!带通是"留下想要的",带阻是"去掉不想要的",功能互补
第 2 题 · 线与功能的门电路【单选】
答对
题目:
能够实现线与功能的门电路是( )。
A. 与非门 B. 或非门 C. 异或门 D. OC 门
正确答案:D
解析:
-
线与(Wired-AND):将多个门电路的输出直接连在一起实现逻辑与运算 -
普通推挽输出的门电路(如 TTL 与非门、或非门)输出端不能直接并联,否则一个输出高一个输出低会形成短路,产生大电流损坏芯片 -
OC 门(集电极开路门) 输出级只有下拉晶体管,没有上拉,需外接上拉电阻。多个 OC 门输出可以直接连接,任何一个拉低则输出为低 → 实现线与逻辑
错误选项分析:
- A/B/C:与非门、或非门、异或门都是推挽输出,输出端直接连接会导致电流倒灌和短路
拓展知识:
-
OC 门(Open Collector)= 集电极开路门,用于 TTL 电路 -
OD 门(Open Drain)= 漏极开路门,用于 CMOS 电路(如 STC15 的 I/O 口就有开漏模式) -
I2C 总线就是利用开漏 + 上拉电阻实现线与的典型应用 -
STC15F2K60S2 的 P0 口复位后为开漏模式,需要外接上拉电阻才能正常输出高电平
记忆技巧: “OC/OD 才能线与,推挽并联必炸”
易错点: 别把"线或"和"线与"搞混。OC 门 + 上拉电阻 = 线与(全高才高);三态门也不能实现线与,三态门用于总线复用
第 3 题 · 逻辑表达式化简【单选】
答对
题目:
逻辑表达式 F = A’B’C + ABC’D + B 的最简式为( )。
A. C+D B. C’ C. B+C
D. A+C
正确答案:C(B+C)
解析:
化简过程(吸收律 + 合并):
-
原式 F = A’B’C + ABC’D + B
-
B 可以吸收含 B 的项:B + ABC’D = B(因为 ABC’D 是 B 的子集,当 B=1 时 ABC’D 必然被 B 覆盖)
-
剩余:F = A’B’C + B
-
利用公式 X + X’Y = X + Y(其中 X=B, X’=B’, Y=A’C):B + B’·(A’C) = B + A’C
-
进一步分析:当 A’=1 即 A=0 时,A’C = C;再与 B 组合可验证最终化简结果为 B + C
验证:F(B+C) 覆盖了原式所有最小项 ![]()
错误选项分析:
-
A. C+D:丢失了 B 的信息
-
B. C’:完全不对,取反了
-
D. A+C:丢失了 B 的信息
拓展知识:
常用布尔代数化简公式(蓝桥杯高频考点):
| 公式名称 | 表达式 | 说明 |
|---|---|---|
| 吸收律 | A + AB = A | 大项吸收小项 |
| 冗余律 | A + A’B = A + B | 去掉冗余因子 |
| 合并律 | AB + AB’ = A | 相邻项合并 |
| 反演律 | (AB)’ = A’ + B’ | 德摩根定律 |
记忆技巧: 化简第一步永远先看"吸收律",找到能被大项吃掉的子项直接消掉
易错点: 化简时别忘了检验!把化简结果代入几组值和原式对比,防止化简出错
第 4 题 · 中断优先级查询顺序【单选】
答对
题目:
MCS-51 单片机在同一优先级的中断源同时申请中断时,单片机首先响应下列哪个中断源的请求( )。
A. 串口中断 B. 定时器 0 中断 C. 定时器 1 中断 D. 外部中断 0
正确答案:D(外部中断 0)
解析:
-
当同一优先级的多个中断同时请求时,CPU 按**硬件查询(自然优先级)**顺序依次轮询 -
MCS-51 的自然优先级从高到低:
| 优先级排序 | 中断源 | 中断号 |
|---|---|---|
| 外部中断 0(INT0) | 0 | |
| 定时器 0(T0) | 1 | |
| 外部中断 1(INT1) | 2 | |
| 定时器 1(T1) | 3 | |
| 串口中断(UART) | 4 |
错误选项分析:
-
A. 串口中断:自然优先级最低(第 5 位)
-
B. 定时器 0 中断:第 2 位
-
C. 定时器 1 中断:第 4 位
拓展知识:
-
自然优先级 vs 可编程优先级:自然优先级是固定的硬件查询顺序,不可更改;可编程优先级通过 IP 寄存器设置,分高/低两级 -
STC15F2K61S2 扩展了更多中断源(如 PCA、ADC、SPI 等),但基本的 5 个中断优先级顺序不变 -
高优先级中断可以打断低优先级中断(中断嵌套),但同级中断不能互相打断
记忆技巧: “外0 → 定0 → 外1 → 定1 → 串”,口诀"外定外定串,0011末"(按中断号 0-4 排列)
易错点: 这里问的是"同一优先级"下的自然查询顺序,不是 IP 寄存器设置的编程优先级!
第 5 题 · P0 口的外部存储器功能【单选】
答错(我选 A,正确 D)
题目:
8051 单片机的 P0 口,当使用外部存储器时它是一个( )。
A. 传输高 8 位地址口 B. 传输低 8 位地址口
C. 传输高 8 位数据口 D. 传输低 8 位地址/数据口
正确答案:D(传输低 8 位地址/数据口)
解析:
-
8051 访问外部存储器时,P0 口是低 8 位地址和 8 位数据的分时复用口 -
工作流程:先由 P0 送出低 8 位地址(此时 ALE 锁存信号有效,将地址锁存到外部锁存器如 74HC573),然后 P0 切换为数据口进行数据读/写 -
P2 口才是高 8 位地址口(P2 送高 8 位地址,不复用)
我的错误原因: 把 P0(低 8 位地址/数据复用)和 P2(高 8 位地址)搞反了!
拓展知识:
8051 四个 I/O 口在外部存储器访问时的分工:
| 端口 | 功能 | 说明 |
|---|---|---|
| P0 | 低 8 位地址 / 8 位数据(复用) | 需 ALE+锁存器分离地址和数据 |
| P2 | 高 8 位地址 | 直接输出,不复用 |
| P1 | 通用 I/O | 不参与外部总线 |
| P3 | 第二功能(RD/WR/INT等) | 提供控制信号 |
关键信号:
-
ALE(地址锁存允许):在每个机器周期产生脉冲,用于锁存 P0 口输出的低 8 位地址 -
RD(P3.7):外部数据存储器读信号 -
WR(P3.6):外部数据存储器写信号 -
PSEN:外部程序存储器读信号
记忆技巧: “P0 低复用、P2 高地址、P3 给控制、P1 最自由”
易错点: P0 是"地址/数据复用"口,不是单纯的数据口也不是单纯的地址口!这个"复用"是核心考点
第 6 题 · 数码管消隐功能【单选】
答错(我选 B,正确 A)
题目:
数码管动态扫描的程序设计一般需要"消隐"动作,才能保证显示效果清晰。下面基于 CT107D 竞赛板的数码管显示代码片段中第 行是用来实现"消隐"功能的。
A. 第 3 行
B. 第 4 行 C. 第 5 行 D. 第 8 行
正确答案:A(第 3 行)
解析:
-
消隐(Blanking) 就是在切换数码管位选之前,先把段码全部熄灭(写入 0xFF 或 0x00,取决于共阴/共阳) -
如果不消隐,切换位选时上一位的段码会短暂显示在新的位上,产生"鬼影/串显" -
在 CT107D 竞赛板上,消隐操作一般放在显示函数的最前面(第 3 行位置),即先关闭所有段码,再设置新的位选和段码
CT107D 数码管显示典型流程:
1. void display_SMG(...) {
2. // 函数开始
3. P0 = 0xFF; // ← 消隐!先关闭所有段(这就是第3行)
4. P2 = (P2 & 0x1F) | 0xE0; // 选择段码锁存器 Y7
5. P2 &= 0x1F; // 锁存
6. // ... 设置位选
7. // ... 设置段码
8. // ... 延时
9. }
我的错误原因: 没记清 CT107D 消隐代码的具体位置,误选了第 4 行
拓展知识:
CT107D 竞赛板数码管硬件结构(138 译码器 + 573 锁存器):
-
Y6(P2 高三位 = 110):选择数码管位选锁存器 -
Y7(P2 高三位 = 111):选择数码管段码锁存器 -
P0 口同时用于送位选数据和段码数据,通过不同的锁存器控制分离
消隐的三种常见实现方式:
-
段码清零法:P0 = 0xFF(共阳,全灭)或 P0 = 0x00(共阴,全灭)
-
位选清零法:关闭所有位选信号
-
OE 控制法:关闭锁存器输出使能(不常用)
记忆技巧: “先灭后亮不串显” —— 消隐永远在位选切换之前执行
易错点: CT107D 用的是共阳数码管,消隐时段码写 0xFF(全 1 = 全灭),不是 0x00!
第 7 题 · C51 外部 RAM 存储关键字【多选】
答错(我选 ABD,正确 BD)
题目:
使用 Keil uVision 编写 51 单片机的 C 程序时,若定义一个变量 x,并由编译器将其分配到外部 RAM 中,应定义( )语句。(多选)
A. code unsigned char x; B. pdata unsigned char x;
C. idata unsigned char x; D. xdata unsigned char x;
正确答案:B、D
解析:
C51 存储类型关键字一览:
| 关键字 | 存储区域 | 寻址方式 | 地址范围 |
|---|---|---|---|
data |
内部 RAM 直接寻址 | MOV | 0x00~0x7F(128B) |
idata |
内部 RAM 间接寻址 | MOV @Ri | 0x00~0xFF(256B) |
pdata |
外部 RAM 分页 | MOVX @Ri | 低 256B |
xdata |
外部 RAM | MOVX @DPTR | 0x0000~0xFFFF(64KB) |
code |
程序存储器 ROM | MOVC | 只读 |
bdata |
内部 RAM 可位寻址 | MOV | 0x20~0x2F |
-
pdata:使用 MOVX @Ri 指令访问外部 RAM 的低 256 字节,速度较快但范围小 -
xdata:使用 MOVX @DPTR 指令访问全部 64KB 外部 RAM,范围大但指令稍慢 -
两者都指向外部 RAM,只是寻址方式和范围不同
我的错误原因: 多选了 A(code),code 是程序存储器(ROM),是只读的!不是外部 RAM!
错误选项分析:
-
A.
code:程序存储器(ROM/Flash),只能存常量和查找表,不是 RAM! -
C.
idata:内部 RAM 间接寻址区(0x00~0xFF),是内部不是外部!
拓展知识:
STC15F2K60S2 的存储结构:
-
内部 RAM:256 字节(data 0x00~0x7F + idata 0x80~0xFF) -
内部扩展 RAM(xdata 方式访问):STC15 系列拥有 2KB 内部扩展 RAM,虽然物理上在芯片内部,但访问方式与外部 RAM 相同(用 xdata/pdata 关键字) -
程序 Flash:61KB(可通过 IAP/ISP 读写)
记忆技巧:
-
“data = direct(直接,内部)”
-
“idata = indirect(间接,内部)”
-
“xdata = external(外部)”
-
“pdata = paged external(分页外部)”
-
“code = constant(常量,ROM)”
易错点: pdata 容易被忽视!它也是外部 RAM,只是分页访问的低 256 字节。STC15 的内部扩展 RAM 也用 xdata 方式访问,不要以为 xdata 一定是"芯片外面的"RAM
第 8 题 · 单片机基础概念判断【多选】
答错(我选 BD,正确 AD)
题目:
关于单片机下列哪些说法是错误的( )。(多选)
A. IAP15F2K61S2 单片机复位后,P0~P3 口状态为低电平
(错误说法)
B. 具有 PWM 功能的单片机可通过滤波器实现 DAC 功能
C. IAP15F2K61S2 可以使用内部 RC 振荡器,也可以使用外部晶振工作
D. 所有单片机的程序下载都需要冷启动过程
(错误说法)
正确答案:A、D(这两个说法是错误的)
解析:
逐项分析:
-
A.
错误说法! 复位后 P0~P3 口状态为高电平(0xFF),不是低电平!-
51 系列单片机复位后,所有 I/O 口寄存器被置为 0xFF,即所有引脚输出高电平
-
这是因为 P0~P3 的 SFR 复位值均为 0xFF
-
-
B.
正确说法。 PWM + 低通滤波器 = DAC-
PWM 信号经过 RC 低通滤波后,输出电压与占空比成正比
-
占空比 50% → 输出约 VCC/2,这就是简易 DAC
-
-
C.
正确说法。 IAP15F2K61S2 支持:-
内部高精度 RC 振荡器(出厂已校准,精度可达 ±0.3%)
-
外部晶振(4~33MHz)
-
-
D.
错误说法! 不是所有单片机都需要冷启动下载-
冷启动:断电 → 上电时进入下载模式(传统 STC89 系列需要)
-
热启动:不断电,通过软件命令让单片机重启进入下载模式(IAP15 系列支持)
-
STC-ISP 软件中可以选择"下次冷启动时下载"或使用 IAP 功能直接热启动下载
-
我的错误原因:
-
漏选了 A:忘记复位后 I/O 口是高电平(0xFF)
-
多选了 B:PWM + 滤波实现 DAC 是正确的,不该选
拓展知识:
复位后 SFR(特殊功能寄存器)关键初始值:
| 寄存器 | 复位值 | 说明 |
|---|---|---|
| P0~P3 | 0xFF | 所有 I/O 高电平 |
| SP | 0x07 | 堆栈指针 |
| TMOD | 0x00 | 定时器模式 |
| TCON | 0x00 | 定时器控制 |
| SCON | 0x00 | 串口控制 |
| IE | 0x00 | 中断允许(全部禁止) |
| IP | 0x00 | 中断优先级(全部低优先级) |
| PSW | 0x00 | 程序状态字 |
| ACC | 0x00 | 累加器 |
记忆技巧:
-
“端口全 F,其余全 0,堆栈 07” —— 复位值速记口诀
-
“IAP = 热启动,89C = 冷启动” —— STC 下载方式区分
易错点:
-
题目问的是"错误的"说法,多选题一定要看清是选"正确的"还是"错误的"!
-
不要把 PWM+滤波=DAC 当成错误说法,这是完全成立的经典方案
-
P0 口比较特殊:虽然复位值也是 0xFF,但由于 P0 内部没有上拉电阻(开漏输出),实际引脚电平取决于外部电路
速查卡:本套题核心知识点汇总
模拟电路与信号处理
| 知识点 | 要点 |
|---|---|
| 四种滤波器 | 低通(保直流)、高通(去直流)、带通(留频率)、带阻(去频率) |
| 线与逻辑 | 只有 OC 门(集电极开路)/ OD 门(漏极开路)能实现线与,需外接上拉电阻 |
数字电路
| 知识点 | 要点 |
|---|---|
| 布尔代数化简 | 吸收律 A+AB=A;冗余律 A+A’B=A+B;合并律 AB+AB’=A |
| 德摩根定律 | (AB)’ = A’+B’;(A+B)’ = A’B’ |
51 单片机核心
| 知识点 | 要点 |
|---|---|
| 中断自然优先级 | INT0 > T0 > INT1 > T1 > UART(从高到低) |
| P0 口外部总线 | 低 8 位地址/数据复用口,需 ALE+锁存器 |
| P2 口外部总线 | 高 8 位地址口 |
| 复位后端口状态 | P0~P3 = 0xFF(高电平),其他 SFR 多为 0x00 |
| SP 复位值 | 0x07 |
C51 存储关键字
| 关键字 | 位置 | 寻址指令 | 范围 |
|---|---|---|---|
| data | 内部 RAM 直接 | MOV | 0~127B |
| idata | 内部 RAM 间接 | MOV @Ri | 0~255B |
| pdata | 外部 RAM 分页 | MOVX @Ri | 低 256B |
| xdata | 外部 RAM 全部 | MOVX @DPTR | 0~64KB |
| code | ROM 只读 | MOVC | 程序空间 |
CT107D 竞赛板
| 知识点 | 要点 |
|---|---|
| 数码管消隐 | 先写 0xFF 灭段码,再切位选,防止鬼影/串显 |
| 138 译码器 | Y6=位选锁存、Y7=段码锁存、Y4=LED 锁存 |
| 数码管类型 | 共阳极,0xFF=全灭,0x00=全亮 |
STC 单片机下载
| 类型 | 方式 | 代表型号 |
|---|---|---|
| 冷启动 | 断电重上电进入下载 | STC89C52 |
| 热启动 | 软件命令重启下载 | IAP15F2K61S2 |
PWM 与 DAC
| 知识点 | 要点 |
|---|---|
| PWM 实现 DAC | PWM 信号 + RC 低通滤波 → 输出电压与占空比成正比 |
| 公式 | Vout = Duty × VCC(占空比 × 电源电压) |
整理时间:2026-03-18
得分统计:4/8(50%)
薄弱环节:P0/P2 口总线功能区分、C51 存储关键字辨析、单片机复位状态、CT107D 消隐操作
下次复习重点:背熟 C51 五大存储关键字、记住复位后端口状态为 0xFF、理解 P0 地址/数据复用机制