第七节 树莓派上C#控制GPIO

在.NET环境下实现树莓派的GPIO与UART控制

  • 准备工作
  • GPIO控制
    • 1. 先添加依赖包
    • 2. 编写程序
    • 3. 搭建硬件
    • 4. 开始在树莓派运行

准备工作

  1. 先检查树莓派.NET环境,没有环境按照上一节教程安装。
dotnet --version

在这里插入图片描述

  1. 准备直插LED灯珠,电阻,用于GPIO口控制测试
  2. 树莓派GPIO引脚图
    第七节 树莓派上C#控制GPIO_第1张图片

GPIO控制

由于上一节教程创建了一个.NET工程,我们就在这个工程里进行代码编写,这里我们参考了微软官方给出的IOT文档,地址是: https://docs.microsoft.com/zh-cn/dotnet/iot/tutorials/blink-led.

1. 先添加依赖包

第七节 树莓派上C#控制GPIO_第2张图片
打开后搜索依赖包名称 Iot.Device.Bindings并点击安装
第七节 树莓派上C#控制GPIO_第3张图片

安装完成后
第七节 树莓派上C#控制GPIO_第4张图片

2. 编写程序

直接复制官网的代码,我稍微做了一些修改,是关于GPIO输入的,例程只给了输出怎么写,还有pin脚我改成27了,这个可以自己随便改,尽量避开复用引脚。

using System.Device.Gpio;
using System.Threading;

 Console.WriteLine("Blinking LED. Press Ctrl+C to end.");
 int pin = 27;
 using var controller = new GpioController();
 controller.OpenPin(pin, PinMode.Output);  //输出模式
 //controller.OpenPin(pin, PinMode.Input); //输入模式
 bool ledOn = true;

 while (true)
 {
     controller.Write(pin, ((ledOn) ? PinValue.High : PinValue.Low));  //控制输出电平
     //controller.Read(pin); //读取输入电平
     ledOn = !ledOn;

     Thread.Sleep(1000);
 }

添加完成后是下图的样子,注意添加using引用
第七节 树莓派上C#控制GPIO_第5张图片
由于这个在Windows下运行无法看到效果,只能在树莓派上运行,只需要重新生成就可以了
第七节 树莓派上C#控制GPIO_第6张图片
然后就是将工程目录文件夹下的net5.0文件夹放入树莓派,和上一节一样,参考上节。

3. 搭建硬件

上面移植完了软件,就开始搭建硬件,搭建硬件的时候,参考上面微软示例的方式。
当自己搭建其他硬件测试的时候请参考树莓派的官方文档,地址:链接: https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#general-purpose-io-gpio.
要注意IO的口耐压和耐流,避免引起损坏,电压最大不超过3.3V,电流低于16mA。

4. 开始在树莓派运行

到net5.0文件夹下运行程序

dotnet RaspberryTest.dll

可以观察灯一秒闪烁一次

ctrl+c  //停止运行

最后,GPIO的输入可参考上面修改即可

你可能感兴趣的:(树莓派学习开发应用之旅,arm)