不会书
发表于 2024-8-22 21:30:43
阿杰爱学单片机 发表于 2024-8-22 07:38
蜂鸣器也要接二极管吗,我记得是电感硬件才接吧
蜂鸣器属于感性元器件,关闭时,蜂鸣器里面的电流不能突然降为0,在突然关闭时会产生反相的电压,这时电流就需要有一个泄放路径,二极管就充当这个泄放路径。而蜂鸣器为什么要使用三极管驱动是因为蜂鸣器的电流有10mA左右,IO的驱动能力不够,所以一般蜂鸣器都是通过三极管驱动的
不会书
发表于 2024-8-22 23:12:52
第十六集:IO中断:首先设置IO口的中断模式PXIM0,PXIM1(X=0-7)。端口配置模式和具体端口模式配置寄存器请参考下图。
再打开端口中断使能,寄存器为PxINTE,0为关闭中断,1为打开,具体请参考下图。
以上完成即完成端口中断的初始化。
使用中断函数时,keil5对于c51,c52最多只有32个中断号,想要使用超过31的中断号,可以借助中断号13(闲置的中断号),在STC官网的工具软件里有可以增加keil软件端口数的扩展软件。
然后就是中断函数内部记得执行完后清空标志位让PXINTF = 0;(X = 0-7);
最后就是给定时器设置优先级,具体请参考下图。
这个中断优先级设置我感觉有点没弄明白
哈哈哈哈
发表于 2024-8-22 23:17:41
不会书 发表于 2024-8-22 21:30
蜂鸣器属于感性元器件,关闭时,蜂鸣器里面的电流不能突然降为0,在突然关闭时会产生反相的电压,这时电 ...
STCIO口驱动能力强,我记得手册上写20ma
阿杰爱学单片机
发表于 2024-8-23 06:29:34
不会书 发表于 2024-8-22 21:16
这样的吗
你放外面试试
阿杰爱学单片机
发表于 2024-8-23 06:37:13
不会书 发表于 2024-8-15 02:24
第二天:
第一天的问题已经解决啦,但是不知道原因..... ,可能是之前的环境搭建问题吧?
第六集LED电灯和花 ...
typedef只能给变量取名字
bit是51单片机特殊的变量只能赋值0和一,也就是一位的值
阿杰爱学单片机
发表于 2024-8-23 06:39:44
不会书 发表于 2024-8-22 21:30
蜂鸣器属于感性元器件,关闭时,蜂鸣器里面的电流不能突然降为0,在突然关闭时会产生反相的电压,这时电 ...
懂了,但我一直很疑惑,怎么样做到上电蜂鸣器不响
llyymm
发表于 2024-8-23 08:16:24
看到这些想到我刚开始学习时的情况了,那时候资料真的很难找
小涵子爸爸
发表于 2024-8-23 08:57:37
有c语言,数据结构和模电的基础,这就很好学了
阿杰爱学单片机
发表于 2024-8-23 14:18:18
不会书 发表于 2024-8-22 23:12
第十六集:IO中断:首先设置IO口的中断模式PXIM0,PXIM1(X=0-7)。端口配置模式和具体端口模式配置寄存器请参 ...
不是,学习能力这么强,我当年学8952都学了几个月{:cry:}
不会书
发表于 2024-9-29 14:54:06
今天拿到试验箱啦{:5_316:}
开始学习啦,第17集:
ADC控制寄存器ADC_CONTR
B7位为ADC_POWER 为ADC电源控制位:0关闭ADC电源,1打开ADC电源
打开电源后等待一毫米ADC电源稳定后再让ADC工作
B6位为ADC_START:ADC转换控制位,写1开始ADC转换,转换完成后硬件自动清零
写0对于已经工作的ADC无影响
B5位为ADC_FLAG:ADC转换结束标志位。当ADC完成一次转换后,硬件自动将此位置1,并向CPU提出中断请求,必须软件清零
B4位为ADC_EPWMT:使能PWM实时触发ADC功能
ADC_CHS:ADC模拟通道选择位选择如下图:注意选择通道时要将选择的通道设置为高阻输入
ADC配置寄存器ADCCFG
B5位RESFMT为ADC结果格式控制位,为0时高8位低4位,为1时高4位低8位.
SEED为ADC时钟频率控制如下图:
ADC时序控制器ADCTIM
一般默认值即可,有需要时再修改
具体使用参考下图: