v1.0.0 reorg
authorKevin Townsend <kevin@ktownsend.com>
Fri, 23 Mar 2012 04:27:14 +0000 (05:27 +0100)
committerKevin Townsend <kevin@ktownsend.com>
Fri, 23 Mar 2012 04:27:14 +0000 (05:27 +0100)
ChangeLog.txt
Makefile
build/codelite/LPC1343 Workspace.workspace.session
build/codelite/LPC1343_CodeBase.project
build/crossworks/LPC1343_CodeBase.hzp
build/crossworks/LPC1343_CodeBase.hzs

index 4e95f7e..5f6d3e7 100644 (file)
@@ -5,26 +5,37 @@ v1.0.0 - Ongoing
 - *** Renamed '/drivers/spiflash' to '/drivers/storage/spiflash' ***
 - *** Renamed '/drivers/eeprom' to '/drivers/storage/eeprom' ***
 - *** Renamed '/drivers/lcd' to '/drivers/display' ***
+- Moved all color conversion and manipulation functions
+  to '/drivers/displays/tft/colors.c', and added a
+  few new functions: colorsDim(), etc.
+- Added code to render antialiased fonts, based on
+  lookup tables (fast) or alpha-blending (mixed color
+  backgrounds).  Support for AA2 (2-bit) and AA4
+  (4-bit) anti-aliased fonts included.  Alpha-blending
+  only possible on displays where pixels can be read
+  back.
+- Added drawGradient() to drawing.c
 - Removed height parameter from drawButton.  It's now
   calculated based on the font height, and centered.
 - Added bell to CLI when backspace is pressed beyond
   the starting position (cosmetic, but still useful)
 - Removed dependency on /core/libc files in Crossworks
   when redirecting printf (added printf replacement
-  to sysinit.c)
+  to sysinit.c instead)
 - Added basic AS1115 driver for segment displays
 - Added driver for HX8340-B based LCDs
 - Added flag to projectconfig.h to disable the default
-  GPIO IRQ Handler functions in code/gpio/gpio.c
+  GPIO IRQ Handler functions in code/gpio/gpio.c (in
+  case you want to make your own ISR elsewhere)
 - Added driver for Samsung VFD displays from Adafruit
-- Added average sampling option to projectconfig.h.
+- Added ADC average sampling option to projectconfig.h.
   This allows you to take several readings from the
-  ADC and return the average.  Helps reduces one-off
-  peaks and valleys in the ADC at the expense of
-  slower reads.
+  ADC and return the average.  Helps reduces peaks and
+  valleys in the ADC due to noisen but at the expense
+  of slower reads.
   See: "tools/validation/adctest" for more info
 - Added I2C driver for PN532
-- Updated and added PN532 examples at
+- Updated and added PN532 examples to
   /tools/examples/sensors/PN532
 - updated touchscreen.h to be a bit clearer during
   calibration, though it can still be much better
index 9ded9b6..c52e557 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -63,14 +63,25 @@ VPATH += drivers/rtc/isl12022m
 OBJS += isl12022m.o
 
 # TFT LCD support
-VPATH += drivers/displays/tft drivers/displays/tft/hw drivers/displays/tft/fonts
+VPATH += drivers/displays/tft drivers/displays/tft/hw 
 VPATH += drivers/displays/tft/dialogues
-OBJS += drawing.o touchscreen.o bmp.o alphanumeric.o
+OBJS += drawing.o touchscreen.o colors.o bmp.o alphanumeric.o
+
+# Bitmap (non-AA) fonts
+VPATH += drivers/displays/tft/fonts
+OBJS += fonts.o 
 OBJS += dejavusans9.o dejavusansbold9.o dejavusanscondensed9.o
 OBJS += dejavusansmono8.o dejavusansmonobold8.o
 OBJS += verdana9.o verdana14.o verdanabold14.o 
 
+# Anti-aliased fonts
+VPATH += drivers/displays/tft/aafonts/aa2 drivers/displays/tft/aafonts/aa4
+OBJS += aafonts.o 
+OBJS += DejaVuSansCondensed14_AA2.o DejaVuSansCondensedBold14_AA2.o
+OBJS += DejaVuSansMono10_AA2.o DejaVuSansMono13_AA2.o DejaVuSansMono14_AA2.o
+
 # LCD Driver (Only one can be included at a time!)
+# OBJS += hx8340b.o
 OBJS += ILI9328.o
 # OBJS += ILI9325.o
 # OBJS += ssd1331.o
index 1c9cbf6..22197ed 100644 (file)
@@ -1,24 +1,24 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <Session Name="C:\Dropbox\microBuilder\Code\LPC1343\LPC1343_CodeBase_GIT\build\codelite\LPC1343 Workspace.workspace">
-  <int Value="0" Name="m_selectedTab"/>
+  <int Value="2" Name="m_selectedTab"/>
   <wxString Value="C:\Dropbox\microBuilder\Code\LPC1343\LPC1343_CodeBase_GIT\build\codelite\LPC1343 Workspace.workspace" Name="m_workspaceName"/>
   <TabInfoArray Name="TabInfoArray">
     <TabInfo>
       <wxString Value="C:\Dropbox\microBuilder\Code\LPC1343\LPC1343_CodeBase_GIT\Makefile" Name="FileName"/>
-      <int Value="93" Name="FirstVisibleLine"/>
-      <int Value="104" Name="CurrentLine"/>
+      <int Value="65" Name="FirstVisibleLine"/>
+      <int Value="90" Name="CurrentLine"/>
       <wxArrayString Name="Bookmarks"/>
     </TabInfo>
     <TabInfo>
       <wxString Value="C:\Dropbox\microBuilder\Code\LPC1343\LPC1343_CodeBase_GIT\projectconfig.h" Name="FileName"/>
-      <int Value="0" Name="FirstVisibleLine"/>
-      <int Value="5" Name="CurrentLine"/>
+      <int Value="623" Name="FirstVisibleLine"/>
+      <int Value="646" Name="CurrentLine"/>
       <wxArrayString Name="Bookmarks"/>
     </TabInfo>
     <TabInfo>
       <wxString Value="C:\Dropbox\microBuilder\Code\LPC1343\LPC1343_CodeBase_GIT\main.c" Name="FileName"/>
-      <int Value="10" Name="FirstVisibleLine"/>
-      <int Value="28" Name="CurrentLine"/>
+      <int Value="106" Name="FirstVisibleLine"/>
+      <int Value="129" Name="CurrentLine"/>
       <wxArrayString Name="Bookmarks"/>
     </TabInfo>
   </TabInfoArray>
index 66cb644..ad75d70 100644 (file)
           <File Name="../../drivers/displays/tft/hw/st7783.h"/>
         </VirtualDirectory>
         <VirtualDirectory Name="fonts">
-          <File Name="../../drivers/displays/tft/fonts/bitmapfonts.h"/>
           <File Name="../../drivers/displays/tft/fonts/dejavusans9.c"/>
           <File Name="../../drivers/displays/tft/fonts/dejavusans9.h"/>
           <File Name="../../drivers/displays/tft/fonts/dejavusansbold9.c"/>
         <File Name="../../drivers/displays/tft/readme.txt"/>
         <File Name="../../drivers/displays/tft/touchscreen.c"/>
         <File Name="../../drivers/displays/tft/touchscreen.h"/>
+        <File Name="../../drivers/displays/tft/aafonts.c"/>
+        <File Name="../../drivers/displays/tft/aafonts.h"/>
+        <File Name="../../drivers/displays/tft/fonts.c"/>
+        <File Name="../../drivers/displays/tft/fonts.h"/>
+        <VirtualDirectory Name="aafonts">
+          <VirtualDirectory Name="aa2">
+            <File Name="../../drivers/displays/tft/aafonts/aa2/DejaVuSansCondensed14_AA2.c"/>
+            <File Name="../../drivers/displays/tft/aafonts/aa2/DejaVuSansCondensed14_AA2.h"/>
+            <File Name="../../drivers/displays/tft/aafonts/aa2/DejaVuSansCondensedBold14_AA2.c"/>
+            <File Name="../../drivers/displays/tft/aafonts/aa2/DejaVuSansCondensedBold14_AA2.h"/>
+            <File Name="../../drivers/displays/tft/aafonts/aa2/DejaVuSansMono10_AA2.c"/>
+            <File Name="../../drivers/displays/tft/aafonts/aa2/DejaVuSansMono10_AA2.h"/>
+            <File Name="../../drivers/displays/tft/aafonts/aa2/DejaVuSansMono13_AA2.c"/>
+            <File Name="../../drivers/displays/tft/aafonts/aa2/DejaVuSansMono13_AA2.h"/>
+            <File Name="../../drivers/displays/tft/aafonts/aa2/DejaVuSansMono14_AA2.c"/>
+            <File Name="../../drivers/displays/tft/aafonts/aa2/DejaVuSansMono14_AA2.h"/>
+          </VirtualDirectory>
+          <VirtualDirectory Name="aa4"/>
+        </VirtualDirectory>
+        <File Name="../../drivers/displays/tft/colors.c"/>
       </VirtualDirectory>
       <VirtualDirectory Name="bitmap">
         <VirtualDirectory Name="st7565">
index dfad83d..b44c622 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE CrossStudio_Project_File>
 <solution Name="LPC1343_CodeBase" target="8" version="2">
   <project Name="LPC1343_CodeBase">
-    <configuration Name="Common" Target="LPC1343" arm_architecture="v7M" arm_core_type="Cortex-M3" arm_gcc_target="arm-unknown-eabi" arm_linker_heap_size="512" arm_linker_process_stack_size="0" arm_linker_stack_size="1024" arm_simulator_memory_simulation_filename="$(TargetsDir)/LPC1000/LPC1000SimulatorMemory.dll" arm_simulator_memory_simulation_parameter="LPC13;0x8000;0x2000;0x0" arm_target_debug_interface_type="ADIv5" arm_target_loader_parameter="12000000" c_additional_options="" c_preprocessor_definitions="USE_PROCESS_STACK" c_user_include_directories="$(TargetsDir)/LPC1000/include;" link_include_standard_libraries="No" link_include_startup_code="No" linker_additional_files="$(TargetsDir)/LPC1000/lib/liblpc1000$(LibExt)$(LIB);$(TargetsDir)/LPC1000/lib/cmsis$(LibExt)$(LIB)" linker_memory_map_file="$(TargetsDir)/LPC1000/LPC1343_MemoryMap.xml" linker_output_format="bin" oscillator_frequency="12MHz" project_directory="" project_type="Executable" property_groups_file_path="$(TargetsDir)/LPC1000/propertyGroups13xx.xml"/>
+    <configuration Name="Common" Target="LPC1343" arm_architecture="v7M" arm_core_type="Cortex-M3" arm_gcc_target="arm-unknown-eabi" arm_library_optimization="Small" arm_linker_heap_size="512" arm_linker_process_stack_size="0" arm_linker_stack_size="1024" arm_simulator_memory_simulation_filename="$(TargetsDir)/LPC1000/LPC1000SimulatorMemory.dll" arm_simulator_memory_simulation_parameter="LPC13;0x8000;0x2000;0x0" arm_target_debug_interface_type="ADIv5" arm_target_loader_parameter="12000000" c_additional_options="" c_preprocessor_definitions="USE_PROCESS_STACK" c_user_include_directories="$(TargetsDir)/LPC1000/include;" link_include_standard_libraries="Yes" link_include_startup_code="No" linker_additional_files="$(TargetsDir)/LPC1000/lib/liblpc1000$(LibExt)$(LIB);$(TargetsDir)/LPC1000/lib/cmsis$(LibExt)$(LIB)" linker_memory_map_file="$(TargetsDir)/LPC1000/LPC1343_MemoryMap.xml" linker_output_format="bin" oscillator_frequency="12MHz" project_directory="" project_type="Executable" property_groups_file_path="$(TargetsDir)/LPC1000/propertyGroups13xx.xml"/>
     <configuration Name="Flash" Placement="Flash" arm_target_flash_loader_file_path="$(TargetsDir)/LPC1000/Release/Loader_lpc1300.elf" arm_target_flash_loader_type="LIBMEM RPC Loader" linker_patch_build_command="$(StudioDir)/bin/crossscript &quot;load(\&quot;$(TargetsDir)/LPC1000/LPC1000_LinkPatch.js\&quot;);patch(\&quot;$(TargetPath)\&quot;);&quot;" linker_section_placement_file="$(StudioDir)/targets/Cortex_M/flash_placement.xml" target_reset_script="FLASHReset()"/>
     <configuration Name="RAM" Placement="RAM" linker_section_placement_file="$(StudioDir)/targets/Cortex_M/ram_placement.xml" target_reset_script="SRAMReset()"/>
     <folder Name="Source Files" file_name="">
         <folder Name="pwm">
           <file file_name="../../core/pwm/pwm.c"/>
         </folder>
-        <folder Name="libc">
-          <file file_name="../../core/libc/stdio.c">
-            <configuration Name="THUMB Flash Debug" build_exclude_from_build="No"/>
-            <configuration Name="THUMB Flash Release" build_exclude_from_build="No"/>
-          </file>
-          <file file_name="../../core/libc/string.c">
-            <configuration Name="THUMB Flash Debug" build_exclude_from_build="No"/>
-            <configuration Name="THUMB Flash Release" build_exclude_from_build="No"/>
-          </file>
-          <file file_name="../../core/libc/ctype.c">
-            <configuration Name="THUMB Flash Release" build_exclude_from_build="No"/>
-          </file>
-        </folder>
       </folder>
       <file file_name="../../lpc134x.h"/>
       <file file_name="../../projectconfig.h"/>
               <file file_name="../../drivers/displays/bitmap/st7565/st7565.c"/>
             </folder>
             <folder Name="ssd1306">
-              <file file_name="../../drivers/displays/bitmap/ssd1306/ssd1306.c"/>
+              <file file_name="../../drivers/displays/bitmap/ssd1306/ssd1306.c">
+                <configuration Name="THUMB Flash Debug" build_exclude_from_build="No"/>
+              </file>
+              <file file_name="../../drivers/displays/bitmap/ssd1306/ssd1306_i2c.c">
+                <configuration Name="THUMB Flash Debug" build_exclude_from_build="Yes"/>
+              </file>
             </folder>
             <folder Name="sharpmem">
               <file file_name="../../drivers/displays/bitmap/sharpmem/sharpmem.c"/>
                 <configuration Name="THUMB Flash Release" build_exclude_from_build="Yes"/>
                 <configuration Name="THUMB Flash Debug" build_exclude_from_build="Yes"/>
               </file>
-              <file file_name="../../drivers/displays/tft/hw/ILI9325.c">
-                <configuration Name="THUMB Flash Release" build_exclude_from_build="Yes"/>
-                <configuration Name="THUMB Flash Debug" build_exclude_from_build="Yes"/>
-              </file>
               <file file_name="../../drivers/displays/tft/hw/ILI9328.c">
-                <configuration Name="THUMB Flash Release" build_exclude_from_build="Yes"/>
+                <configuration Name="THUMB Flash Release" build_exclude_from_build="No"/>
+                <configuration Name="THUMB Flash Debug" build_exclude_from_build="No"/>
               </file>
               <file file_name="../../drivers/displays/tft/hw/ssd1331.c">
                 <configuration Name="THUMB Flash Release" build_exclude_from_build="Yes"/>
                 <configuration Name="THUMB Flash Debug" build_exclude_from_build="Yes"/>
               </file>
               <file file_name="../../drivers/displays/tft/hw/ssd1351.c">
-                <configuration Name="THUMB Flash Release" build_exclude_from_build="No"/>
+                <configuration Name="THUMB Flash Release" build_exclude_from_build="Yes"/>
                 <configuration Name="THUMB Flash Debug" build_exclude_from_build="Yes"/>
               </file>
               <file file_name="../../drivers/displays/tft/hw/st7735.c">
                 <configuration Name="THUMB Flash Release" build_exclude_from_build="Yes"/>
                 <configuration Name="THUMB Flash Debug" build_exclude_from_build="Yes"/>
               </file>
+              <file file_name="../../drivers/displays/tft/hw/ILI9325.c">
+                <configuration Name="THUMB Flash Debug" build_exclude_from_build="Yes"/>
+                <configuration Name="THUMB Flash Release" build_exclude_from_build="Yes"/>
+              </file>
             </folder>
             <folder Name="fonts">
               <file file_name="../../drivers/displays/tft/fonts/dejavusans9.c"/>
               <file file_name="../../drivers/displays/tft/fonts/verdanabold14.c"/>
             </folder>
             <folder Name="dialogues">
-              <file file_name="../../drivers/displays/tft/dialogues/alphanumeric.c"/>
+              <file file_name="../../drivers/displays/tft/dialogues/alphanumeric.c">
+                <configuration Name="THUMB Flash Release" build_exclude_from_build="No"/>
+              </file>
             </folder>
             <file file_name="../../drivers/displays/tft/bmp.c"/>
-            <file file_name="../../drivers/displays/tft/colors.h"/>
             <file file_name="../../drivers/displays/tft/drawing.c"/>
             <file file_name="../../drivers/displays/tft/lcd.h"/>
             <file file_name="../../drivers/displays/tft/touchscreen.c"/>
+            <folder Name="aafonts">
+              <folder Name="aa4">
+                <file file_name="../../drivers/displays/tft/aafonts/aa4/FontCalibri18_AA4.c"/>
+              </folder>
+              <folder Name="aa2">
+                <file file_name="../../drivers/displays/tft/aafonts/aa2/DejaVuSansCondensed14_AA2.c"/>
+                <file file_name="../../drivers/displays/tft/aafonts/aa2/DejaVuSansCondensedBold14_AA2.c"/>
+                <file file_name="../../drivers/displays/tft/aafonts/aa2/DejaVuSansMono13_AA2.c"/>
+                <file file_name="../../drivers/displays/tft/aafonts/aa2/DejaVuSansMono14_AA2.c"/>
+                <file file_name="../../drivers/displays/tft/aafonts/aa2/DejaVuSansMono10_AA2.c"/>
+              </folder>
+            </folder>
+            <file file_name="../../drivers/displays/tft/colors.c"/>
+            <file file_name="../../drivers/displays/tft/aafonts.c">
+              <configuration Name="THUMB Flash Release" build_exclude_from_build="No"/>
+            </file>
+            <file file_name="../../drivers/displays/tft/fonts.c"/>
           </folder>
           <folder Name="character">
             <folder Name="samsung_20T202DA2JA">
             </file>
             <file file_name="../../project/commands/drawing/cmd_clear.c"/>
             <file file_name="../../project/commands/drawing/cmd_bmp.c"/>
-            <file file_name="../../project/commands/drawing/cmd_gettext.c"/>
+            <file file_name="../../project/commands/drawing/cmd_gettext.c">
+              <configuration Name="THUMB Flash Release" build_exclude_from_build="Yes"/>
+            </file>
             <file file_name="../../project/commands/drawing/cmd_calibrate.c"/>
             <file file_name="../../project/commands/drawing/cmd_text.c">
               <configuration Name="THUMB Flash Release" build_exclude_from_build="No"/>
       </file>
       <file file_name="flash_placement.xml"/>
     </folder>
-    <configuration Name="Release" arm_fp_abi="Soft" gcc_optimization_level="Optimize For Size" link_IOLibraryName="none"/>
+    <configuration Name="Release" arm_fp_abi="Soft" gcc_optimization_level="Optimize For Size"/>
     <configuration Name="Debug" build_remove_unused_symbols="Yes"/>
   </project>
   <configuration Name="THUMB Flash Debug" inherited_configurations="THUMB;Flash;Debug"/>
index e583c29..6e8f274 100644 (file)
@@ -1,16 +1,7 @@
 <!DOCTYPE CrossStudio_for_ARM_Session_File>
 <session>
  <Bookmarks/>
- <Breakpoints>
-  <BreakpointListItem group="CM Exceptions" type="Exception" state="2" counter="0" expression="BusFault" />
-  <BreakpointListItem group="CM Exceptions" type="Exception" state="2" counter="0" expression="ExceptionEntryReturnFault" />
-  <BreakpointListItem group="CM Exceptions" type="Exception" state="2" counter="0" expression="HardFault" />
-  <BreakpointListItem group="CM Exceptions" type="Exception" state="2" counter="0" expression="MemManage" />
-  <BreakpointListItem group="CM Exceptions" type="Exception" state="3" counter="0" expression="Reset" />
-  <BreakpointListItem group="CM Exceptions" type="Exception" state="2" counter="0" expression="UsageFault_CheckingError" />
-  <BreakpointListItem group="CM Exceptions" type="Exception" state="2" counter="0" expression="UsageFault_Coprocessor" />
-  <BreakpointListItem group="CM Exceptions" type="Exception" state="2" counter="0" expression="UsageFault_StateError" />
- </Breakpoints>
+ <Breakpoints/>
  <ETMWindow>
   <ETMRegister number="0" value="800" />
   <ETMRegister number="8" value="6f" />
   <ProjectSessionItem path="LPC1343_CodeBase" name="unnamed" />
   <ProjectSessionItem path="LPC1343_CodeBase;LPC1343_CodeBase" name="unnamed" />
   <ProjectSessionItem path="LPC1343_CodeBase;LPC1343_CodeBase;Source Files" name="unnamed" />
+  <ProjectSessionItem path="LPC1343_CodeBase;LPC1343_CodeBase;Source Files;drivers" name="unnamed" />
+  <ProjectSessionItem path="LPC1343_CodeBase;LPC1343_CodeBase;Source Files;drivers;displays" name="unnamed" />
+  <ProjectSessionItem path="LPC1343_CodeBase;LPC1343_CodeBase;Source Files;drivers;displays;tft" name="unnamed" />
+  <ProjectSessionItem path="LPC1343_CodeBase;LPC1343_CodeBase;Source Files;drivers;displays;tft;dialogues" name="unnamed" />
+  <ProjectSessionItem path="LPC1343_CodeBase;LPC1343_CodeBase;Source Files;project" name="unnamed" />
+  <ProjectSessionItem path="LPC1343_CodeBase;LPC1343_CodeBase;Source Files;project;commands" name="unnamed" />
+  <ProjectSessionItem path="LPC1343_CodeBase;LPC1343_CodeBase;Source Files;project;commands;drawing" name="unnamed" />
  </Project>
  <Register1>
-  <RegisterWindow openNodes="USB;USB/USBRxPLen;USB/USBTxPLen;USB/USBCtrl" binaryNodes="" hiddenNodes="" unsignedNodes="" visibleGroups="CPU;USB" decimalNodes="" octalNodes="" asciiNodes="" />
+  <RegisterWindow openNodes="CPU;CoreDebug" binaryNodes="" hiddenNodes="" unsignedNodes="" visibleGroups="CPU;CoreDebug" decimalNodes="" octalNodes="" asciiNodes="" />
  </Register1>
  <Register2>
   <RegisterWindow openNodes="" binaryNodes="" hiddenNodes="" unsignedNodes="" visibleGroups="" decimalNodes="" octalNodes="" asciiNodes="" />
@@ -67,8 +65,6 @@
  <Watch4>
   <Watches active="0" update="Never" />
  </Watch4>
- <Files>
-  <SessionOpenFile useTextEdit="1" useBinaryEdit="0" codecName="Latin1" x="0" debugPath="C:\Dropbox\microBuilder\Code\LPC1343\LPC1343_CodeBase_GIT\main.c" y="67" path="C:\Dropbox\microBuilder\Code\LPC1343\LPC1343_CodeBase_GIT\main.c" left="0" selected="1" name="unnamed" top="19" />
- </Files>
- <ARMCrossStudioWindow activeProject="LPC1343_CodeBase" autoConnectTarget="Segger J-Link" debugSearchFileMap="" fileDialogInitialDirectory="C:\Dropbox\microBuilder\Code\LPC1343\LPC1343_CodeBase_GIT\drivers\rf\pn532\helpers" fileDialogDefaultFilter="" autoConnectCapabilities="388991" debugSearchPath="" buildConfiguration="THUMB Flash Release" />
+ <Files/>
+ <ARMCrossStudioWindow activeProject="LPC1343_CodeBase" autoConnectTarget="SEGGER J-Link" debugSearchFileMap="" fileDialogInitialDirectory="C:\Dropbox\microBuilder\Code\LPC1343\LPC1343_CodeBase_GIT\drivers\displays\tft" fileDialogDefaultFilter="*.c" autoConnectCapabilities="388991" debugSearchPath="" buildConfiguration="THUMB Flash Release" />
 </session>
This page took 0.067215 seconds and 4 git commands to generate.