Driver for 4D Systems LCD screen with Picaso processor. Ported from 4D Systems Picaso Serial Linux Library
Dependents: uLCD_4D_24PTU Drawing Program RoommateTracker_ScreenAndPhone ece4180_roommate_tracker_final
Diff: uLCD_4D_Picaso.h
- Revision:
- 4:30010dda3b34
- Parent:
- 2:ebe7029e2825
- Child:
- 5:ec04cd4e98ce
--- a/uLCD_4D_Picaso.h Tue Mar 10 16:07:49 2015 +0000 +++ b/uLCD_4D_Picaso.h Tue Mar 10 19:01:56 2015 +0000 @@ -1,4 +1,5 @@ -/** +/** @file uLCD_4D_Picaso.h + * * This is a class to drive 4D systems screens with Picaso graphics processors * * This is a port of the 4D systems Picaso Serial Linux Library @@ -11,10 +12,13 @@ #ifndef uLCD_4D_Picaso_H #define uLCD_4D_Picaso_H -// This library can work with either the standard mbed Serial library or with the MODSERIAL -// library by Andy Kirkham. MODSERIAL allows RX buffering, which could prevent dropped characters -// at high baud rates. The version of MODSERIAL by Erik Olieman, which is supposed to support more -// devices, does not appear to work with this library at present, for unknown reasons. +/** @define LCD_USING_MODSERIAL + * + * This library can work with either the standard mbed Serial library or with the MODSERIAL + * library by Andy Kirkham. MODSERIAL allows RX buffering, which could prevent dropped characters + * at high baud rates. The version of MODSERIAL by Erik Olieman, which is supposed to support more + * devices, does not appear to work with this library at present, for unknown reasons. + */ #define LCD_USING_MODSERIAL 1 #include "mbed.h" @@ -25,163 +29,18 @@ #endif -//Constant 4D Serial Commands -// function call index definitions, generated by build of serial -#define F_charheight 29 -#define F_charwidth 30 -#define F_bus_In -45 -#define F_bus_Out -46 -#define F_bus_Read -49 -#define F_bus_Set -47 -#define F_bus_Write -48 -#define F_file_Close -232 -#define F_file_Count 1 -#define F_file_Dir 2 -#define F_file_Erase 3 -#define F_file_Error -225 -#define F_file_Exec 4 -#define F_file_Exists 5 -#define F_file_FindFirst 6 -#define F_file_FindNext -229 -#define F_file_GetC -242 -#define F_file_GetS 7 -#define F_file_GetW -244 -#define F_file_Image -239 -#define F_file_Index -235 -#define F_file_LoadFunction 8 -#define F_file_LoadImageControl 9 -#define F_file_Mount -253 -#define F_file_Open 10 -#define F_file_PlayWAV 11 -#define F_file_PutC 31 -#define F_file_PutS 32 -#define F_file_PutW -243 -#define F_file_Read 12 -#define F_file_Rewind -248 -#define F_file_Run 13 -#define F_file_ScreenCapture -240 -#define F_file_Seek -234 -#define F_file_Size 14 -#define F_file_Tell 15 -#define F_file_Unmount -254 -#define F_file_Write 16 -#define F_gfx_BevelShadow -104 -#define F_gfx_BevelWidth -103 -#define F_gfx_BGcolour -92 -#define F_gfx_Button 17 -#define F_gfx_ChangeColour -76 -#define F_gfx_Circle -61 -#define F_gfx_CircleFilled -62 -#define F_gfx_Clipping -94 -#define F_gfx_ClipWindow -75 -#define F_gfx_Cls -51 -#define F_gfx_Contrast -100 -#define F_gfx_Ellipse -78 -#define F_gfx_EllipseFilled -79 -#define F_gfx_FrameDelay -97 -#define F_gfx_Get -90 -#define F_gfx_GetPixel -64 -#define F_gfx_Line -56 -#define F_gfx_LinePattern -101 -#define F_gfx_LineTo -54 -#define F_gfx_MoveTo -52 -#define F_gfx_Orbit 18 -#define F_gfx_OutlineColour -99 -#define F_gfx_Panel -81 -#define F_gfx_Polygon 19 -#define F_gfx_PolygonFilled 20 -#define F_gfx_Polyline 21 -#define F_gfx_PutPixel -63 -#define F_gfx_Rectangle -59 -#define F_gfx_RectangleFilled -60 -#define F_gfx_ScreenCopyPaste -83 -#define F_gfx_ScreenMode -98 -#define F_gfx_Set -50 -#define F_gfx_SetClipRegion -77 -#define F_gfx_Slider -82 -#define F_gfx_Transparency -96 -#define F_gfx_TransparentColour -95 -#define F_gfx_Triangle -65 -#define F_gfx_TriangleFilled -87 -#define F_img_ClearAttributes -187 -#define F_img_Darken -181 -#define F_img_Disable -180 -#define F_img_Enable -179 -#define F_img_GetWord -184 -#define F_img_Lighten -182 -#define F_img_SetAttributes -186 -#define F_img_SetPosition -178 -#define F_img_SetWord -183 -#define F_img_Show -185 -#define F_img_Touched -188 -#define F_media_Flush -118 -#define F_media_Image -117 -#define F_media_Init -119 -#define F_media_RdSector 22 -#define F_media_ReadByte -113 -#define F_media_ReadWord -114 -#define F_media_SetAdd -109 -#define F_media_SetSector -110 -#define F_media_Video -107 -#define F_media_VideoFrame -108 -#define F_media_WriteByte -115 -#define F_media_WriteWord -116 -#define F_media_WrSector 23 -#define F_mem_Free -220 -#define F_mem_Heap -221 -#define F_peekM 39 -#define F_pin_HI -42 -#define F_pin_LO -43 -#define F_pin_Read -44 -#define F_pin_Set -41 -#define F_pokeM 40 -#define F_putCH -2 -#define F_putstr 24 -#define F_snd_BufSize -258 -#define F_snd_Continue -261 -#define F_snd_Pause -260 -#define F_snd_Pitch -257 -#define F_snd_Playing -262 -#define F_snd_Stop -259 -#define F_snd_Volume -256 -#define F_sys_Sleep -197 -#define F_touch_DetectRegion -199 -#define F_touch_Get -201 -#define F_touch_Set -200 -#define F_txt_Attributes -38 -#define F_txt_BGcolour -26 -#define F_txt_Bold -34 -#define F_txt_FGcolour -25 -#define F_txt_FontID -27 -#define F_txt_Height -29 -#define F_txt_Inverse -36 -#define F_txt_Italic -35 -#define F_txt_MoveCursor -23 -#define F_txt_Opacity -33 -#define F_txt_Set -24 -#define F_txt_Underline -37 -#define F_txt_Width -28 -#define F_txt_Wrap -39 -#define F_txt_Xgap -30 -#define F_txt_Ygap -31 -#define F_file_CallFunction 25 -#define F_sys_GetModel 26 -#define F_sys_GetVersion 27 -#define F_sys_GetPmmC 28 -#define F_writeString 33 -#define F_readString 34 -#define F_blitComtoDisplay 35 -#define F_file_FindFirstRet 36 -#define F_file_FindNextRet 37 -#define F_setbaudWait 38 - - +/** + * @class uLCD_4D_Picaso + * + * This class contains all of the Picaso Serial C library functions, ported to mbed. + */ class uLCD_4D_Picaso { public: /** * Class constructor + * * @param tx Serial transmit pin. * @param rx Serial receive pin. * @param reset Reset GPIO pin.