Commit Graph

47 Commits

Author SHA1 Message Date
inmarket
48a9d334b7 Replace all inline definitions with GFXINLINE 2015-10-23 18:24:49 +10:00
Joel Bodenmann
d8e46a098d Fixing SSD2119 orientation bug 2015-02-04 14:16:07 +01:00
inmarket
fa8167b94d Big file rename to reduce problems with brain-dead IDE's that don't handle project file hierarchies well.
Naming is more consistent with the new scheme.
May affect some third party drivers (header file renames).
2015-01-21 17:26:24 +10:00
inmarket
e5d69abf02 Update SSD1289 and SSD2119 drivers to support using CCM memory for stack when using DMA.
Use GDISP_NO_DMA_FROM_STACK.
2014-12-17 10:49:09 +10:00
inmarket
3936c63061 Updates for the EMBEST board and a small fix to the SSD2119 driver. 2014-12-15 18:17:52 +10:00
inmarket
1a495f3013 Rename all driver makefiles to driver.mk 2014-08-22 18:20:02 +10:00
Joel Bodenmann
08e1b0ebc7 Removed the doxygen inside of every driver as doxygen is only meant for highlevel API documentation.
Documenting the drivers interface should be done inside a template driver or the gdisp LLD abstraction.
2014-03-28 19:45:08 +01:00
inmarket
37966ff16d Integrate the include files with each module. Simplifies structure of code. 2014-02-19 00:36:52 +10:00
inmarket
7f1b78a067 Replace color format conversion macros with proper routines to prevent side effects with using the macro.
Also fix a number of compiler warnings.
2013-11-17 23:32:19 +10:00
inmarket
a8e860678d New GDISP now supports multiple controllers with different pixel formats.
You can now have a main color display and a secondary monochrome display.
You can now optionally set GDISP_PIXELFORMAT to any color or grayscale format for your application and the driver will internally convert to the display hardware format.
2013-11-05 19:34:12 +10:00
inmarket
ece5bcd6ab Auto-generate pixel formats using macro's.
Prepare for (but not yet complete) supporting a different high level GDISP pixel format to the low level driver format.
This will be useful in multiple display scenario's where displays have different pixel formats.
2013-11-05 00:36:54 +10:00
inmarket
555257933a Clean up the driver directory structure by moving all board specific files into the boards sub-structure. 2013-10-28 20:04:03 +10:00
inmarket
b05a29f830 Rename GDISP driver files to prevent problems when compiling for multiple controllers on platforms that put all generated object files into a single directory. 2013-10-28 11:03:39 +10:00
inmarket
5e9e1a36ab Convert SSD2119 to new driver format 2013-10-22 18:38:56 +10:00
inmarket
27b5383c1b Fix typos in drivers 2013-10-22 15:52:31 +10:00
Joel Bodenmann
86ae017301 Porting SSD2219 driver - WORK IN PROGRES!!!! 2013-10-21 15:40:40 +02:00
Joel Bodenmann
73c5ef26f8 fixed license headers 2013-07-21 22:20:37 +02:00
Joel Bodenmann
d98e6c5d0d cleaned up board file mess 2013-07-21 17:42:25 +02:00
Mateusz Tomaszkiewicz
d57eacc345 SSD2119: FSMC settings tuned
With FSMC BTR timing register settings tuned and DMA on, we get over
10.2 Mpx/s instead of 4.7 Mpx/s.
2013-06-20 22:49:36 +02:00
Mateusz Tomaszkiewicz
f820fb90d5 SSD2119: GDISP_USE_FSMC "switch" added
Enable FSMC functions only when GDISP_USE_FSMC is set.
2013-06-18 23:32:22 +02:00
Mateusz Tomaszkiewicz
2a65ea5388 Various readme update
For GDISP drivers SSD2119 & SSD1289.
2013-06-18 23:32:22 +02:00
Mateusz Tomaszkiewicz
767188ed8d SSD2119: make use of DMA
This is mostly a copy from Eddie's work posted here:
http://forum.chibios.org/phpbb/viewtopic.php?f=11&t=851#p11054
No work was done towards making it work as fast as possible.
Tested with:
https://github.com/etmatrix/ChibiOS-GFX-Example/blob/master/bench/main.c
Results show performance of ~5.34 Mpx/s with use of DMA compared to
~4.78 Mpx/s without.
2013-06-18 23:32:22 +02:00
inmarket
ed0bac9765 License header updates 2013-06-15 21:37:22 +10:00
inmarket
7fbfde42aa GOS module, for operating system independance
GMISC fast floating point trig
GMISC fast fixed point trig
2013-05-25 01:26:52 +10:00
Joel Bodenmann
6c38d5b310 updated license headers 2013-05-03 16:36:17 +02:00
Joel Bodenmann
296e74f3e0 Revert "updated license headers"
This reverts commit 0a26d9983b.
2013-05-02 01:53:28 +02:00
Joel Bodenmann
0a26d9983b updated license headers 2013-05-02 01:50:09 +02:00
Mateusz Tomaszkiewicz
17a17421b4 SSD2119: readme fix 2013-04-04 00:21:10 +02:00
Joel Bodenmann
2510f3e75b board file fix 2013-03-29 18:14:35 +01:00
Joel Bodenmann
d6b75429b2 STMPE811 - initial 2013-03-29 18:10:22 +01:00
Mateusz Tomaszkiewicz
15d76cb5fc SSD1289 SSD2119: fixed warning messages
Few type castings in order to suppress warnings (-Wsign-compare):
"comparison between signed and unsigned integer expressions"
"signed and unsigned type in conditional expression"
2013-03-20 22:15:18 +01:00
Joel Bodenmann
f552098116 embest DMSTF4BB board fix - removed FSMC suffix because only FSMC exists 2013-03-08 09:20:51 +01:00
Joel Bodenmann
e315480c71 updated copyright - 2013 2013-03-06 23:11:01 +01:00
Joel Bodenmann
b91e619573 __inline becomes inline because most compilers dont like the prefix 2013-03-04 23:50:21 +01:00
Mateusz Tomaszkiewicz
7ba69f556b SSD2119: readme fix 2013-03-02 13:33:19 +01:00
Mateusz Tomaszkiewicz
57f1016573 SSD2119: GPIO board file removal
Removed GPIO board file. It did not work (it wasn't finished nor started
to be honest). It is always possible to make it, general idea is exactly
the same as in SSD1289 driver.
2013-03-02 00:32:51 +01:00
Mateusz Tomaszkiewicz
2bc2dc6f68 SSD2119: updated scroll function name
Changed to new scheme: gdisp_lld_*.
2013-03-01 22:54:52 +01:00
Mateusz Tomaszkiewicz
e5543face9 SSD2119: orientation control
All angles supported: 0, 90, 180, 270.
2013-02-28 00:31:46 +01:00
Mateusz Tomaszkiewicz
bbdd57d9c1 SSD2119: power control
All modes are working: powerOff, powerOn, powerSleep and powerDeepSleep.
2013-02-25 00:35:13 +01:00
Mateusz Tomaszkiewicz
51b292d3b9 SSD2119: PWM period change
100 kHz PWM period made small induction coil onboard LCD to moan if the
pulse width was smaller than 100%. I changed it to 1MHz.
2013-02-22 00:54:11 +01:00
Mateusz Tomaszkiewicz
cec4628a97 SSD2119: backlight control
- Backlight uses PWM on TIM4 CH2.
- Updated readme.
- Updated gdisp_lld.c: moved from lld_gdisp_* to gdisp_lld_* functions
  names format.
- One forgotten GDISP_LLD() macro removal.
- General code cleanup (make diff with -w parameter ;))
2013-02-21 22:46:47 +01:00
Mateusz Tomaszkiewicz
dd79671730 SSD2119: GDISP_LLD() macro removal 2013-02-13 22:02:13 +01:00
Mateusz Tomaszkiewicz
c42602375b SSD2119: code & comments cleanup 2013-02-07 16:01:07 +01:00
resset
2de39e3302 SSD2119: reorganization of files
- Added FSMC board file (_fsmc suffix) - working.
- Added GPIO board file (no suffix) - not working.
- Removed unneeded files.
2013-02-07 01:44:00 +01:00
resset
e097426338 SSD2119: first working version of driver
It is a mix of barely changed few drivers already present in ChibiOS/GFX
project. No other routines than initialization ones were changed.
Properly displays "basics" demo.

Main features and changes:
- Based on SSD1289 and SSD1121 in FSMC mode.
- Uses FSMC module. Maybe oneday I will make GPIO version.
- LCD backlight PWM input is tied high (no timer yet).
- Added ssd2119.h with SSD2119 registers' addresses.
- Updated set_cursor and set_viewport functions. Not thoroughly tested,
  however.
- Rewritten GDISP_LLD(init)(void) function.
2013-02-05 23:39:48 +01:00
resset
cb81a0f3fc SSD2119: created board file
Created board support file for Embest DM-STF4BB board with DM-LCD35RT
LCD module. You simply plug STM32F4DISCOVERY into it.
2013-01-26 22:57:39 +01:00
resset
5e40c336f2 initial commit: copy sources from SSD1289
I started project of new driver: SSD2119. This work is based on SSD1289.
I don't know exactly if this one is the most similar to my one. It's
just an experiment. There is no accompanying board file of any flavor,
but the hardware lying on my desk is Embest DM-STF4BB with DM-LCD35RT
LCD module.

Changes already made:
- Copied entire drivers/gdisp/SSD1289 directory into
  drivers/gdisp/SSD2119.
- Changed every occurrence of "SSD1289" to "SSD2119" in each source
  file.
2013-01-26 21:53:16 +01:00