5-51单片机-蜂鸣器实验

一 主要涉及到的知识点:

  1. 对系统默认的数据类型进行重定义,u8,u16;

2.延时函数,主要是将传过来的整数进行减减实现延时;

3.还用到了while()循环;

二 代码分析:

  1. 首次定义一个变量,主要是为了延时蜂鸣器响亮的时长;

2.通过while()循环,使得Buzzer_Port产生脉冲信号,从而使蜂鸣器响;

3.最后将i清零,然后将Buzzer_Port置0关闭蜂鸣器;

三 源代码:

//5-蜂鸣器实验

#include "reg52.h"

//对系统默认的数据类型进行重定义

typedef unsigned char u8;

typedef unsigned int u16;

//延时函数定义

void delay_10us(u16 tiem_num_us)

{

while(tiem_num_us--);

}

sbit Buzzer_Port = P2^5; //将P2.5管脚定义为Buzzer_Port

int main()

{

u16 i = 2000;

while(1)

{

while(i--)//循环2000次

{

Buzzer_Port = !Buzzer_Port; //产生一定频率的脉冲信号

delay_10us(100);

}

i = 0; //清零

Buzzer_Port = 0; //关闭蜂鸣器

}

return 0;

}

相关推荐
广州灵眸科技有限公司9 小时前
瑞芯微RV1126B开发板(EASY-EAI-PI2) 开发(编译)方式说明
linux·服务器·单片机·嵌入式硬件·电脑
努力学习_小白9 小时前
ResNeXt-50——学习记录
pytorch·深度学习·学习
IT_阿水9 小时前
STM32 HAL库输入捕获配置
stm32·单片机·嵌入式硬件
zlinear数据采集卡10 小时前
555触摸延时开关深度解析:从电路原理到智能楼道灯应用
单片机·嵌入式硬件
毕竟是shy哥11 小时前
基于提示引导适配器的实体级对齐遥感图文检索
人工智能·学习·bert·transformer
happyness4412 小时前
向AI学习,而不是把任务扔给AI
人工智能·学习
世人万千丶13 小时前
鸿蒙PC问题解决:窗口拖动与拉伸时页面布局瞬间错乱、回弹后恢复
学习·华为·开源·harmonyos·鸿蒙·鸿蒙系统
zyl8372113 小时前
Python NumPy 学习
python·学习·numpy
装不满的克莱因瓶13 小时前
学习使用 Python 机器学习工具 sklearn
人工智能·python·学习·机器学习·ai·agent·智能体
GNG13 小时前
《终身成长》读书笔记
笔记·学习