TOP Contributors

  1. MIKROE (2784 codes)
  2. Alcides Ramos (385 codes)
  3. Shawon Shahryiar (307 codes)
  4. jm_palomino (118 codes)
  5. Bugz Bensce (97 codes)
  6. S P (73 codes)
  7. dany (71 codes)
  8. MikroBUS.NET Team (35 codes)
  9. NART SCHINACKOW (34 codes)
  10. Armstrong Subero (27 codes)

Most Downloaded

  1. Timer Calculator (139845 times)
  2. FAT32 Library (72209 times)
  3. Network Ethernet Library (57392 times)
  4. USB Device Library (47740 times)
  5. Network WiFi Library (43364 times)
  6. FT800 Library (42700 times)
  7. GSM click (29980 times)
  8. mikroSDK (28440 times)
  9. PID Library (26989 times)
  10. microSD click (26398 times)
Libstock prefers package manager

Package Manager

We strongly encourage users to use Package manager for sharing their code on Libstock website, because it boosts your efficiency and leaves the end user with no room for error. [more info]

< Back
mikroSDK Library

CAN Receive Demo

Rating:

0

Author: MIKROE

Last Updated: 2024-07-09

Package Version: 2.0.0.7

mikroSDK Library: 2.0.0.0

Category: CAN

Downloaded: 93 times

Not followed.

License: MIT license  

The application demonstrates CAN receive functionality.

No Abuse Reported

Do you want to subscribe in order to receive notifications regarding "CAN Receive Demo" changes.

Do you want to unsubscribe in order to stop receiving notifications regarding "CAN Receive Demo" changes.

Do you want to report abuse regarding "CAN Receive Demo".

  • Information
  • Comments (0)

mikroSDK Library Blog

CAN Receive

Code developed on UNI-DS v8 and it can be used on other MIKROE development boards as well. Code was developed with purpose of easier understanding Controller Area Network Interface (CAN) receive functions.



Code description

This is a simple example that utilizes mikroSDK 2.10 CAN driver library. We recommend using this demo with CAN Transmit Demo. In this demo MCU receives data using Normal CAN Mode. Default configuration for receiving data is set to receive data from another CAN node, configured with CAN Transmit Demo. In this Demo it is expected to receive 3 data bytes where the first and the third bytes are constant and the second byte is an 8-bit value incremented with each reception and displayed on the port defined as TEST_PORT macro.


Hardware Support

This code was developed on UNI-DS v8 board. For this hardware to work according to program, you will need the following:

  1. Two boards and two MCUs.
  2. Twisted wire - around 30cm of it
  3. MCU cards with CAN connectors (or boards with on-board CAN connectors, such as EasyPIC v8)
    • easypic_v8_can_connector
    • image
  4. Alternatively, instead of soldering additional connectors to your existing MCU cards, you could use CAN-1 Boards

Note: You might need terminal resistence (aproximately 120 Ohms). This is hardware dependent.

To connect everything properly, follow these steps:

  1. Connect CAN connectors with twisted wire. CANH and CANL on one board are connected to CANH and CANL on the other one respectively.
  2. If terminal resistance is needed, put a through-hole resistor in one of the connectors (between CANH and CANL of the same connector).
  3. If using CAN-1 Boards, place them on adequate headers on boards.

Software Support

We provide code for demonstrating the usage of functions contained in CAN driver library. To run this example, follow these steps:

In order to make this example work, proper clock setup is needed. To create a setup with the adequate clock scheme, follow these steps:

  1. Install the package from Package manager.
  2. Open example.
  3. It will take you to setups, so make one for your hardware.
  4. Choose adequate setup and clock configuration and the project will open.
  5. Define test port using TEST_PORT macro and test pins using TEST_PIN_x macros according to your hardware.
  6. Program it by clicking on Flash.
  7. Once CAN Receive Demo is programmed and the two boards are connected properly, data should be visible on it on the defined port. Use a logic analyzer to see the signals.
  8. If transfer completes successfully, TEST_PORT will display received value.
  9. If nothing is happenning reset your transmitter board.

ALSO FROM THIS AUTHOR

UV 3 Click

0

UV 3 Click is an advanced ultraviolet (UV) light sensor with I2C protocol interface. The Click carries VEML6070 UVA light sensor designed by the CMOS process. UV 3 Click runs on either 3.3V or 5V power supply.

[Learn More]

Light 4 Click

0

Light 4 Click is a compact add-on board designed for precise ambient light, UV index, and light flicker detection. This board features the TSL2585 sensor from ams OSRAM, which incorporates photopic, infrared (IR), and ultraviolet (UV) photodiodes to enable multiple concurrent sensing functions. The TSL2585 continuously monitors ambient light, calculates irradiance, and detects light flicker using optimized filters and dedicated IR and UV channels. It communicates with the host MCU via a standard I2C interface, includes interrupt-driven events for threshold-based alerts, and operates with 3.3V logic voltage.

[Learn More]

Presence click

5

Presence click is an infrared sensing Click board which can be used for presence sensing, motion detection, and a remote overtemperature protection. Presence click is equipped with the TPiS 1S 1385, a thermophile sensor from CaliPile series.

[Learn More]