

If you can program the Arduino or the chipKIT range of products, or you want to get started, this product is for you. It also features an on board microSD connector, on board audio amplifier and speaker, RTC oscillator, and headers in the layout of the popular chipKIT Uno32. The Picadillo-35T features an on board FTDI USB to TTL converter for programming and powering the display, along with an ICSP connection for using programmers such as the PICKIT3. UECIDE can be used to program Arduino boards as well as chipKIT boards, and is compatible with many existing Arduino and chipKIT libraries, allowing easy migration from existing boards! Using UECIDE or MPIDE, the display module can essentially be treated as if it was a chipKIT MAX32 and programmed using the familiar programming language found on the Arduino/chipKIT. It can also be used with MPIDE, or even using Microchip MPLAB X. The Picadillo-35T has been designed to be programmed using the UECIDE IDE, which is based on the Arduino IDE however with various enhancements and improvements. The same PIC32 is found on the popular chipKIT Max32 Development Board. It features a PMP graphics port which is used to connect the on board 3.5" display, allowing for fast graphics fully controlled by the Users code. The PIC32MX795F512L is a powerful 32bit microcontroller from Microchip, which has 512Kb of Flash and 128Kb of SRAM, runs at 80Mhz and is capable of 105 DMIPS. It features a 3.5" display along with a ton of GPIO, making it a perfect candidate for system control which demands a GUI or user interface. The Picadillo-35T was designed with complete system control in mind. The Picadillo-35T is a 3.5" 320x480 resolution (Half VGA) Embedded Display Module with Resistive Touch, featuring the Microchip PIC32MX795F512L 32bit microcontroller and Arduino / chipKIT style headers for easy attachment of shields, and compatible with UECIDE, MPIDE and MPLAB X Programming IDEs, making this a brilliant display solution with open source software. #define DD_RAM_ADDR 0x80 // Least Significant 7-bit are for addressĪnd the lcd.Amazing 3.5" Display Module powered by a PIC32

#define ENTRY_DEC_S 0x05 // Decrement-mode, display shift ON #define ENTRY_DEC 0x04 // Decrement-mode, display shift OFF #define ENTRY_INC_S 0x07 // Increment-mode, display shift ON #define ENTRY_INC 0x06 // Increment-mode, display shift OFF #define DISP_CLR 0x01 // Clear the Display #define DISP_ON_B 0x0F // Display on, Cursor on, Blink cursor #define DISP_ON_C 0x0E // Display on, Cursor on #define FUNCTION_SET 0x28 // 4 bits, 2 lines, 5x7 Font #define LINE2 0xC0 // Set display to line 2 character 0 #define LINE1 0x80 // Set display to line 1 character 0 A 6-pin Alphanumeric LCD interface library Here’s your lcd.h code: // (c) Seb Holzapfel, 2012 Define a C++-like boolean - makes things more readable in some cases #define FCY 16000000UL // Running at 16 MIPS = Fosc/2 #include "p24Fxxxx.h" // This header will choose the right device header I didn’t put the device configuration bits in here, otherwise there’s a linker error: // Includes some commonly used libraries, sets device configuration, The library (and the example main file given) needs a setup.h file to be declared with some includes. LATBbits.LATB7 = ~LATBbits.LATB7 //Toggle an LED Sprintf( final, "Voltage: %3.2f ", voltage ) Lcd_command( LINE2 ) //Print out the voltage on A9įloat voltage = ((float)ADC1BUF0 * 3.3f)/1024.0f Lcd_print( (PORTBbits.RB8 = 0)? "On " : "Off " )

Lcd_command( LINE1 ) // Print out the switch status _CONFIG2( FCKSM_CSDCMD & OSCIOFNC_ON & POSCMOD_HS & FNOSC_FRCPLL & I2C1SEL_PRI & PLL96MHZ_ON & PLLDIV_NODIV & IESO_OFF & IOL1WAY_OFF ) ĪD1PCFGbits.PCFG9 = 0 // Enable analog pin 9ĪD1CON3bits.ADCS = 0b00111111 // Set ADC clock to 64 x TcyĪD1CON1bits.SSRC = 0b111 // Auto-conversion onĪD1CON3bits.SAMC = 0b00011 // Time bits = 3 TADĪD1CHS = 9 // Use positive input 9 on channel 0, relative to Avss _CONFIG1( FWDTEN_OFF & GWRP_OFF & GCP_OFF & JTAGEN_OFF & ICS_PGx3 ) Files here are tested on a PIC24FJ64GB002, MPLAB X 1.10, C30 3.30c.Īn example main.c file – Flashes an LED while displaying a switch position and ADC reading on an LCD: #include "setup.h" For printing anything more complex than a string, the standard library can be included and sprintf is used to format a temporary string to be sent the LCD’s way. It only has 3 commands lcd_print, lcd_command and lcd_init. Looking all over the internet, I could not find for the life of me any existing Alphanumeric LCD library for the C30 compiler – so I made one, which requires 6 pins to operate. 4-bit Pic24 Alphanumeric LCD library 07 March 2012
