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;

}

相关推荐
今儿敲了吗12 小时前
ArkTS 声明式 UI 开发
笔记·学习
水云桐程序员12 小时前
单片机:定时器/PWM 配置 - 呼吸灯效果
单片机·嵌入式硬件·mongodb
WeeJot嵌入式12 小时前
【GPIO】按键控制小灯
单片机·嵌入式硬件·mongodb
水云桐程序员12 小时前
单片机:新建第一个工程,点亮LED
单片机·嵌入式硬件
嵌入式小企鹅12 小时前
国芯抗量子MCU突破、太空算力元年开启、AI编程工具密集发布
学习·ai·边缘计算·算力·risc-v·芯片·半导体
华芯微特SYNWIT12 小时前
SWM221 Cortex-M0系列MCU环境配置
单片机·嵌入式硬件
普中科技13 小时前
【普中 51-Ai8051 开发攻略】-- 第 12 章 LED 点阵实验-显示字符
单片机·嵌入式硬件·开发板·led点阵屏·普中科技·ai8051u·aicube
凯尔萨厮13 小时前
Maven学习笔记
笔记·学习·maven
OSwich13 小时前
【 Godot 4 学习笔记】运算符
笔记·学习·godot
艾莉丝努力练剑13 小时前
【Linux加餐】mmap文件映射
linux·运维·服务器·c语言·c++·学习