• C# 使用.net core 驱动树莓派的IO信号


    如何使用.net core来驱动树莓派的IO信号?是我们的实际项目需求中,可能就会有这种小项目,我们要输出一个IO信号,此处我们拿了树莓派4做测试

     一共有两排引脚,引脚的顺序定义及功能如下:

     我们就参考两侧的灰色的索引文本就好了,好了,我们来新建项目了,新建一个.Net Core的项目,当然是用最新的VS2019了

    然后安装system.Device.GPIO 库,会附带一些库信息。

    然后我们写程序:

            static void Main( string[] args )
            {
                Console.WriteLine( "请输入你要控制的针脚:" );
                int index = int.Parse( Console.ReadLine( ) );
    
                System.Device.Gpio.GpioController controller = new System.Device.Gpio.GpioController( System.Device.Gpio.PinNumberingScheme.Board );
                if(!controller.IsPinOpen( index ))
                {
                    controller.OpenPin( index );
                    controller.SetPinMode( index, System.Device.Gpio.PinMode.Output );
                }
    
    
                Console.WriteLine( "请选择控制模式?输入1是间隔1秒交替变化,输入2是间隔10秒交替变化,输入3是手动控制变化" );
                int mode = int.Parse( Console.ReadLine( ) );
    
                if (mode == 1 || mode == 2)
                {
                    while (true)
                    {
                        Console.WriteLine( "正在写入True值" );
                        controller.Write( index, System.Device.Gpio.PinValue.High );
                        Thread.Sleep( mode == 1 ? 1000 : 10000 );
                        Console.WriteLine( "正在写入False值" );
                        controller.Write( index, System.Device.Gpio.PinValue.Low );
                        Thread.Sleep( mode == 1 ? 1000 : 10000 );
                    }
                }
                else
                {
                    while (true)
                    {
                        Console.WriteLine( "你输入你接下来要写入的值,0代表低电平,1代表高电平" );
                        int value = int.Parse( Console.ReadLine( ) );
                        controller.Write( index, value == 1 ? System.Device.Gpio.PinValue.High : System.Device.Gpio.PinValue.Low );
                    }
                }
            }

    然后就是发布了,直接发布独立的版本,虽然带了很多的环境,但是省事。

    然后把文件都拷贝到树莓派里面

    通过万用表的测试发现,树莓派的GPIO针脚的输出为 3.3V  40 ma,驱动能力非常弱。感谢支持。

  • 相关阅读:
    Todo
    我的类
    Python socket编程之七:多窗口的应用
    iOS与PHP/Android AES128 ECB NoPadding加密
    JSONModel简便应用
    iOS开发系列--UITableView全面解析
    常用方法
    OC和C++混编
    数据层
    block
  • 原文地址:https://www.cnblogs.com/dathlin/p/12010945.html
Copyright © 2020-2023  润新知