0% found this document useful (0 votes)
25 views

TCPIP Stack Updates

The document describes modifications made to the Microchip MLA TCP-IP stack to support the Cerebot MX7cK processor board. Key changes include allowing UART communications to use UART1, using the LCDlib library for the LCD interface instead of bit-banging, and rewriting various files in the TCPIP stack and libraries to implement these changes.

Uploaded by

kidsrock11
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
25 views

TCPIP Stack Updates

The document describes modifications made to the Microchip MLA TCP-IP stack to support the Cerebot MX7cK processor board. Key changes include allowing UART communications to use UART1, using the LCDlib library for the LCD interface instead of bit-banging, and rewriting various files in the TCPIP stack and libraries to implement these changes.

Uploaded by

kidsrock11
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 2

Microchip MLA TCP-IP modifications

Richard W. Wall
University of Idaho
December 4, 2013
The following modifications to the Microchip MAL 6/2013 version target the Cerebot
MX7cK Processor board. The major revisions allow STACK_USE_UART to be defined in
TCPIP ETH795.h and directs all UART communications to the UART1 as provided on
the CEREbot MX7cK. This version of the TCPIP Stack also uses the PMP for the LCD
interface provided by LCDlib.c and LCDlib.h instead of the bit-banging interface
provided by LCDBlocking.c and LCDBlocking .h.
Project file changes
Under Headers/TCPIP Stack folder, remove LCDBlocking.h and add LCDlib.h
Under the Source/TCPIP Stack folder, remove LCDBlocking.h and add LCDlib.h
Changes to the Microchip MLA library
Microchip\TCPIP Stack\UART.c
Microchip\Include\TCPIP Stack\TCPIP.h
Microchip\TCPIP Stack\Delay.c
Microchip\Include\TCPIP Stack\TCPIP.h
8 bit control)
Microchip\TCPIP Stack\LCDlib.c
Microchip\Include\TCPIP Stack\LCDlib.c

Total rewrite
Total rewrite for UART1
Total rewrite
Modified for using LCDlib (PMP

- New file
- New file

Application Files
application/configs/HardwareProfile.h
Add: #define LCD_PMP in HardwareProfile.h
Comment out all references to bit-banging LCD
/* These definitions are used for bit-banging LCD control in
LCDblocking.h
#define LCD_MASK
0x00f
#define LCD_DATA_TRIS
(TRISE)
#define LCD_DATA_OUT()
TRISECLR = LCD_MASK
#define LCD_DATA_IO (LATE)
#define LCD_RD_WR_TRIS
(TRISDbits.TRISD5)
#define LCD_RD_WR_IO
(LATDbits.LATD5)
#define LCD_RS_TRIS
(TRISBbits.TRISB15)
#define LCD_RS_IO
(LATBbits.LATB15)

#define LCD_E_TRIS
#define LCD_E_IO

(TRISDbits.TRISD4)
(LATDbits.LATD4)

*/
Setup UART1
// UART configuration (not too important since we don't have a UART
// connector attached normally, but needed to compile if the
STACK_USE_UART
// or STACK_USE_UART2TCP_BRIDGE features are enabled.
#define UARTTX_TRIS
(TRISFbits.TRISF8)
#define UARTRX_TRIS
(TRISFbits.TRISF2)
// UART mapping functions for consistent API names across 8-bit and 16
or
// 32 bit compilers. For simplicity, everything will use "UART" instead
// of USART/EUSART/etc.
#define BusyUART()
BusyUART1()
#define CloseUART()
CloseUART1()
#define ConfigIntUART(a)
ConfigIntUART1(a)
#define DataRdyUART()
DataRdyUART1()
#define OpenUART(a,b,c)
OpenUART1(a,b,c)
#define ReadUART()
ReadUART1()
#define WriteUART(a) WriteUART1(a)
#define getsUART(a,b,c)
getsUART1(b,a,c)
#define putsUART(a)
putsUART1(a)
#define getcUART()
ReadUART1()
#define putcUART(a)
WriteUART1(a)
#define putrsUART(a)
putsU1(a)

You might also like