|
|
(334 intermediate revisions by 10 users not shown) |
Line 1: |
Line 1: |
| Preamble about the language and its general strengths and weaknesses.
| | <metadesc>Communicate over USB with sensors, controllers and relays with Phidgets! Our C# library supports Windows/MacOS/Linux using Visual Studio or Mono.</metadesc> |
| | [[Category:Language]] |
| | __NOTOC__ |
| | We provide support for the C# language in all major operating systems. We also provide instructions on how to get your project started in a number of common development environments. Select your operating system and preferred development environment below, and follow the instructions to get your project running with Phidgets. |
|
| |
|
| ==Assessment for use with Phidgets==
| | If you do not know which development environment you want to use, or your development environment of choice is not listed, we recommend starting with Mono as the simplest path to getting your code running. Visual Studio is the most popular way to build C# projects, but it also has a steep learning curve. |
| Our honest opinion on how well this language is suited to controlling Phidgets. If it is a poor choice, suggest and link similar (better) languages.
| |
|
| |
|
| ==Support==
| | Once you have set up your development environment to run with Phidgets, we recommend you follow our guide on [[Phidget Programming Basics]]. The guide will showcase the fundamentals of programming with Phidgets, with examples in C#. |
| #Here are the resources we provide.
| |
| #This is what you can and cannot expect from us if you use this language. | |
|
| |
|
| ==Restrictions== | | == Setup Guide == |
| In this section, list any restrictions or limitations that this particular language may impose. For example, incompatibility with certain operating systems.
| | <div class="phd-deck-sequence"> |
| | {{PT3_CSHARP_CHOOSE}}{{PT3_CSHARP_WIN_VS}}{{PT3_CSHARP_WIN_VS_1}}{{PT3_CSHARP_WIN_VS_2}} |
| | {{PT3_CSHARP_WIN_MONO}}{{PT3_CSHARP_MAC_MONO}}{{PT3_CSHARP_LNX_MONO}}{{PT3_CSHARP_LNX_DOTNET}}{{PT3_CSHARP_MAC_DOTNET}}{{PT3_CSHARP_WIN_MONODEV}} |
|
| |
|
| ==Versions==
| | </div> |
| | |
| ===V1.09===
| |
| Describe each major version and notable differences relating to programming Phidgets.
| |
| ===V1.08===
| |
| | |
| ==Getting Started==
| |
| ===Environment and Libraries===
| |
| First, we need to set up the proper environment and get the necessary files off the Phidgets website.
| |
| Visit the drivers section at www.phidgets.com and get the latest:
| |
| * [http://www.phidgets.com/drivers.php Phidget Framework]
| |
| You will need the Phidget Framework to use and program with Phidgets. We also recommend that
| |
| you download the following reference materials:
| |
| * [http://www.phidgets.com/documentation/Phidget21.NET.zip .NET API Manual]
| |
| * [http://www.phidgets.com/documentation/Programming_Manual.pdf Programming Manual]
| |
| * The Product Manual for your device (link to the "Device Functionality" page)
| |
| * Example Programs written in C# [[http://www.phidgets.com/downloads/examples/CSharp_2.1.8.20110615.zip Windows]] [[http://www.phidgets.com/downloads/examples/CE_2.1.8.20110615.zip .NET Compact Framework]]
| |
| The .NET API manual lists calls and events for every type of Phidget and can be used as a reference.
| |
| You can find a high level discussion about programming with Phidgets in general in the Programming
| |
| Manual. The Device Functionality page explains the general operational information for your device. You may want to have these manuals
| |
| open while working through these instructions.
| |
|
| |
|
| ===Setting up a Phidgets Project===
| |
| The Phidget examples were written using Visual C# 2005 and this tutorial assumes its use. Newer
| |
| versions of Visual Studio Express are freely available for download from Microsoft. Older versions of
| |
| Visual Studio work as well and would be set up in a similar manner (Note: you would have to recreate
| |
| the user interface in the examples for Visual Studio versions earlier than 2005). In Visual Studio:
| |
| * Generate a new C# Windows Application with a descriptive name such as PhidgetTest.
| |
| * Launch the Add Reference window (Project | Add Reference).
| |
| * Under the .NET tab, select the most recent Phidget21.NET library. If it does not appear in this list, then you can Browse to the Phidget Framework installation directory and add the Phidget21.NET. dll. For earlier versions of Visual Studio, you will want to use the Phidget21.NET1.1.dll instead.
| |
| * Place a TextBox on your main form for the purpose of capturing output.
| |
| * Hook the form's Load and FormClosing events. Phidget initialization and shutdown will take place
| |
| there.
| |
| The project now has access to Phidgets and we are ready to begin coding.
| |
|
| |
|
| ===Coding For Your Phidget=== | | == Quick Downloads == |
| Before you can use the Phidget, you must include a reference in the code to the libraries. Launch the
| | If you already know what you're doing and just need the files, you can find them all below. |
| code editor for your form and add this to your using statements:Getting_Started_CSharp created: 11/10/10 Page 2
| |
| using Phidgets;
| |
| using Phidgets.Events;
| |
| Afterwards, a Phidget object will need to be declared and then initialized. For example, we can
| |
| declare a PhidgetInterfaceKit inside our form with:
| |
|
| |
|
| <div style="background-color: #EFEFEF; border-style: dotted;">
| | === Documentation === |
| <source lang=CSharp>
| |
| namespace PhidgetTest
| |
| {
| |
| public partial class Form1 : Form
| |
| {
| |
| //The Phidget object declaration
| |
| private InterfaceKit ifKit;
| |
| public Form1()
| |
| {
| |
| InitializeComponent();
| |
| }
| |
| //... Form1_Load and Form1_OnClosing here
| |
| }
| |
| }
| |
| </source>
| |
| </div>
| |
|
| |
|
| | *{{Phidget22API}} (Select C# from drop-down menu) |
|
| |
|
| The object name for any type of Phidget is listed in the API manual. Every type of Phidget also
| | === Example Code === |
| inherits functionality from the Phidget base class.
| |
|
| |
|
| ==Building your Project==
| | *{{SampleCode|CSharp|C# Examples}} |
| Describe the different ways a project could be built using this language.
| |
|
| |
|
| ==Common Problems and Solutions/Workarounds== | | ===Libraries=== |
| Here you can put various frequent problems and our recommended solutions.
| |
|
| |
|
| ==API Reference==
| | {{AllQuickDownloads}} |
| This language uses the .NET API, which can be found [http://www.phidgets.com/documentation/web/NETDoc/Index.html here].
| |
We provide support for the C# language in all major operating systems. We also provide instructions on how to get your project started in a number of common development environments. Select your operating system and preferred development environment below, and follow the instructions to get your project running with Phidgets.
If you do not know which development environment you want to use, or your development environment of choice is not listed, we recommend starting with Mono as the simplest path to getting your code running. Visual Studio is the most popular way to build C# projects, but it also has a steep learning curve.
Once you have set up your development environment to run with Phidgets, we recommend you follow our guide on Phidget Programming Basics. The guide will showcase the fundamentals of programming with Phidgets, with examples in C#.
Setup Guide
Select your Development Environment:
Windows with Visual Studio
Welcome to using Phidgets with C#! By using C#, you will have access to the complete Phidget22 API, including events.
Visual Studio is an IDE provided by Microsoft that can be used to develop code in a wide variety of programming languages, including C#.
Requirements
First, make sure you have the following installed:
● Phidgets Drivers for Windows (see Part 1 of this user guide)
● Microsoft Visual Studio
Nuget
The Phidget22.NET library is now available on nuget.org here. Nuget is the recommended way to
install and use the .NET library in Visual Studio. The nuget package bundles the C library on Windows, so there are no other prerequisites that need to be
installed. The nuget package adds targets for .NET Core and .NET Standard, so it should be usable from almost any .NET environment which also supports the C
library.
Using Phidgets in Your Programs
There are two ways you can use Phidgets in Visual Studio. You can either start from a sample project provided by our code sample generator, or you can start a
new project from scratch.
Select your preferred method below for instructions:
Finding Code Samples
To find the code sample to use for your Phidget, navigate to the Code Samples page and
select your device from the drop-down menu.
Once you select your device, the code sample generator will give you a working code sample, and a selection of options to customize it to your needs.
The code samples we provide for C# are written to be used as Console Applications, but the concepts within can easily be re-purposed for use in a Windows Forms
Application.
Using the Code Samples
If it's unclear what any of the options do, click on the nearby '?' for more info.
Once you've made your selections, click the Visual Studio Project button under Downloads.
Using the Code Samples
Extract the files and open the .sln file.
Then start the example by pressing the Start button:
What's Next?
Now that you've set up Phidgets in your programming environment, you should read our guide on Phidget Programming Basics to learn the fundamentals of programming with Phidgets.
Continue reading below for advanced information and troubleshooting for your device.
Setting up a New Project
When you're building a project from scratch or adding Phidget code to an existing project, you need to properly link the Phidget .NET library.
Create a new project (a Console Application will be created for this example):
Setting up a New Project
Next, right-click on References in the solution explorer and choose Add Reference.
Setting up a New Project
On the following screen, click Browse... and navigate to the location of Phidget22.NET.dll:
C:\Program Files\Phidgets\Phidget22\Phidget22.NET.dll
Setting up a New Project
Finally, to include the Phidget .NET library, add the following lines to main window class file:
using Phidget22;
using Phidget22.Events;
Success! The project now has access to Phidgets.
What's Next?
Now that you've set up Phidgets in your programming environment, you should read our guide on Phidget Programming Basics to learn the fundamentals of programming with Phidgets.
Continue reading below for advanced information and troubleshooting for your device.
Windows with Mono
Welcome to using Phidgets with C#! By using C#, you will have access to the complete Phidget22 API, including events.
Mono is an open-source programming environment that aims to make Microsoft .NET applications available across all operating systems.
Requirements
First, make sure you have the following installed:
● Phidgets Drivers for Windows (see Part 1 of this user guide)
● Mono
Finding Code Samples
To find the code sample to use for your Phidget, navigate to the Code Samples page and
select your device from the drop-down menu.
Once you select your device, the code sample generator will give you a working code sample, and a selection of options to customize it to your needs.
Using the Code Samples
If it's unclear what any of the options do, click on the nearby '?' for more info.
Once you've made your selections, click the Download Example button under Downloads.
Setting up a New Project
When you are building a project from scratch, or adding Phidget functionality to an existing project, you'll need to configure your development environment to
properly link the Phidget .NET library.
The easiest way to allow Mono to access the Phidgets .NET library is to place a copy of the Phidget22.NET dll in the same folder as your program.
First, determine which version of the .NET Framework your version of Mono implements by checking the
Mono Release Documentation.
Next, download the Phidget22 Development Libraries, which
contain dlls for each .NET version.
Navigate in the zip file to /lib/dotnet/netXX where 'XX' is your .NET Framework version (for example, net46 for .NET 4.6), and grab the Phidget22.NET.dll
from that folder.
Setting up a New Project
Next, move the Phidget22.NET.dll you extracted into the same folder as your program.
Your folder should look somehting like this:
Compile and Run
Once you are ready to run your program, open the Command Prompt and navigate to your project folder. Next, enter the following command:
mcs /r:Phidget22.NET.dll Program.cs
This will create an executable file called Program.exe. Type in the following command to run the example:
mono Program.exe
Success! The project is now using Phidgets.
What's Next?
Now that you've set up Phidgets in your programming environment, you should read our guide on Phidget Programming Basics to learn the fundamentals of programming with Phidgets.
Continue reading below for advanced information and troubleshooting for your device.
macOS with Mono
Welcome to using Phidgets with C#! By using C#, you will have access to the complete Phidget22 API, including events.
Mono is an open-source programming environment that aims to make Microsoft .NET applications available across all operating systems.
Requirements
First, make sure you have the following installed:
● Phidgets Drivers for macOS (see Part 1 of this user guide)
● Mono
● You'll also need a copy of Phidget22.NET.dll
Finding Code Samples
To find the code sample to use for your Phidget, navigate to the Code Samples page and
select your device from the drop-down menu.
Once you select your device, the code sample generator will give you a working code sample, and a selection of options to customize it to your needs.
Using the Code Samples
If it's unclear what any of the options do, click on the nearby '?' for more info.
Once you've made your selections, click the Download Example button under Downloads.
Setting up a New Project
Whether you are running our examples or adding Phidget functionality to an existing project, you'll need to configure your development environment to properly
link the Phidget .NET library.
The easiest way to allow Mono to access the Phidgets .NET library is to place a copy of the Phidget22.NET dll in the same folder as your program.
First, determine which version of the .NET Framework your version of Mono implements by checking the
Mono Release Documentation.
Next, download the Phidget22 Development Libraries, which
contain dlls for each .NET version.
Navigate in the zip file to /lib/dotnet/netXX where 'XX' is your .NET Framework version (for example, net46 for .NET 4.6), and grab the Phidget22.NET.dll
from that folder.
Setting up a New Project
Next, move the Phidget22.NET.dll you extracted into the same folder as your program.
Finally, you need to create a configuration file. Create a new file in the same directory and name it Phidget22.NET.dll.config. Copy the content below to
the file.
<configuration>
<dllmap dll="phidget22.dll" target="/Library/Frameworks/Phidget22.framework/Versions/Current/Phidget22" />
</configuration>
Setting up a New Project
Your project directory should now look like this:
Compile and Run
Once you are ready to run your program, open the Terminal and navigate to your project folder. Next, enter the following command:
mcs Program.cs -r:Phidget22.NET.dll
This will create an executable file called Program.exe. Type in the following command to run your program:
mono Program.exe
Success! The project is now using Phidgets.
What's Next?
Now that you've set up Phidgets in your programming environment, you should read our guide on Phidget Programming Basics to learn the fundamentals of programming with Phidgets.
Continue reading below for advanced information and troubleshooting for your device.
Linux with Mono
Welcome to using Phidgets with C#! By using C#, you will have access to the complete Phidget22 API, including events.
Mono is an open-source programming environment that aims to make Microsoft .NET applications available across all operating systems.
Requirements
First, make sure you have the following installed:
● Phidgets Drivers for Linux (see Part 1 of this user guide)
● Mono
● A copy of Phidget22.NET.dll
You need our C development libraries in order to use Mono. You can install them with:
apt-get install libphidget22-dev
If you don't already have Mono installed, you can get it with:
apt-get install mono-complete
Finding Code Samples
To find the code sample to use for your Phidget, navigate to the Code Samples page and
select your device from the drop-down menu.
Once you select your device, the code sample generator will give you a working code sample, and a selection of options to customize it to your needs.
Using the Code Samples
If it's unclear what any of the options do, click on the nearby '?' for more info.
Once you've made your selections, click the Download Example button under Downloads.
Setting up a New Project
Whether you are running our examples or adding Phidget functionality to an existing project, you'll need to configure your development environment to properly
link the Phidget .NET library.
The easiest way to allow Mono to access the Phidgets .NET library is to place a copy of the Phidget22.NET dll in the same folder as your program.
First, determine which version of the .NET Framework your version of Mono implements by checking the
Mono Release Documentation.
Next, download the Phidget22 Development Libraries, which
contain dlls for each .NET version.
Navigate in the zip file to /lib/dotnet/netXX where 'XX' is your .NET Framework version (for example, net46 for .NET 4.6), and grab the Phidget22.NET.dll
from that folder.
Setting up a New Project
Move the Phidget22.NET.dll you extracted into the same folder as your program.
Your project directory should now look like this:
Compile and Run
Once you are ready to run your program, open the Terminal and navigate to your project folder. Next, enter the following command:
mcs Program.cs -r:Phidget22.NET.dll
An executable file will be created. Run the program using mono with the following command:
mono Program.exe
Success! The project is now using Phidgets.
What's Next?
Now that you've set up Phidgets in your programming environment, you should read our guide on Phidget Programming Basics to learn the fundamentals of programming with Phidgets.
Continue reading below for advanced information and troubleshooting for your device.
Linux with dotnet CLI
Welcome to using Phidgets with C#! By using C#, you will have access to the complete Phidget22 API, including events.
The dotnet command-line interface is the quickest way to start programming in C# on Linux and MacOS.
Requirements
First, make sure you have the Phidgets Drivers for Linux installed (see this page for installation
instructions).
You also need our C development libraries in order to use dotnet. You can install them with:
apt-get install libphidget22-dev
Installing dotnet CLI
For installation instructions, visit Microsoft's documentation and select your Linux
distro.
Usually, this will involve adding Microsoft packages to your repository and then installing dotnet via apt-get.
Setting up a New Project
Create a new C# project using the following command:
dotnet new console -o helloworld
This will create a new C# console application in a folder named helloworld in your current directory. Next, enter the folder and type:
dotnet run
If everything installed properly, the application should build and you'll see 'Hello, World!' printed in the terminal.
Getting Phidgets Sample Code
Next we'll use this base project to run some Phidgets sample code. Go to the product page for your Phidget and go to the Code Samples tab. Select C# from
the language drop-down and use the check boxes to modify the example if you'd like.
Click the copy button in the corner of the code sample and paste it into the Program.cs for your HelloWorld program, overwriting the existing code.
Compile and Run
Once you've pasted the sample code into the .cs file and saved, you need to add the Phidgets .NET package to your project:
dotnet add package Phidget22.NET
Then you can re-build the project using
dotnet run
Success! The project is now using Phidgets.
What's Next?
Now that you've set up Phidgets in your programming environment, you should read our guide on Phidget Programming Basics to learn the fundamentals of programming with Phidgets.
Continue reading below for advanced information and troubleshooting for your device.
MacOS with dotnet CLI
Welcome to using Phidgets with C#! By using C#, you will have access to the complete Phidget22 API, including events.
The dotnet command-line interface is the quickest way to start programming in C# on MacOS and Linux.
Installing dotnet CLI
First, make sure you have the Phidgets Drivers for MacOS installed (see this page for installation
instructions).
Next, visit Microsoft's .NET page and download .NET after confirming compatibility
with your version of MacOS.
Click on the .pkg file once it's finished downloading, and follow the steps to install the .NET SDK.
Setting up a New Project
Open Finder and go to Utilities -> Terminal. Create a new C# project using the following command:
dotnet new console -o helloworld
This will create a new C# console application in a folder named helloworld in your current directory. Next, type cd helloworld to enter the
folder, and type:
dotnet run
If everything installed properly, the application will build and you'll see 'Hello, World!' printed in the terminal. You can open Program.cs using
the text editor to see the code.
Getting Phidgets Sample Code
Next we'll use this base project to run some Phidgets sample code. Go to the product page for your Phidget and go to the Code Samples tab. Select C# from
the language drop-down and use the check boxes to modify the example if you'd like.
Click the copy button in the corner of the code sample and paste it into the Program.cs for your HelloWorld program, overwriting the existing code.
Compile and Run
Once you've pasted the sample code into the .cs file and saved, you need to add the Phidgets .NET package to your project using this terminal command:
dotnet add package Phidget22.NET
Then you can re-build the project using
dotnet run
Success! The project is now using Phidgets.
What's Next?
Now that you've set up Phidgets in your programming environment, you should read our guide on Phidget Programming Basics to learn the fundamentals of programming with Phidgets.
Continue reading below for advanced information and troubleshooting for your device.
Windows with MonoDevelop / Xamarin Studio
Welcome to using Phidgets with C#! By using C#, you will have access to the complete Phidget22 API, including events.
MonoDevelop is an open-source programming environment that mimics the capabilities of Microsoft Visual Studio and is available across all operating systems.
Requirements
First, make sure you have the following installed:
● Phidgets Drivers for Windows (see Part 1 of this user guide)
● MonoDevelop or Xamarin Studio
Setting up a New Project
When you are building a project from scratch, or adding Phidget function calls to an existing project, you'll need to configure your development environment to
properly link the Phidget .NET library.
First, create a new .NET project:
Setting up a New Project
Name the project and click Create.
Setting up a New Project
Next, add a reference to the Phidget .NET library:
Setting up a New Project
On the following screen, select Phidget22.NET.dll:
Success! The project now has access to Phidgets.
Finding Code Samples
To find the code sample to use for your Phidget, navigate to the Code Samples page and
select your device from the drop-down menu.
Once you select your device, the code sample generator will give you a working code sample, and a selection of options to customize it to your needs.
Using the Code Samples
If it's unclear what any of the options do, click on the nearby '?' for more info.
Once you've made your selections, click the copy button and paste the code into your new project.
What's Next?
Now that you've set up Phidgets in your programming environment, you should read our guide on Phidget Programming Basics to learn the fundamentals of programming with Phidgets.
Continue reading below for advanced information and troubleshooting for your device.
Quick Downloads
If you already know what you're doing and just need the files, you can find them all below.
Documentation
Example Code
Libraries