TOP Contributors

  1. MIKROE (2784 codes)
  2. Alcides Ramos (405 codes)
  3. Shawon Shahryiar (307 codes)
  4. jm_palomino (133 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 (141507 times)
  2. FAT32 Library (74401 times)
  3. Network Ethernet Library (58914 times)
  4. USB Device Library (48935 times)
  5. Network WiFi Library (44707 times)
  6. FT800 Library (44253 times)
  7. GSM click (30978 times)
  8. mikroSDK (29851 times)
  9. PID Library (27430 times)
  10. microSD click (27410 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

4D - display click

Rating:

5

Author: MIKROE

Last Updated: 2018-10-03

Package Version: 1.0.0.0

mikroSDK Library: 1.0.0.0

Category: Adapter

Downloaded: 5268 times

Not followed.

License: MIT license  

4D - display click is an adapter Click board that offers a mikroBUS interface for controlling 4D Systems gen4 Series intelligent Display Modules. 4D Systems designs and manufactures a wide range of Intelligent Display Modules equipped with powerful graphics processors.

No Abuse Reported

Do you want to subscribe in order to receive notifications regarding "4D - display click" changes.

Do you want to unsubscribe in order to stop receiving notifications regarding "4D - display click" changes.

Do you want to report abuse regarding "4D - display click".

  • Information
  • Comments (0)
DOWNLOAD LINK RELATED COMPILER CONTAINS
mikroBasic PRO for ARM
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroBasic PRO for AVR
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroBasic PRO for dsPIC30/33 & PIC24
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroBasic PRO for FT90x
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroBasic PRO for PIC
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroBasic PRO for PIC32
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroC PRO for ARM
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroC PRO for AVR
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroC PRO for dsPIC30/33 & PIC24
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroC PRO for FT90x
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroC PRO for PIC
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroC PRO for PIC32
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroPascal PRO for ARM
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroPascal PRO for AVR
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroPascal PRO for dsPIC30/33 & PIC24
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroPascal PRO for FT90x
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroPascal PRO for PIC
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroPascal PRO for PIC32
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
Other Compiler
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc

mikroSDK Library Blog

4D - display click

4D - display click

Native view of the 4D - display Click board.

View full image
4D - display click

4D - display click

Front and back view of the 4D - display Click board.

View full image

Library Description

Library performs the control of the 4D Systems LCD displays via UART interface by sending the determined commands. The commands can read the objects and write the desired value to the objects, also they support sending the report from the device to the host. Before we start to use this library, first we must perform the LCD display programming. The UART baud rate on LCD and UART baud rate on the host device must be the same. The user can use our demo application for the 4D Systems LCD display, which simulates the speed measurement. For more details check the documentation.

Key functions

  • void c4d_writeObj( T_C4D_OBJ_P obj ) - Function writes the desired value to the desired object.
  • void c4d_readObj( T_C4D_OBJ_P obj ) - Function reads the value of the desired object.
  • uint8_t c4d_sendCommand( uint8_t _command, uint8_t *dataIn, uint8_t nBytes ) - Function sends command to the display.

Example description

The application is composed of three sections:

  • System Initialization - Initializes peripherals and pins.
  • Application Initialization - Initializes UART driver, configures timer and puts all objects on the display to the inactive state (initializes display). Also waits about 5 seconds to stabilize the display.
  • Application Task - (code snippet) - Performs the display control. The application represents speed measurement. First checks isstart button enabled, and when is it true, reads the value of the slider object and represents that value to the other objects. The slider value is controled by the timer. The user should put Start switch to active state (start application) when Ready LED becomes green. Note: Before you start using this code, first you must perform the display programming by using workshop application. The display programming will define all objects and show your desired objects on the display. Also the microSD card is necessary when you start the display programming, and must be formated as FAT16. When programming is finished puts the microSD card on the display device and then you can start to use this example,
    to control all objects on the display.
void applicationTask()
{
 c4d_readObj( (T_C4D_OBJ_P)&dipswitch0 );

 if (dipswitch0.objValue != _C4D_INACTIVE_STATE)
 {
 if (enCheck == _C4D_INACTIVE_STATE)
 {
 led0.objValue = _C4D_ACTIVE_STATE;
 c4d_writeObj( (T_C4D_OBJ_P)&led0 );
 enCheck = _C4D_ACTIVE_STATE;
 TIM2_CR1.CEN = _C4D_ACTIVE_STATE;
 }

 if (slider0.objValue != prevState)
 {
 leddigits0.objValue = slider0.objValue * 10;
 coolgauge0.objValue = slider0.objValue;

 if (slider0.objValue != _C4D_INACTIVE_STATE)
 {
 userled2.objValue = _C4D_ACTIVE_STATE;
 }
 else
 {
 userled2.objValue = _C4D_INACTIVE_STATE;
 }
 if (slider0.objValue >= 100)
 {
 userled1.objValue = _C4D_ACTIVE_STATE;
 }
 else
 {
 userled1.objValue = _C4D_INACTIVE_STATE;
 }
 if (slider0.objValue >= 200)
 {
 userled0.objValue = _C4D_ACTIVE_STATE;
 }
 else
 {
 userled0.objValue = _C4D_INACTIVE_STATE;
 }

 c4d_writeObj( (T_C4D_OBJ_P)&slider0 );
 c4d_writeObj( (T_C4D_OBJ_P)&leddigits0 );
 c4d_writeObj( (T_C4D_OBJ_P)&coolgauge0 );
 c4d_writeObj( (T_C4D_OBJ_P)&userled0 );
 c4d_writeObj( (T_C4D_OBJ_P)&userled1 );
 c4d_writeObj( (T_C4D_OBJ_P)&userled2 );
 prevState = slider0.objValue;
 }
 }
 else if (enCheck == _C4D_ACTIVE_STATE)
 {
 TIM2_CR1.CEN = _C4D_INACTIVE_STATE;
 slider0.objValue = _C4D_INACTIVE_STATE;
 leddigits0.objValue = _C4D_INACTIVE_STATE;
 coolgauge0.objValue = _C4D_INACTIVE_STATE;
 userled0.objValue = _C4D_INACTIVE_STATE;
 userled1.objValue = _C4D_INACTIVE_STATE;
 userled2.objValue = _C4D_INACTIVE_STATE;
 led0.objValue = _C4D_INACTIVE_STATE;
 prevState = slider0.objValue;
 enCheck = _C4D_INACTIVE_STATE;
 transmission1 = _C4D_INACTIVE_STATE;
 transmission2 = _C4D_INACTIVE_STATE;
 transmission3 = _C4D_INACTIVE_STATE;

 c4d_writeObj( (T_C4D_OBJ_P)&slider0 );
 c4d_writeObj( (T_C4D_OBJ_P)&leddigits0 );
 c4d_writeObj( (T_C4D_OBJ_P)&coolgauge0 );
 c4d_writeObj( (T_C4D_OBJ_P)&userled0 );
 c4d_writeObj( (T_C4D_OBJ_P)&userled1 );
 c4d_writeObj( (T_C4D_OBJ_P)&userled2 );
 c4d_writeObj( (T_C4D_OBJ_P)&led0 );
 }
}


Additional Functions :

  • Timer interrupt function is used to control the slider object value and on that way we simulate the speed changing.


Other MikroElektronika libraries used in the example:

  • UART

Additional notes and information

Depending on the development board you are using, you may need USB UART click, USB UART 2 click or RS232 click to connect to your PC, for development systems with no UART to USB interface available on the board. The terminal available in all MikroElektronika compilers, or any other terminal application of your choice, can be used to read the message.

ALSO FROM THIS AUTHOR

GNSS RTK Click

0

GNSS RTK Click is a compact add-on board used to enhance the precision of position data derived from satellite-based positioning systems. This board features the ZED-F9P, a multi-band GNSS module with integrated multi-band Real Time Kinematics (RTK) technology offering centimeter-level accuracy from U-blox. This module concurrently uses GNSS signals from all four GNSS constellations (GPS, GLONASS, Galileo, and BeiDou), and provides multi-band RTK with fast convergence times, reliable performance, and easy integration. It also includes moving base support, allowing both base and rover to move while computing a centimeter-level accurate position between them.

[Learn More]

TempHum 20 Click

0

Temp&Hum 20 Click is a compact add-on board that represents temperature and humidity sensing solution. This board features the CC2D23, a highly accurate, fully-calibrated relative humidity and temperature sensor from Amphenol. This sensor, characterized by its high accuracy (±2% from 20% to 80%RH (±3% over entire humidity range)) and high resolution, provides factory-calibrated 14-bit data to the host controller with a configurable I2C interface. It also comes with alarm features for preset control at a minimum and maximum humidity.

[Learn More]

Thermo 4 click

7

THERMO 4 click carries the LM75A digital temperature sensor and thermal watchdog. The sensor has the range from −55 °C to +125 °C. The click is designed to run on either 3.3V or 5V power supply. It communicates with the target microcontroller over I2C interface

[Learn More]