README Windows¶
The simplyCAN software package is delivered as .zip archive, which includes the following components:
simplyCAN library (dll, static lib)
Header file
BusMonitor executable
FlashTool executable
Demo applications for C, C# and Python
Driver (.inf file)
API documentation
License
Installation¶
For installation instructions, please refer to doc\4.01.0001.22001-simplyCAN-en.pdf
Usage of the Flashtool¶
If a firmware update will be available, the flash tool can be used to update the firmware.
Syntax:
scflash <serial-port> <file-name>
Example:
scflash COM5 update.hfu
Usage of the simplyCAN library¶
Open existing or create a new project for your application
Copy simply.h, from the inc\ directory, into your project and make sure that the location where the file reside appears in the ‘Additional Include Directories’ section (Configuration Properties -> C/C++ -> General).
Copy the .lib file from lib\static\ into your project and add ‘simplyCAN.lib’ to your ‘Additional Dependencies’ (Configuration Properties -> Linker -> Input) Also make sure that the directory where simplyCAN.lib resides is added to ‘Additional Library Directories’ (Configuration Properties -> Linker -> General)
If you use the static version of the simplyCAN library, make sure that ‘Runtime Library’ is set to ‘Multi-threaded (/MT)’ (Configuration Properties -> C/C++ -> Code Generation).
Compile and run your application. If you use the DLL version of simplyCAN, remember that you need to have a copy of the DLL either in the runtime directory or in system32.
Usage of the Demo Applications¶
The demo applications are available for C, C# and Python. First the serial port has to be adapted according to your hardware setup. To determine the used serial port, you can:
use the simplyCAN bus monitor
use the Windows device manager
use the function
retrieve_serial_port()(C and Python)
C Demo¶
Adapt the
k_SERIAL_PORTandk_BAUDRATEdefines indemo.caccording to your hardware setup:#ifdef __unix__ #define k_SERIAL_PORT "/dev/ttyACM0" #else #define k_SERIAL_PORT "COM1" #endif #define k_BAUDRATE (250)
Compile and run the application using the Visual Studio project
demo.vcxproj
C# Demo¶
The C# demo is developed for .NET Core 2.0 from Microsoft. To run and build the demo application the .NET Core Runtime is required.
Adapt the name of the DLL that provides the simplyCAN API in
simply.csaccording to your system:public const string SimplyCANlib = "simplyCAN.dll"; // Windows 32bit public const string SimplyCANlib = "simplyCAN-64.dll"; // Windows 64bit public const string SimplyCANlib = "simplyCAN.so"; // ELF 64bit
Adapt
mserial_portandmbitrateindemo.csaccording to your hardware setup://private static char[] mserial_port = "/dev/ttyACM0\0".ToCharArray(); // Linux private static char[] mserial_port = "COM5\0".ToCharArray(); // Windows private static ushort mbitrate = 250;
Run the demo with
dotnet run demo.csproj.
VB.NET Demo¶
The VB demo is developed for .NET4 from Microsoft. To run and build the demo application, Visual Studio 2013 or newer is required.
Adapt the name of the DLL that provides the simplyCAN API in
simply.vbaccording to your system:Public Const SimplyCANlib As String = "simplyCAN.dll" ' Windows 32bit Public Const SimplyCANlib As String = "simplyCAN-64.dll" ' Windows 64bit
Adapt
mserial_portandmbitrateindemo.vbaccording to your hardware setup:Dim comPort As String = "COM5" Dim mbitrate As UShort = 500
Run the demo with
dotnet run demo.vbproj.
Python Demo¶
Adapt the COM port and the baudrate in
demo.pyaccording to your hardware setup:# main("/dev/ttyACM0", 250) # for Linux main("COM6", 250) # for Windows
The value
250is the used baudrate in kBaud.Run the demo with
py demo.py.
Copyright¶
(C) 2019-2022 HMS Technology Center Ravensburg GmbH
Helmut-Vetter-Strasse 2
88213 Ravensburg
Germany