TOP Contributors

  1. MIKROE (2762 codes)
  2. Alcides Ramos (374 codes)
  3. Shawon Shahryiar (307 codes)
  4. jm_palomino (118 codes)
  5. Bugz Bensce (90 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 (139251 times)
  2. FAT32 Library (71749 times)
  3. Network Ethernet Library (57120 times)
  4. USB Device Library (47430 times)
  5. Network WiFi Library (43082 times)
  6. FT800 Library (42403 times)
  7. GSM click (29835 times)
  8. mikroSDK (28077 times)
  9. PID Library (26885 times)
  10. microSD click (26198 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: 4412 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

I2C MUX Click

0

I2C MUX Click is an quad bidirectional translating I2C and SMBus switch with reset function, intended for applications with I2C slave address conflicts (multiple, identical temp sensors). It features a quad bidirectional translating switch controlled via the I2C bus, labeled as TCA9546A from Texas Instruments. Click has three address jumpers, allowing up to eight TCA9546A devices on the same bus. I2C MUX Click allows voltage translation between 1.8V, 2.5V, 3.3V, and 5V buses, and also supports hot insertion.

[Learn More]

STSPIN220 Click

0

STSPIN220 Click is a stepper motor driver with the PWM current control and selectable microstepping up to 256 microsteps. It is based on the STSPIN220, a low voltage stepper motor driver from STSPIN2 series. It is optimized for battery-powered, low voltage motor driving applications, featuring the lowest standby current available on the market (max 80 nA). The STSPIN220 is a high-efficiency motor driver, featuring low ON resistance MOSFETs as the output stage, in a small 3x3mm QFN package. Its output stage implements the PWM current control with fixed OFF time, along with a full set of protection features. The device can be used with the step motor voltage ranging from 1.8V to 10V, and current up to 1.3A per bridge.

[Learn More]

EnOcean Click

1

EnOcean click carries a TCM310 transceiver, which is a bidirectional gateway for EnOcean’s 868 MHz radio systems. The click is designed to run on a 3.3V power supply. It communicates with the target MCU through UART (TX, RX pins), with additional functionality provided by RST and EN pins.

[Learn More]