wuzhengmin 发表于 2026-3-7 20:48:08

P20P21 要驱动LED 设置位推挽输出,使能上拉

Uart1 用定时器2做波特率发生器 8位数据 115200的波特率
端口选RXD P3.0TXD P3.1 与printf相关联

蜂鸣器对应P2.5 设置位推挽输出,使能上拉注意我的板子是P1.5接ULN2003D

K1是P5.1 K2 是P5.0 K3 是P32 K4是P33 都设置为高阻输入,使能上拉

串口配置:不用使能串口中断

看门狗选256分频


wuzhengmin 发表于 2026-3-16 08:59:15

普中新出的AI8051U实验板到货了,今天我们使用新板,来看看:

输入捕获实验

本讲主要内容
1.        实验介绍2.硬件设计 3.软件设计4.实验现象


wuzhengmin 发表于 2026-3-16 09:20:14

8051U内部集成了3组可以编程计数器阵列:PCA CCP PWM 模块,可用于软件定时器、外部脉冲捕获、高速脉冲输出和PWM脉宽调制输出功能,

上次用PCA是PWM模式点亮呼吸灯,今天我们学习外部脉冲捕获功能。

wuzhengmin 发表于 2026-3-16 09:24:03

PCA要工作在外部脉冲捕获,先要设置好寄存器:在此模式下,对管脚上输入的外部跳变脉冲进行采样,当有效跳变产生后,PCA控制器立即将PCA计数器CH、CL中的计数值装载到模块CCAPnH、CCAPnL,同时将CCON中的CCF2、CCF1、CCF0置1

wuzhengmin 发表于 2026-3-16 09:37:53

先看看PCA模式控制:
24.2.4 PCA模块模式控制寄存器(CCAPMn)

wuzhengmin 发表于 2026-3-16 09:38:15

如果ECCFn置1,就会产生PCA中断:

wuzhengmin 发表于 2026-3-16 09:42:59

下列图片把PCA捕获的工作过程描述的很清晰:

wuzhengmin 发表于 2026-3-16 09:44:59

管脚的设置:



其实我们前面做PWM输出呼吸灯实验的时候设置过PCA的管脚,当时用了P2.0做PWM的输出管脚。

wuzhengmin 发表于 2026-3-16 09:59:33

其实我们前面做PWM输出呼吸灯实验的时候设置过PCA的管脚,当时用了P2.0做PWM的输出管脚。
当然今天我们也可以设置CPS取值10,还是用P2.0管脚来捕获脉冲输入,我们先用CCP0

1.2实验目的
使用PCA模块0检测该通道低电平时间,即K1键按下后松开,串口助手输出检测低电平时间。

本实验使用到硬件资源如下:
(1)GPIO
(2)UART1串口
(3)USB转TTL模块

wuzhengmin 发表于 2026-3-16 10:02:06

看看软件配置:
页: 13 14 15 16 17 18 19 20 21 22 [23] 24 25 26 27 28
查看完整版本: 学习休眠唤醒遇到的问题:1无法开启休眠 2舍弃一下功能后能进入休眠但无法唤醒