Orangepi Zero2使用外设驱动库wiringOP驱动蜂鸣器

2024-06-26 1298阅读

 

目录

一、安装外设驱动库

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 如下方所示,外设库就完成安装了

Orangepi Zero2使用外设驱动库wiringOP驱动蜂鸣器

二、使用wiringOP库驱动蜂鸣器

2.1 蜂鸣器的硬件连接:

Orangepi Zero2使用外设驱动库wiringOP驱动蜂鸣器

Orangepi Zero2使用外设驱动库wiringOP驱动蜂鸣器

  • 蜂鸣器I/O口对应的物理引脚的3号,其实对应的wPi的第0号

    Orangepi Zero2使用外设驱动库wiringOP驱动蜂鸣器

    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编译会出错:

    Orangepi Zero2使用外设驱动库wiringOP驱动蜂鸣器

    还需要链接库:-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

    Orangepi Zero2使用外设驱动库wiringOP驱动蜂鸣器

    我们创建了一个脚本,往脚本里面写入了内容,但是发现脚本无法运行,原因是我们新创建的脚本是没有权限的

    需要使用指令chmod +x build.sh来赋予它执行的权限

    Orangepi Zero2使用外设驱动库wiringOP驱动蜂鸣器

     此时按照对应的格式进行编译,就生成了可执行程序a.out

    Orangepi Zero2使用外设驱动库wiringOP驱动蜂鸣器

    注意!生成的a.out可执行程序,需要使用sudo超级用户权限来运行,然后输入密码之后我们就听到了蜂鸣器滴滴响了

    Orangepi Zero2使用外设驱动库wiringOP驱动蜂鸣器

     我们可以看到蜂鸣器对应的GPIO的Mode就变成了OUT输出模式

    Orangepi Zero2使用外设驱动库wiringOP驱动蜂鸣器

    2.3 设置vim代码显示格式:

    将手动对齐的Tab和自动对齐从8个空格设置成4个空格&自动显示行号的方法:

    sudo vim /etc/vim/vimrc
        
    set tabstop=4 		//设置tab键缩进4个空格
    set shiftwidth=4 	//设置批量对齐时候的tab键空格数为4
    set nu 				//这样用vi打开文件的时候会自动显示行号

    Orangepi Zero2使用外设驱动库wiringOP驱动蜂鸣器

    我们可以看到修改之后的代码,我们在写代码的时候舒服多了

    Orangepi Zero2使用外设驱动库wiringOP驱动蜂鸣器

VPS购买请点击我

免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

目录[+]