+++ /dev/null
- /**\r
- ******************************************************************************\r
- * @file stm32l_discovery_lcd.h\r
- * @author Microcontroller Division\r
- * @version V1.0.0\r
- * @date Apri-2011\r
- * @brief This file contains all the functions prototypes for the glass LCD\r
- * firmware driver.\r
- ******************************************************************************\r
- * @copy\r
- *\r
- * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS\r
- * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE\r
- * TIME. AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY\r
- * DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING\r
- * FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE\r
- * CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.\r
- *\r
- * <h2><center>© COPYRIGHT 2011 STMicroelectronics</center></h2>\r
- */ \r
-\r
-/* Define to prevent recursive inclusion -------------------------------------*/\r
-#ifndef __stm32l_discovery_lcd\r
-#define __stm32l_discovery_lcd\r
-\r
-/* Includes ------------------------------------------------------------------*/\r
-#include "stm32l1xx.h" \r
-#include "discover_board.h"\r
-\r
-/* Define for scrolling sentences*/\r
-#define SCROLL_SPEED 300\r
-#define SCROLL_SPEED_L 600\r
-#define SCROLL_NUM 1\r
-\r
-/* Define for character '.' */\r
-#define POINT_OFF FALSE\r
-#define POINT_ON TRUE\r
-\r
-/* Define for caracter ":" */\r
-#define COLUMN_OFF FALSE\r
-#define COLUMN_ON TRUE\r
-\r
-#define DOT 0x8000 /* for add decimal point in string */\r
-#define DOUBLE_DOT 0x4000 /* for add decimal point in string */\r
-\r
-\r
-/* =========================================================================\r
- LCD MAPPING\r
- =========================================================================\r
- A\r
- _ ----------\r
-COL |_| |\ |J /|\r
- F| H | K |B\r
- _ | \ | / |\r
-COL |_| --G-- --M--\r
- | /| \ |\r
- E| Q | N |C\r
- _ | / |P \| \r
-DP |_| ----------- \r
- D \r
-\r
- An LCD character coding is based on the following matrix:\r
- { E , D , P , N }\r
- { M , C , COL , DP}\r
- { B , A , K , J }\r
- { G , F , Q , H }\r
-\r
- The character 'A' for example is:\r
- -------------------------------\r
-LSB { 1 , 0 , 0 , 0 }\r
- { 1 , 1 , 0 , 0 }\r
- { 1 , 1 , 0 , 0 }\r
-MSB { 1 , 1 , 0 , 0 }\r
- -------------------\r
- 'A' = F E 0 0 hexa\r
-\r
-*/\r
-/* Macros used for set/reset bar LCD bar */\r
-#define BAR0_ON t_bar[1] |= 8\r
-#define BAR0_OFF t_bar[1] &= ~8\r
-#define BAR1_ON t_bar[0] |= 8\r
-#define BAR1_OFF t_bar[0] &= ~8\r
-#define BAR2_ON t_bar[1] |= 2\r
-#define BAR2_OFF t_bar[1] &= ~2\r
-#define BAR3_ON t_bar[0] |= 2 \r
-#define BAR3_OFF t_bar[0] &= ~2 \r
-\r
-/* code for 'µ' character */\r
-#define C_UMAP 0x6084\r
-\r
-/* code for 'm' character */\r
-#define C_mMap 0xb210\r
-\r
-/* code for 'n' character */\r
-#define C_nMap 0x2210\r
-\r
-/* constant code for '*' character */\r
-#define star 0xA0DD\r
-\r
-/* constant code for '-' character */\r
-#define C_minus 0xA000\r
-\r
-/* constant code for '/' */\r
-#define C_slatch 0x00c0\r
-\r
-/* constant code for ° */\r
-#define C_percent_1 0xec00\r
-\r
-/* constant code for small o */\r
-#define C_percent_2 0xb300\r
-\r
-#define C_full 0xffdd\r
-\r
-void LCD_bar(void);\r
-void LCD_GLASS_Init(void);\r
-void LCD_GLASS_WriteChar(uint8_t* ch, bool point, bool column,uint8_t position);\r
-void LCD_GLASS_DisplayString(uint8_t* ptr);\r
-void LCD_GLASS_DisplayStrDeci(uint16_t* ptr);\r
-void LCD_GLASS_ClearChar(uint8_t position);\r
-void LCD_GLASS_Clear(void);\r
-void LCD_GLASS_ScrollSentence(uint8_t* ptr, uint16_t nScroll, uint16_t ScrollSpeed);\r
-void LCD_GLASS_WriteTime(char a, uint8_t posi, bool column);\r
-void LCD_GLASS_Configure_GPIO(void);\r
-\r
-#endif /* stm32l_discovery_lcd*/\r
-\r
-/******************* (C) COPYRIGHT 2011 STMicroelectronics *****END OF FILE****/\r