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;

}

相关推荐
jianqiang.xue16 分钟前
嵌入式软件架构设计:从分层思想到状态机实现,打造高可维护、高可移植的工程级代码
c语言·驱动开发·stm32·单片机·mcu·物联网·iot
项目題供诗18 分钟前
51单片机入门-LCD1602(十四)
单片机·嵌入式硬件·51单片机
01二进制代码漫游日记18 分钟前
通讯录(一)
c语言·数据结构·学习
困死,根本不会20 分钟前
STM32与树莓派USART通信实战:从零开始调试与回声功能实现
stm32·单片机·嵌入式硬件
江苏世纪龙科技23 分钟前
让汽修课堂“动”起来—哈弗M6汽车故障诊断与排除仿真教学软件
学习
lisw0529 分钟前
单片机:概念、历史、内容与发展战略!
人工智能·单片机·机器学习
困死,根本不会37 分钟前
Windows下模拟树莓派:使用ble-serial创建虚拟串口实现手机蓝牙通信
windows·python·单片机·嵌入式硬件·树莓派
小陈phd43 分钟前
多模态大模型学习笔记(二十三)——一文搞懂数虚拟人:从定义、分类到核心技术全景
笔记·学习
糖果店的幽灵43 分钟前
【大模型】大模型学习总结之机器学习-3.模型评估
人工智能·学习·机器学习
Edward111111111 小时前
3月23Math类,Arrays类
java·学习