Microsoft .Net-Samples
Loading...
Searching...
No Matches
fho.frm.net.Microsoft_DotNetSamples.ClassMethode.Board Class Reference

Erzeugt eine Instance von Raspberry-Board-Class (Basiert auf Project: Raspberry.System). Represents the Raspberry Pi mainboard. More...

Properties

static Board Current [get]
 Erteugt eine Board-Instance und gibt diese Zurück.
static string VersionNumber [get, set]
 Gets Version and date of Version.
static string ExternSettings [get]
 Read Einstellungen im Local-Config-File (App.Config) In der .Net-Version nicht implementiert.
bool IsRaspberryPi [get]
 Gets a value indicating whether this instance is a Raspberry Pi.
string ProcessorName [get]
 Gets Processor-Name.
Processor Processor [get]
 Gets Processor-Type. Wird aus den .Net/FW4.XX Programmen aufgerufen! (ZWINGEND).
int Firmware [get]
 Gets the board firmware version.
string SerialNumber [get]
 Gets the serial number.
bool IsOverclocked [get]
 Gets a value indicating whether Raspberry Pi board is overclocked.
Model Model [get]
 Gets the model.
ConnectorPinout ConnectorPinout [get]
 Gets the connector revision.

Private Member Functions

 Board (Dictionary< string, string > settings)
 PRIVATE Constructor Es wird keine Instanzierung zugelassen. Die Instanz wird mit der Eigenschaft Board.Current erzeugt.
Model LoadModel ()
 Gets the Raspberry Board-Model auf Basis der Firmware.
ConnectorPinout LoadConnectorPinout ()
 Gets Connector-Pinout Version und Type.

Static Private Member Functions

static Board LoadBoard ()
 Read CPUINFO Values ind settings.

Private Attributes

readonly Dictionary< string, string > settings
 Directory mit alllen Settinns aus cat /proc/cpuinfo.
readonly Lazy< Modelmodel
 Model Instance.
readonly Lazy< ConnectorPinoutconnectorPinout
 Connector-Pin Instance.

Static Private Attributes

static Processor _ProcessorName = Processor.Unknown
 Neues Feld zur Speicherung des Processsor-Namen. Definiert in LoadModel().
static readonly Lazy< Boardboard = new Lazy<Board>(LoadBoard)
 Board Instance aus LoadBoard().

Detailed Description

Erzeugt eine Instance von Raspberry-Board-Class (Basiert auf Project: Raspberry.System). Represents the Raspberry Pi mainboard.

Remarks:

Das Grundproblem bei der Erkennung und Zuweisung eines Processor-Type nach der Firmware hat seine Probleme. Je mehr solche Firmware-Versionen im Umlauf sind, desto kompolierter wird die Zuweisung, resp. die jeweilige Anpassung der Software!

Link: http://raspberryalphaomega.org.uk/2013/02/06/automatic-raspberry-pi-board-revision-detection-model-a-b1-and-b2/

Raspberry Pi revision codes Normaler Text zum Problem
Version and revisions are based on http://raspberryalphaomega.org.uk/2013/02/06/automatic-raspberry-pi-board-revision-detection-model-a-b1-and-b2/
Information
GitHub
Raspberry-Software
proc - Pseudo-Dateisystem für Prozessinformationen https://manpages.debian.org/bookworm/manpages-de/proc.5.de.html
GitHub
GitHub
GitHub

Anzeigen Messages dmesg
Anzeigen GPIO-Pinout pinout

Constructor & Destructor Documentation

◆ Board()

fho.frm.net.Microsoft_DotNetSamples.ClassMethode.Board.Board ( Dictionary< string, string > settings)
private

PRIVATE Constructor Es wird keine Instanzierung zugelassen. Die Instanz wird mit der Eigenschaft Board.Current erzeugt.

Parameters
settings

Erstellt einen threadsicheren Lazy Initialisierer für Type: Model (enum) https://learn.microsoft.com/de-de/dotnet/api/system.lazy-1?view=net-8.0

Member Function Documentation

◆ LoadBoard()

Board fho.frm.net.Microsoft_DotNetSamples.ClassMethode.Board.LoadBoard ( )
staticprivate

Read CPUINFO Values ind settings.

Returns

◆ LoadConnectorPinout()

ConnectorPinout fho.frm.net.Microsoft_DotNetSamples.ClassMethode.Board.LoadConnectorPinout ( )
private

Gets Connector-Pinout Version und Type.

Returns

Remarks:

◆ LoadModel()

Model fho.frm.net.Microsoft_DotNetSamples.ClassMethode.Board.LoadModel ( )
private

Gets the Raspberry Board-Model auf Basis der Firmware.

Returns

Remarks:

Zusätzlich wurde die Option Processor-Type implementiert. Das Problem liegt bei der Linux-Implementierung, da sich die Community entschlossen hat, den Hardware: Name nicht mehr zu implementieren. Somit habe ich alles so umgebaut, dass der Processor-Type aus der Board Firmware-Version ausgelesen werden kann. https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#raspberry-pi-revision-codes

Member Data Documentation

◆ _ProcessorName

Processor fho.frm.net.Microsoft_DotNetSamples.ClassMethode.Board._ProcessorName = Processor.Unknown
staticprivate

Neues Feld zur Speicherung des Processsor-Namen. Definiert in LoadModel().

◆ board

readonly Lazy<Board> fho.frm.net.Microsoft_DotNetSamples.ClassMethode.Board.board = new Lazy<Board>(LoadBoard)
staticprivate

Board Instance aus LoadBoard().

◆ connectorPinout

readonly Lazy<ConnectorPinout> fho.frm.net.Microsoft_DotNetSamples.ClassMethode.Board.connectorPinout
private

Connector-Pin Instance.

◆ model

readonly Lazy<Model> fho.frm.net.Microsoft_DotNetSamples.ClassMethode.Board.model
private

Model Instance.

◆ settings

readonly Dictionary<string, string> fho.frm.net.Microsoft_DotNetSamples.ClassMethode.Board.settings
private

Directory mit alllen Settinns aus cat /proc/cpuinfo.

Property Documentation

◆ ConnectorPinout

ConnectorPinout fho.frm.net.Microsoft_DotNetSamples.ClassMethode.Board.ConnectorPinout
get

Gets the connector revision.

The connector revision.

Remarks:

◆ Current

Board fho.frm.net.Microsoft_DotNetSamples.ClassMethode.Board.Current
staticget

Erteugt eine Board-Instance und gibt diese Zurück.

Remarks:

Achtung: Constructor ist PRIVATE, es kann keine Instance erzeugt werden mittels Constructor.

Was soll diese Ganze Logik, entweder komplette Verschleireung was wirklich gemacht wird, oder ein technologisches Meisterstück.

◆ ExternSettings

string fho.frm.net.Microsoft_DotNetSamples.ClassMethode.Board.ExternSettings
staticget

Read Einstellungen im Local-Config-File (App.Config) In der .Net-Version nicht implementiert.

◆ Firmware

int fho.frm.net.Microsoft_DotNetSamples.ClassMethode.Board.Firmware
get

Gets the board firmware version.

◆ IsOverclocked

bool fho.frm.net.Microsoft_DotNetSamples.ClassMethode.Board.IsOverclocked
get

Gets a value indicating whether Raspberry Pi board is overclocked.

true if Raspberry Pi is overclocked; otherwise, false.

◆ IsRaspberryPi

bool fho.frm.net.Microsoft_DotNetSamples.ClassMethode.Board.IsRaspberryPi
get

Gets a value indicating whether this instance is a Raspberry Pi.

true if this instance is a Raspberry Pi; otherwise, false.

◆ Model

Model fho.frm.net.Microsoft_DotNetSamples.ClassMethode.Board.Model
get

Gets the model.

The model.

◆ Processor

Processor fho.frm.net.Microsoft_DotNetSamples.ClassMethode.Board.Processor
get

Gets Processor-Type. Wird aus den .Net/FW4.XX Programmen aufgerufen! (ZWINGEND).

◆ ProcessorName

string fho.frm.net.Microsoft_DotNetSamples.ClassMethode.Board.ProcessorName
getprivate

Gets Processor-Name.

Remarks:

Spezielle Version welche auf Basis der Firmware und LoadModel() den aktuellen Processor-Namen erzeugen kann. Damit ist jetzt die Firmware-Number verantwortlich für den Processor-Namen

◆ SerialNumber

string fho.frm.net.Microsoft_DotNetSamples.ClassMethode.Board.SerialNumber
get

Gets the serial number.

◆ VersionNumber

string fho.frm.net.Microsoft_DotNetSamples.ClassMethode.Board.VersionNumber
staticgetset

Gets Version and date of Version.

Gets Version and date of Version


The documentation for this class was generated from the following file:
  • U:/00000000_global_projects/000_DotNetxx/fho.frm.net.Microsoft_DotNetSamples/fho.frm.net.Microsoft_DotNetSamples/ClassMethode/SampleRaspberry.cs