树莓派上安装.Dotnet core环境

登陆树莓派,可以通过一根直连的网张,电脑网卡DHCP模式,输入以下地址直接登陆:

ssh raspberrypi.local

使用wget下载安装包;

wget https://download.visualstudio.microsoft.com/download/pr/72888385-910d-4ef3-bae2-c08c28e42af0/59be90572fdcc10766f1baf5ac39529a/dotnet-sdk-6.0.101-linux-arm.tar.gz

解压安装包,并配置环境:

mkdir -p $HOME/dotnet && tar zxf dotnet-sdk-6.0.101-linux-arm.tar.gz -C $HOME/dotnet
export DOTNET_ROOT=$HOME/dotnet
export PATH=$PATH:$HOME/dotnet

使用export命令查看配置的环境:

root@raspberrypi:/home/pi/Downloads# export -p


declare -x DBUS_SESSION_BUS_ADDRESS="unix:path=/run/user/1000/bus"
declare -x DISPLAY="localhost:10.0"
declare -x DOTNET_ROOT="/root/dotnet"
declare -x HOME="/root"
declare -x LANG="en_US.UTF-8"
declare -x LANGUAGE="en_US.UTF-8"
declare -x LC_ALL="en_US.UTF-8"
declare -x LOGNAME="pi"
declare -x LS_COLORS="rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:"
declare -x MAIL="/var/mail/root"
declare -x MOTD_SHOWN="pam"
declare -x NO_AT_BRIDGE="1"
declare -x OLDPWD="/home/pi"
declare -x PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/games:/usr/games:/home/pi/dotnet:/home/pi/dotnet:/root/dotnet"
declare -x PWD="/home/pi/Downloads"
declare -x SHELL="/bin/bash"
declare -x SHLVL="2"
declare -x SSH_CLIENT="192.168.43.193 12520 22"
declare -x SSH_CONNECTION="192.168.43.193 12520 192.168.43.135 22"
declare -x SSH_TTY="/dev/pts/0"
declare -x TERM="xterm"
declare -x TEXTDOMAIN="Linux-PAM"
declare -x USER="pi"
declare -x XDG_RUNTIME_DIR="/run/user/1000"
declare -x XDG_SESSION_CLASS="user"
declare -x XDG_SESSION_ID="4"
declare -x XDG_SESSION_TYPE="tty"

开机自启动,可以通过编辑/etc/profile文件,添加export路径实现。

有时候,开机重启,采用命令dotnet无法启动,多半是两个环境变量没有配置好,仔细检查一下这两个值:

declare -x DOTNET_ROOT="/root/dotnet"
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/games:/usr/games:/home/pi/dotnet:/home/pi/dotnet:/root/dotnet"

树莓派可以通过WIFI共享的方式,无需显示器,通过SSH登陆来实现操作。

WIFI的账号、密码均保存在以下地址:

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

//可以看到以下信息:

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=CN

network={
	ssid="VN007-2.4G-A011EC"
	psk="WIFI密码"
	key_mgmt=WPA-PSK



}

第二篇:让树莓派的一个GPIO周期性的闪亮

可以单独控制常规用途 I/O (GPIO) 引脚。 这对控制 LED、中继和其他有状态设备很有用。 在本主题中,你将使用 .NET 和 Raspberry Pi 的 GPIO 引脚使 LED 通电,并重复闪烁。

先决条件

  • 安装了 Raspberry Pi OS 的 Raspberry pi(2 或更高版本)
  • 5 毫米 LED
  • 330 Ω 电阻器
  • 试验板
  • 跳线
  • Raspberry Pi GPIO 分线板(可选/推荐)
  • .NET SDK 版本 5.0.100 RC2 或更高版本
  • 确保已在 Raspberry Pi 上启用 SSH

硬件连接如下,用的是树莓派的GPIO18;

树莓派上安装.Dotnet core环境_第1张图片

上图描述了下列连接:

  • GPIO 18 到 LED 阳极(较长、正极导线)
  • LED 阴极(较短、负极导线)到 330 Ω 电阻器(任一端)
  • 330 Ω 电阻器(另一端)到地面

根据需要,请参阅以下引脚分配关系图:

树莓派上安装.Dotnet core环境_第2张图片

创建应用

在首选开发环境中完成以下步骤:

使用 .NET CLI 或 Visual Studio 创建新 .Net 控制台应用。 将其命名为 BlinkTutorial。

dotnet new console -o BlinkTutorial

进入BlinkTutorial的文件目录,将 Iot.Device.Bindings 包添加到项目。

dotnet add package Iot.Device.Bindings

将 Program.cs 的内容替换为以下代码:

root@raspberrypi:/BlinkTutorial # nano Program.cs 

通过nano工具,编写以下内容:

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

Console.WriteLine("Blinking LED. Press Ctrl+C to end.");
int pin = 18;
using var controller = new GpioController();
controller.OpenPin(pin, PinMode.Output);
bool ledOn = true;
while (true)
{
    controller.Write(pin, ((ledOn) ? PinValue.High : PinValue.Low));
    Thread.Sleep(1000);
    ledOn = !ledOn;
}

在上述代码中:

using 声明创建 GpioController 实例。 using 声明可确保对象已处置,硬件资源已正确释放。
GPIO 引脚 18 已为输出打开
while 循环无限期运行。 每次迭代:
向 GPIO 引脚 18 写入值。 如果 ledOn 为 true,则迭代写入 PinValue.High(开)。 否则,写入 PinValue.Low。
休眠 1000 毫秒。
切换 ledOn 的值。
构建应用程序。 如果使用的是 .NET CLI,请运行 dotnet build。

将该应用作为独立应用部署到 Raspberry Pi。

通过命令运行:

root@raspberrypi:/BlinkTutorial/bin/Debug/net6.0# dotnet BlinkTutorial.dll

恭喜! 你已使用 GPIO 让 LED 闪烁。

你可能感兴趣的:(小技巧,linux,运维,服务器)