news 2026/5/2 12:53:19

全志H616—蜂鸣器,初次使用OrangePi Zero2

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
全志H616—蜂鸣器,初次使用OrangePi Zero2

文章目录

  • 一、 蜂鸣器
  • 二、软件介绍
    • 2.1.安装官方外设库
    • 2.2.使用外设库让蜂鸣器鸣叫
      • 2.2.1.编译
      • 2.2.2.烧入执行

一、 蜂鸣器

这是一款常见的 5V 有源电磁式蜂鸣器,内置振荡电路。给它接上合适的直流电压(比如这里标明的 5V),它就会自己持续发出“嘀——”的固定频率声音。Vcc 电路板的 5v 供电,GND 与单片机共地,本次实验将蜂鸣器的 IO 口接到单片机的 Pin0 口,只有给 Pin0 口输出低电平,蜂鸣器才会响。

二、软件介绍

2.1.安装官方外设库

使用该款单片机需要从官网上下载它对应的外设库,这些外设驱动也可以自己编写,下面就是下载官方库的介绍:

  • 打开 MobaXterm 并将单片机与 PC 连接成功后,将下面代码输入到终端git clone https://github.com/orangepi-xunlong/wiringOP
  • 自动下载完毕之后,进入文件cd wiringOP
  • 使用超级权限清除编译信息sudo ./build clean
  • 最后编译即可sudo ./build
  • 通过gpio readall验证是否安装成功,如果安装成功,会有以下输出:

上面是开发板的引脚图,1 ~ 34 是单片机的引脚序号,它真正的引脚号是 wPi。通过以上步骤,官方的外设库就安装完毕。

2.2.使用外设库让蜂鸣器鸣叫

在终端使用 vi 指令创建新文件并命名为 Beep.c,在该文件里编写应用代码,使用 while 循环让蜂鸣器每隔 1s 鸣叫一次:

#include<stdio.h>#include<wiringPi.h>#include<unistd.h>#defineBEEP0intmain(void){wiringPiSetup();pinMode(BEEP,OUTPUT);//将Pin0口设置成输出模式while(1){digitalWrite(BEEP,LOW);//将Pin0口置低电平usleep(1000000);digitalWrite(BEEP,HIGH);//将Pin0口置高电平usleep(1000000);}}

2.2.1.编译

编写完毕之后,通过 gcc 指令编译,不过仅仅只有 gcc 编译是不允许的,还需要添加-lwiringPi -lwiringPiDev -lpthread -lm -lcrypt -lrt这些链接才能成功编译,完整指令:

  • gcc Beep.c -lwiringPi -lwiringPiDev -lpthread -lm -lcrypt -lrt

每一次编译都需要输入这么多东西,非常麻烦,可以使用 vi 指令创建一个编译脚本名叫:build.sh,在里面实现通用的编译指令,类似 C 语言的程序传参,将 Beep.c 当参数传入编译脚本中:

//使用美元符号即可表示需要传参gcc $1-lwiringPi-lwiringPiDev-lpthread-lm-lcrypt-lrt

创建编译脚本完成之后,直接输入./build.sh Beep.c即可完成编译。

2.2.2.烧入执行

将代码烧入进单片机需要使用超级权限,也就是sudo ./a.out就可以自动运行,需要超级权限是因为需要访问到每单片机的底层 IO 口。第一次烧入的时候,系统会让用户输入密码,只需要根据要求输入即可。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/2 12:53:17

OpenWrt包开发避坑指南:手把手教你把自定义功能塞进固件

OpenWrt包开发避坑指南&#xff1a;从编译到部署的完整实战手册 在软路由玩家和技术爱好者的圈子里&#xff0c;OpenWrt因其高度可定制性而备受推崇。但当你想为这个开源路由系统添加自己的功能时&#xff0c;往往会遇到各种意想不到的"坑"——从莫名其妙的编译错误&…

作者头像 李华
网站建设 2026/5/2 12:53:12

如何快速提取Wallpaper Engine壁纸资源:RePKG终极使用指南

如何快速提取Wallpaper Engine壁纸资源&#xff1a;RePKG终极使用指南 【免费下载链接】repkg Wallpaper engine PKG extractor/TEX to image converter 项目地址: https://gitcode.com/gh_mirrors/re/repkg 你是否曾经对Wallpaper Engine中精美的动态壁纸感到好奇&…

作者头像 李华
网站建设 2026/5/2 12:53:05

EdgeRemover:三步彻底卸载Windows Edge浏览器的终极解决方案

EdgeRemover&#xff1a;三步彻底卸载Windows Edge浏览器的终极解决方案 【免费下载链接】EdgeRemover A PowerShell script that correctly uninstalls or reinstalls Microsoft Edge on Windows 10 & 11. 项目地址: https://gitcode.com/gh_mirrors/ed/EdgeRemover …

作者头像 李华
网站建设 2026/5/2 12:53:05

智慧树刷课插件终极指南:三步实现高效学习自动化

智慧树刷课插件终极指南&#xff1a;三步实现高效学习自动化 【免费下载链接】zhihuishu 智慧树刷课插件&#xff0c;自动播放下一集、1.5倍速度、无声 项目地址: https://gitcode.com/gh_mirrors/zh/zhihuishu 智慧树刷课插件是一款专为智慧树在线学习平台设计的Chrome…

作者头像 李华