STM32L-Discovery LCD driver is code compele but untested
This commit is contained in:
parent
bc170f11b4
commit
a189ccebe5
@ -398,16 +398,17 @@ LEDs
|
||||
The STM32L-Discovery board has four LEDs. Two of these are controlled by
|
||||
logic on the board and are not available for software control:
|
||||
|
||||
LD1 COM: LD2 default status is red. LD2 turns to green to indicate that
|
||||
communications are in progress between the PC and the ST-LINK/V2.
|
||||
LD1 COM: LD2 default status is red. LD2 turns to green to indicate
|
||||
that communications are in progress between the PC and the
|
||||
ST-LINK/V2.
|
||||
LD2 PWR: Red LED indicates that the board is powered.
|
||||
|
||||
And two LEDs can be controlled by software:
|
||||
|
||||
User LD3: Green LED is a user LED connected to the I/O PB7 of the STM32L152
|
||||
MCU.
|
||||
User LD4: Blue LED is a user LED connected to the I/O PB6 of the STM32L152
|
||||
MCU.
|
||||
User LD3: Green LED is a user LED connected to the I/O PB7 of the
|
||||
STM32L152 MCU.
|
||||
User LD4: Blue LED is a user LED connected to the I/O PB6 of the
|
||||
STM32L152 MCU.
|
||||
|
||||
These LEDs are not used by the board port unless CONFIG_ARCH_LEDS is
|
||||
defined. In that case, the usage by the board port is defined in
|
||||
@ -432,8 +433,8 @@ Serial Console
|
||||
|
||||
The STM32L-Discovery has no on-board RS-232 driver. Further, there are no
|
||||
USART pins that do not conflict with the on board resources, in particular,
|
||||
the LCD: Most USART pins are available if the LCD is enabled; USART2 may be
|
||||
used if either the LCD or the on-board LEDs are disabled.
|
||||
the LCD: Most USART pins are available if the LCD is enabled; USART2 may
|
||||
be used if either the LCD or the on-board LEDs are disabled.
|
||||
|
||||
PA9 USART1_TX LCD glass COM1 P2, pin 22
|
||||
PA10 USART1_RX LCD glass COM2 P2, pin 21
|
||||
@ -448,24 +449,30 @@ used if either the LCD or the on-board LEDs are disabled.
|
||||
PC10 USART3_TX LCD SEG22 P2, pin 15
|
||||
PC11 USART3_RX LCD SEG23 P2, pin 14
|
||||
|
||||
GND and (external) 5V are available on both P1 and P2. Note: These signals
|
||||
may be at lower voltage levels and, hence, may not properly drive an external
|
||||
RS-232 transceiver.
|
||||
NOTES:
|
||||
|
||||
NOTE: The crystal X3 is not installed on the STM32L3-Discovery. As a
|
||||
result, the HSE clock is not availabled and the less acurate HSI must be
|
||||
used. This may limit the accuracy of the computed baud, especially at
|
||||
higher BAUD. The HSI is supposedly calibrated in the factory to within 1%
|
||||
at room temperatures so perhaps this not a issue.
|
||||
- GND and (external) 5V are available on both P1 and P2. Note: These
|
||||
signals may be at lower voltage levels and, hence, may not properly
|
||||
drive an external RS-232 transceiver.
|
||||
|
||||
- The crystal X3 is not installed on the STM32L3-Discovery. As a result,
|
||||
the HSE clock is not availabled and the less acurate HSI must be used.
|
||||
This may limit the accuracy of the computed baud, especially at higher
|
||||
BAUD. The HSI is supposedly calibrated in the factory to within 1% at
|
||||
room temperatures so perhaps this not a issue.
|
||||
|
||||
- According to the STM32L-Discovery User Manual, the LCD should be removed
|
||||
from its socket if you use any of the LCD pins for any other purpose.
|
||||
|
||||
I have had no problems using the USART1 with PA9 and PA10 with a 3.3-5V
|
||||
RS-232 transceiver module at 57600 baud. I have not tried higher baud rates.
|
||||
RS-232 transceiver module at 57600 baud. I have not tried higher baud
|
||||
rates.
|
||||
|
||||
There is no support for a USB serial connector on the STM32L-Discovery board.
|
||||
The STM32L152 does support USB, but the USB pins are "free I/O" on the board
|
||||
and no USB connector is provided. So the use of a USB console is not option.
|
||||
If you need console output, you will need to disable either LCD (and use any
|
||||
USART) or the LEDs (and use USART1)
|
||||
- There is no support for a USB serial connector on the STM32L-Discovery
|
||||
board. The STM32L152 does support USB, but the USB pins are "free I/O"
|
||||
on the board and no USB connector is provided. So the use of a USB
|
||||
console is not option. If you need console output, you will need to
|
||||
disable either LCD (and use any USART) or the LEDs (and use USART1)
|
||||
|
||||
Debugging
|
||||
=========
|
||||
@ -739,3 +746,9 @@ Where <subdir> is one of the following:
|
||||
CONFIG_HOST_WINDOWS=y : Builds under Windows
|
||||
CONFIG_WINDOWS_CYGWIN=y : Using Cygwin
|
||||
CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=y : CodeSourcery for Windows
|
||||
|
||||
5. To enable SLCD support:
|
||||
|
||||
CONFIG_ARCH_LEDS=y : Disable LED support
|
||||
CONFIG_LIB_SLCDCODEC=y : Enable the SLCD CODEC
|
||||
CONFIG_STM32_LCD=y : Enable the SLCD
|
||||
|
@ -1,5 +1,5 @@
|
||||
############################################################################
|
||||
# configs/stm32f3discovery/nsh/Make.defs
|
||||
# configs/stm32l1discovery/nsh/Make.defs
|
||||
#
|
||||
# Copyright (C) 2013 Gregory Nutt. All rights reserved.
|
||||
# Author: Gregory Nutt <gnutt@nuttx.org>
|
||||
|
@ -1,5 +1,5 @@
|
||||
#!/bin/bash
|
||||
# configs/stm32f3discovery/nsh/setenv.sh
|
||||
# configs/stm32l1discovery/nsh/setenv.sh
|
||||
#
|
||||
# Copyright (C) 2013 Gregory Nutt. All rights reserved.
|
||||
# Author: Gregory Nutt <gnutt@nuttx.org>
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -186,38 +186,38 @@
|
||||
* PC11 LCD_SEG41 LCD SEG23
|
||||
*/
|
||||
|
||||
#define BOARD_LCD_COM0 GPIO_LCD_COM0 /* PA8 */
|
||||
#define BOARD_LCD_COM1 GPIO_LCD_COM1 /* PA9 */
|
||||
#define BOARD_LCD_COM2 GPIO_LCD_COM2 /* PA10 */
|
||||
#define BOARD_LCD_COM3 GPIO_LCD_COM3 /* PB9 */
|
||||
#define BOARD_LCD_SEG0 GPIO_LCD_SEG0 /* PA1 */
|
||||
#define BOARD_LCD_SEG1 GPIO_LCD_SEG1 /* PA2 */
|
||||
#define BOARD_LCD_SEG2 GPIO_LCD_SEG2 /* PA3 */
|
||||
#define BOARD_LCD_SEG3 GPIO_LCD_SEG7 /* PB3 */
|
||||
#define BOARD_LCD_SEG4 GPIO_LCD_SEG8 /* PB4 */
|
||||
#define BOARD_LCD_SEG5 GPIO_LCD_SEG9 /* PB5 */
|
||||
#define BOARD_LCD_SEG6 GPIO_LCD_SEG10 /* PB10 */
|
||||
#define BOARD_LCD_SEG7 GPIO_LCD_SEG11 /* PB11 */
|
||||
#define BOARD_LCD_SEG8 GPIO_LCD_SEG12 /* PB12 */
|
||||
#define BOARD_LCD_SEG9 GPIO_LCD_SEG13 /* PB13 */
|
||||
#define BOARD_LCD_SEG10 GPIO_LCD_SEG14 /* PB14 */
|
||||
#define BOARD_LCD_SEG11 GPIO_LCD_SEG15 /* PB15 */
|
||||
#define BOARD_LCD_SEG12 GPIO_LCD_SEG17 /* PA15 */
|
||||
#define BOARD_LCD_SEG13 GPIO_LCD_SEG16 /* PB8 */
|
||||
#define BOARD_LCD_SEG14 GPIO_LCD_SEG18 /* PC0 */
|
||||
#define BOARD_LCD_SEG15 GPIO_LCD_SEG19 /* PC1 */
|
||||
#define BOARD_LCD_SEG16 GPIO_LCD_SEG20 /* PC2 */
|
||||
#define BOARD_LCD_SEG17 GPIO_LCD_SEG21 /* PC3 */
|
||||
#define BOARD_LCD_SEG18 GPIO_LCD_SEG24 /* PC6 */
|
||||
#define BOARD_LCD_SEG19 GPIO_LCD_SEG25 /* PC7 */
|
||||
#define BOARD_LCD_SEG20 GPIO_LCD_SEG26 /* PC8 */
|
||||
#define BOARD_LCD_SEG21 GPIO_LCD_SEG27 /* PC9 */
|
||||
#define BOARD_LCD_SEG22 GPIO_LCD_SEG40 /* PC10 */
|
||||
#define BOARD_LCD_SEG23 GPIO_LCD_SEG41 /* PC11 */
|
||||
#define BOARD_SLCD_COM0 GPIO_LCD_COM0 /* PA8 */
|
||||
#define BOARD_SLCD_COM1 GPIO_LCD_COM1 /* PA9 */
|
||||
#define BOARD_SLCD_COM2 GPIO_LCD_COM2 /* PA10 */
|
||||
#define BOARD_SLCD_COM3 GPIO_LCD_COM3 /* PB9 */
|
||||
#define BOARD_SLCD_SEG0 GPIO_LCD_SEG0 /* PA1 */
|
||||
#define BOARD_SLCD_SEG1 GPIO_LCD_SEG1 /* PA2 */
|
||||
#define BOARD_SLCD_SEG2 GPIO_LCD_SEG2 /* PA3 */
|
||||
#define BOARD_SLCD_SEG3 GPIO_LCD_SEG7 /* PB3 */
|
||||
#define BOARD_SLCD_SEG4 GPIO_LCD_SEG8 /* PB4 */
|
||||
#define BOARD_SLCD_SEG5 GPIO_LCD_SEG9 /* PB5 */
|
||||
#define BOARD_SLCD_SEG6 GPIO_LCD_SEG10 /* PB10 */
|
||||
#define BOARD_SLCD_SEG7 GPIO_LCD_SEG11 /* PB11 */
|
||||
#define BOARD_SLCD_SEG8 GPIO_LCD_SEG12 /* PB12 */
|
||||
#define BOARD_SLCD_SEG9 GPIO_LCD_SEG13 /* PB13 */
|
||||
#define BOARD_SLCD_SEG10 GPIO_LCD_SEG14 /* PB14 */
|
||||
#define BOARD_SLCD_SEG11 GPIO_LCD_SEG15 /* PB15 */
|
||||
#define BOARD_SLCD_SEG12 GPIO_LCD_SEG17 /* PA15 */
|
||||
#define BOARD_SLCD_SEG13 GPIO_LCD_SEG16 /* PB8 */
|
||||
#define BOARD_SLCD_SEG14 GPIO_LCD_SEG18 /* PC0 */
|
||||
#define BOARD_SLCD_SEG15 GPIO_LCD_SEG19 /* PC1 */
|
||||
#define BOARD_SLCD_SEG16 GPIO_LCD_SEG20 /* PC2 */
|
||||
#define BOARD_SLCD_SEG17 GPIO_LCD_SEG21 /* PC3 */
|
||||
#define BOARD_SLCD_SEG18 GPIO_LCD_SEG24 /* PC6 */
|
||||
#define BOARD_SLCD_SEG19 GPIO_LCD_SEG25 /* PC7 */
|
||||
#define BOARD_SLCD_SEG20 GPIO_LCD_SEG26 /* PC8 */
|
||||
#define BOARD_SLCD_SEG21 GPIO_LCD_SEG27 /* PC9 */
|
||||
#define BOARD_SLCD_SEG22 GPIO_LCD_SEG40 /* PC10 */
|
||||
#define BOARD_SLCD_SEG23 GPIO_LCD_SEG41 /* PC11 */
|
||||
|
||||
#define BOARD LCD_NCOM 4
|
||||
#define BOARD LCD_NSEG 24
|
||||
#define BOARD_LCD_NGPIOS 28
|
||||
#define BOARD_SLCD_NCOM 4
|
||||
#define BOARD_SLCD_NSEG 24
|
||||
#define BOARD_SLCD_NGPIOS 28
|
||||
|
||||
/****************************************************************************************************
|
||||
* Public Types
|
||||
|
Loading…
Reference in New Issue
Block a user