Orangepi Zero2使用外设驱动库wiringOP驱动蜂鸣器
目录
一、安装外设驱动库
1.1 wiringPi外设SDK安装:
二、使用wiringOP库驱动蜂鸣器
2.1 蜂鸣器的硬件连接:
2.2 使用wiringOP库实现蜂鸣器滴滴响:
2.3 设置vim代码显示格式:
一、安装外设驱动库
1.1 wiringPi外设SDK安装:
方式一:
git clone https://github.com/orangepi-xunlong/wiringOP //下载源码
cd wiringOP //进入文件夹
sudo ./build clean //清除编译信息
sudo ./build //编译
gpio readall //查看外设库是否安装成功
方式二:
通过windows浏览器打开https://github.com/orangepi-xunlong/wiringOP
把压缩包通过xterm传到开发板解压 unzip xxx.zip
cd xxx
sudo ./build
gpio readall
验证指令: gpio readall 如下方所示,外设库就完成安装了
二、使用wiringOP库驱动蜂鸣器
2.1 蜂鸣器的硬件连接:
-
蜂鸣器I/O口对应的物理引脚的3号,其实对应的wPi的第0号
2.2 使用wiringOP库实现蜂鸣器滴滴响:
#include #include #include #define BEEP 0 //设置针脚0为蜂鸣器控制引脚 int main (void) { wiringPiSetup(); //初始化wiringPi库 pinMode (BEEP, OUTPUT) ; //设置蜂鸣器IO口为输出模式 while(1){ digitalWrite (BEEP, LOW); //设置蜂鸣器IO口输出低电平蜂鸣器响 usleep(300000); //延时300ms //sleep(1); digitalWrite (BEEP, HIGH); //设置蜂鸣器IO口输出高电平蜂鸣器不响 usleep(300000); //延时300ms //sleep(1); } return 0; }代码写完之后我们编译,我们直接用gcc编译会出错:
还需要链接库:-lwiringPi -lwiringPiDev -lpthread -lm -lcrypt -lrt,但是每次写这么一大串很麻烦,所以可以写一个脚本:build.sh
shell脚本应该适用于各种程序的名字: $0 ./build.sh $1 beep.c shell脚本处理参数可以通过$来处理,这里的$1就是要编译的文件 gcc $1 -lwiringPi -lwiringPiDev -lpthread -lm -lcrypt -lrt我们创建了一个脚本,往脚本里面写入了内容,但是发现脚本无法运行,原因是我们新创建的脚本是没有权限的
需要使用指令chmod +x build.sh来赋予它执行的权限
此时按照对应的格式进行编译,就生成了可执行程序a.out
注意!生成的a.out可执行程序,需要使用sudo超级用户权限来运行,然后输入密码之后我们就听到了蜂鸣器滴滴响了
我们可以看到蜂鸣器对应的GPIO的Mode就变成了OUT输出模式
2.3 设置vim代码显示格式:
将手动对齐的Tab和自动对齐从8个空格设置成4个空格&自动显示行号的方法:
sudo vim /etc/vim/vimrc set tabstop=4 //设置tab键缩进4个空格 set shiftwidth=4 //设置批量对齐时候的tab键空格数为4 set nu //这样用vi打开文件的时候会自动显示行号我们可以看到修改之后的代码,我们在写代码的时候舒服多了
免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!












