A few NuTiny-SDK-NUC120 fixes
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5667 42af7a65-404d-4744-a932-0658087f49c3
This commit is contained in:
parent
5515b31748
commit
2c9d402ad4
@ -127,7 +127,7 @@ void nuc_clockconfig(void)
|
||||
|
||||
/* Enable External 4~24 mhz high speed crystal */
|
||||
|
||||
regval = getreg32(NUC_CLK_PWRCON);
|
||||
regval = getreg32(NUC_CLK_PWRCON);
|
||||
regval |= CLK_PWRCON_XTL12M_EN;
|
||||
putreg32(regval, NUC_CLK_PWRCON);
|
||||
|
||||
|
@ -276,7 +276,7 @@ void nuc_lowputc(uint32_t ch)
|
||||
#ifdef HAVE_SERIAL_CONSOLE
|
||||
/* Wait for the TX FIFO to be empty (excessive!) */
|
||||
|
||||
while ((getreg32(NUC_CONSOLE_BASE + NUC_UART_FSR_OFFSET) & UART_FSR_TX_EMPTY) != 0);
|
||||
while ((getreg32(NUC_CONSOLE_BASE + NUC_UART_FSR_OFFSET) & UART_FSR_TX_EMPTY) == 0);
|
||||
|
||||
/* Then write the character to to the TX FIFO */
|
||||
|
||||
@ -331,15 +331,15 @@ void nuc_setbaud(uintptr_t base, uint32_t baud)
|
||||
|
||||
/* Check if the divxider exceeds the range */
|
||||
|
||||
if (clksperbit > 0xffff)
|
||||
if (brd > 0xffff)
|
||||
{
|
||||
/* Try to Set Divider X up 10 (MODE#1) */
|
||||
|
||||
regval &= ~UART_BAUD_DIV_X_ONE;
|
||||
|
||||
for (divx = 8; divx <16; divx++)
|
||||
for (divx = 8; divx < 16; divx++)
|
||||
{
|
||||
brd = (clksperbit % (divx+1));
|
||||
brd = (clksperbit % (divx + 1));
|
||||
if (brd < 3)
|
||||
{
|
||||
regval &= ~UART_BAUD_DIVIDER_X_MASK;
|
||||
@ -357,4 +357,4 @@ void nuc_setbaud(uintptr_t base, uint32_t baud)
|
||||
putreg32(regval, base + NUC_UART_BAUD_OFFSET);
|
||||
|
||||
}
|
||||
#endif /* HAVE_UART */
|
||||
#endif /* HAVE_UART */
|
||||
|
@ -95,19 +95,39 @@ LEDs
|
||||
Serial Console
|
||||
==============
|
||||
|
||||
To be provided
|
||||
By default UART1 is used as the serial console on these boards. NUC120LE3AN
|
||||
is provided as an LQFP48 package and, for this case, the UART1 RX signal
|
||||
(RXD1) is on PB.4, pin 8, and the TX signal (TXD1) is on PB.5, pin 9.
|
||||
These pins are available on the NuTiny-SDC-NUC120 JP5.
|
||||
|
||||
NOTE: The TX vs RX terminology is confusing. On my RS-232 driver board,
|
||||
I need to connect the NUC120 TXD0 pin to the driver boards RXD pin. How
|
||||
confusing!
|
||||
|
||||
UART0 is an alternative that can be selected by modifying the default
|
||||
configuation. UART0 RX (RXD0) is on PB.0, pin 17, and the TX signal (TXD0)
|
||||
is on PB.1, pin 18. These pins are available on the NuTiny-SDC-NUC120 JP1.
|
||||
|
||||
NOTE: PB.0, pin 17, is also used to control the user LED on board (labeled
|
||||
"IO"). CONFIG_ARCH_LED should not be selected if UART0 is used.
|
||||
|
||||
The NUC120LE3AN does not support UART2.
|
||||
|
||||
Debugging
|
||||
=========
|
||||
|
||||
The NuTiny-SDK-NUC120 includes a built-in NuLink debugger. Unfortunately,
|
||||
full debug support is available only with the Keil and IAR toolchains.
|
||||
There is, however, a free program call call ICP (In-Circuit Programmer).
|
||||
It can be used to burn programs into FLASH (aka APROM).
|
||||
There is, however, a free program called ICP (In-Circuit Programmer). It
|
||||
can be used to burn programs into FLASH (aka APROM).
|
||||
|
||||
The ICP program can also be used to burn an ISP program into LDROM. The
|
||||
ISP (In-System Programmer) is available free from the Nuvton website.
|
||||
|
||||
Then NuttX build does not set the configuration words at 0x0030000-0x00300004.
|
||||
You should uncheck the Config box when burning APROM or the previous contents
|
||||
of the configuration words will be erased.
|
||||
|
||||
NuTiny-specific Configuration Options
|
||||
=====================================
|
||||
|
||||
@ -179,7 +199,9 @@ NuTiny-specific Configuration Options
|
||||
the 100 second delay then adjust CONFIG_ARCH_LOOPSPERMSEC until
|
||||
the delay actually is 100 seconds.
|
||||
|
||||
Individual subsystems can be enabled:
|
||||
Individual subsystems can be enabled as follows. These settings are for
|
||||
all of the NUC100/120 line and may not be available for the NUC120LE3AN
|
||||
in particular:
|
||||
|
||||
AHB
|
||||
---
|
||||
@ -226,13 +248,14 @@ NuTiny-specific Configuration Options
|
||||
|
||||
NUC1XX specific device driver settings
|
||||
|
||||
CONFIG_UARTn_SERIAL_CONSOLE - selects the UARTn (n=0,1,2) for the
|
||||
console and ttys0 (default is the USART0).
|
||||
CONFIG_UARTn_SERIAL_CONSOLE - Selects the UARTn (n=0,1,2) for the
|
||||
console and ttys0.
|
||||
CONFIG_UARTn_RXBUFSIZE - Characters are buffered as received.
|
||||
This specific the size of the receive buffer
|
||||
This specific the size of the receive buffer for UARTn.
|
||||
CONFIG_UARTn_TXBUFSIZE - Characters are buffered before
|
||||
being sent. This specific the size of the transmit buffer
|
||||
CONFIG_UARTn_BAUD - The configure BAUD of the UART. Must be
|
||||
for UARTn.
|
||||
CONFIG_UARTn_BAUD - The configure BAUD of UARTn,
|
||||
CONFIG_UARTn_BITS - The number of bits. Must be 5, 6, 7, or 8.
|
||||
CONFIG_UARTn_PARTIY - 0=no parity, 1=odd parity, 2=even parity
|
||||
CONFIG_UARTn_2STOP - Two stop bits
|
||||
@ -277,12 +300,17 @@ Where <subdir> is one of the following:
|
||||
CONFIG_WINDOWS_CYGWIN=y : Using Cygwin
|
||||
CONFIG_ARMV6M_TOOLCHAIN_CODESOURCERYW=y : CodeSourcery for Windows
|
||||
|
||||
3. Serial Console. The serial console is on UART1 which is available
|
||||
on JP5:
|
||||
|
||||
UART1 RX signal (RXD1) is on PB.4, pin 8, and
|
||||
UART1 TX signal (TXD1) is on PB.5, pin 9.
|
||||
|
||||
nsh:
|
||||
---
|
||||
Configures the NuttShell (nsh) located at apps/examples/nsh. The
|
||||
Configuration enables the serial interfaces on UART0. Support for
|
||||
builtin applications is enabled, but in the base configuration no
|
||||
builtin applications are selected (see NOTES below).
|
||||
Configuration enables the serial interfaces on UART1. Support for
|
||||
builtin applications is disabled.
|
||||
|
||||
NOTES:
|
||||
|
||||
@ -303,7 +331,13 @@ Where <subdir> is one of the following:
|
||||
CONFIG_WINDOWS_CYGWIN=y : Using Cygwin
|
||||
CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=y : CodeSourcery for Windows
|
||||
|
||||
3. This configuration includes USB Support (CDC/ACM device)
|
||||
3. Serial Console. The serial console is on UART1 which is available
|
||||
on JP5:
|
||||
|
||||
UART1 RX signal (RXD1) is on PB.4, pin 8, and
|
||||
UART1 TX signal (TXD1) is on PB.5, pin 9.
|
||||
|
||||
4. This configuration includes USB Support (CDC/ACM device)
|
||||
|
||||
CONFIG_STM32_USB=y : STM32 USB device support
|
||||
CONFIG_USBDEV=y : USB device support must be enabled
|
||||
@ -311,7 +345,7 @@ Where <subdir> is one of the following:
|
||||
CONFIG_NSH_BUILTIN_APPS=y : NSH built-in application support must be enabled
|
||||
CONFIG_NSH_ARCHINIT=y : To perform USB initialization
|
||||
|
||||
The CDC/ACM example is included as two NSH "built-in" commands.\
|
||||
The CDC/ACM example is included as two NSH "built-in" commands.
|
||||
|
||||
CONFIG_EXAMPLES_CDCACM=y : Enable apps/examples/cdcacm
|
||||
|
||||
|
@ -85,13 +85,13 @@
|
||||
|
||||
/* HCLK. FOUT is the HCLK source clock. */
|
||||
|
||||
#define BOARD_HCLK_N 0
|
||||
#define BOARD_HCLK_FREQUENCY (BOARD_PLL_FOUT / (BOARD_HCLK_N + 1))
|
||||
#define BOARD_HCLK_N 1
|
||||
#define BOARD_HCLK_FREQUENCY (BOARD_PLL_FOUT / BOARD_HCLK_N)
|
||||
|
||||
/* USB. FOUT is the source. The USB CLK must be 48MHz */
|
||||
|
||||
#define BOARD_USB_N 0
|
||||
#define BOARD_USB_FREQUENCY (BOARD_PLL_FOUT / (BOARD_USB_N + 1))
|
||||
#define BOARD_USB_N 1
|
||||
#define BOARD_USB_FREQUENCY (BOARD_PLL_FOUT / BOARD_USB_N)
|
||||
|
||||
/* LED definitions ******************************************************************/
|
||||
/* The NuTiny has a single green LED that can be controlled from sofware. This LED
|
||||
|
@ -156,8 +156,8 @@ CONFIG_ARCH_NUC_MEDIUMDENSITY=y
|
||||
# CONFIG_NUC_PWM5 is not set
|
||||
# CONFIG_NUC_PWM6 is not set
|
||||
# CONFIG_NUC_PWM7 is not set
|
||||
CONFIG_NUC_UART0=y
|
||||
# CONFIG_NUC_UART1 is not set
|
||||
# CONFIG_NUC_UART0 is not set
|
||||
CONFIG_NUC_UART1=y
|
||||
# CONFIG_NUC_USBD is not set
|
||||
# CONFIG_NUC_ACMP is not set
|
||||
# CONFIG_NUC_ADC is not set
|
||||
@ -311,20 +311,20 @@ CONFIG_DEV_NULL=y
|
||||
CONFIG_SERIAL=y
|
||||
CONFIG_DEV_LOWCONSOLE=y
|
||||
# CONFIG_16550_UART is not set
|
||||
CONFIG_ARCH_HAVE_UART0=y
|
||||
CONFIG_ARCH_HAVE_UART1=y
|
||||
CONFIG_MCU_SERIAL=y
|
||||
CONFIG_UART0_SERIAL_CONSOLE=y
|
||||
CONFIG_UART1_SERIAL_CONSOLE=y
|
||||
# CONFIG_NO_SERIAL_CONSOLE is not set
|
||||
|
||||
#
|
||||
# UART0 Configuration
|
||||
# UART1 Configuration
|
||||
#
|
||||
CONFIG_UART0_RXBUFSIZE=256
|
||||
CONFIG_UART0_TXBUFSIZE=256
|
||||
CONFIG_UART0_BAUD=115200
|
||||
CONFIG_UART0_BITS=8
|
||||
CONFIG_UART0_PARITY=0
|
||||
CONFIG_UART0_2STOP=0
|
||||
CONFIG_UART1_RXBUFSIZE=256
|
||||
CONFIG_UART1_TXBUFSIZE=256
|
||||
CONFIG_UART1_BAUD=115200
|
||||
CONFIG_UART1_BITS=8
|
||||
CONFIG_UART1_PARITY=0
|
||||
CONFIG_UART1_2STOP=0
|
||||
# CONFIG_USBDEV is not set
|
||||
# CONFIG_USBHOST is not set
|
||||
# CONFIG_WIRELESS is not set
|
||||
|
@ -3,7 +3,7 @@
|
||||
# see misc/tools/kconfig-language.txt.
|
||||
#
|
||||
|
||||
menu "Device Controller Driver Options"
|
||||
comment "USB Device Controller Driver Options"
|
||||
|
||||
config USBDEV_ISOCHRONOUS
|
||||
bool "Enable isochronous"
|
||||
@ -98,9 +98,9 @@ bool "Decode device controller events"
|
||||
extern const struct trace_msg_t g_usb_trace_strings_intdecode[];
|
||||
#endif
|
||||
|
||||
endmenu
|
||||
comment "USB Device Class Driver Options"
|
||||
|
||||
menuconfig USBDEV_COMPOSITE
|
||||
config USBDEV_COMPOSITE
|
||||
bool "USB composite device support"
|
||||
default n
|
||||
---help---
|
||||
@ -162,7 +162,7 @@ config COMPOSITE_VERSIONNO
|
||||
Interface version number.
|
||||
endif
|
||||
|
||||
menuconfig PL2303
|
||||
config PL2303
|
||||
bool "Prolific PL2303 serial/USB converter emulation"
|
||||
default n
|
||||
select SERIAL_REMOVABLE
|
||||
@ -235,7 +235,7 @@ config PL2303_PRODUCTSTR
|
||||
default "PL2303 Emulation"
|
||||
endif
|
||||
|
||||
menuconfig CDCACM
|
||||
config CDCACM
|
||||
bool "USB Modem (CDC ACM) support"
|
||||
default n
|
||||
select SERIAL_REMOVABLE
|
||||
@ -400,7 +400,7 @@ config CDCACM_PRODUCTSTR
|
||||
default "CDC/ACM Serial"
|
||||
endif
|
||||
|
||||
menuconfig USBMSC
|
||||
config USBMSC
|
||||
bool "USB Mass storage class device"
|
||||
default n
|
||||
---help---
|
||||
|
Loading…
Reference in New Issue
Block a user