summaryrefslogtreecommitdiffstats
path: root/nuttx/configs/kwikstik-k40
diff options
context:
space:
mode:
authorpatacongo <patacongo@7fd9a85b-ad96-42d3-883c-3090e2eb8679>2011-08-15 18:07:54 +0000
committerpatacongo <patacongo@7fd9a85b-ad96-42d3-883c-3090e2eb8679>2011-08-15 18:07:54 +0000
commitae54aa17608e6c04caf40360b844bfcf9dc8f4cf (patch)
tree94e5118527806428606a0b3f512bc7eccfdc16c4 /nuttx/configs/kwikstik-k40
parentfcd2fe76e82b3c07193c795c57841738e19444a3 (diff)
More Kinetis updates
git-svn-id: https://nuttx.svn.sourceforge.net/svnroot/nuttx/trunk@3883 7fd9a85b-ad96-42d3-883c-3090e2eb8679
Diffstat (limited to 'nuttx/configs/kwikstik-k40')
-rw-r--r--nuttx/configs/kwikstik-k40/README.txt120
-rwxr-xr-xnuttx/configs/kwikstik-k40/ostest/defconfig142
2 files changed, 211 insertions, 51 deletions
diff --git a/nuttx/configs/kwikstik-k40/README.txt b/nuttx/configs/kwikstik-k40/README.txt
index 55703570b8..a520074605 100644
--- a/nuttx/configs/kwikstik-k40/README.txt
+++ b/nuttx/configs/kwikstik-k40/README.txt
@@ -6,17 +6,25 @@ KwiStick K40. Refer to the Freescale web site for further information
about this part:
http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=KWIKSTIK-K40
+The Kwikstik is used with the FreeScale Tower System (mostly just to
+provide a simple UART connection)
+
Contents
========
- o Kinetis KwikStik Features
+ o Kinetis KwikStik-K40 Features
+ o Kinetis KwikStik-K60 Pin Configuration
+ - On-Board Connections
+ - Connections via the General Purpose Tower Plug-in (TWRPI) Socket
+ - Connections via the Tower Primary Connector Side A
+ - Connections via the Tower Primary Connector Side B
o Development Environment
o GNU Toolchain Options
o IDEs
o NuttX buildroot Toolchain
-Kinetis KwikStik Features:
-=========================
+Kinetis KwikStik-K40 Features:
+==============================
o Kinetis K40 MCU in 144 LQFP
- 100 MHz ARM Cortex-M4 core
@@ -34,6 +42,86 @@ Kinetis KwikStik Features:
o Freescale Tower System connectivity for UART, timers, CAN, SPI, I2C, and DAC
o Freescale Tower plug-in (TWRPI) socket connectivity for ADC, SPI, I2C, and GPIO
+Kinetis KwikStik-K40 Pin Configuration
+======================================
+
+On-Board Connections
+------------------- -------------------------- -------- -------------------
+FEATURE CONNECTION PORT/PIN PIN FUNCTION
+------------------- -------------------------- -------- -------------------
+Audio Jack Output Audio Amp On PTE28 PTE28
+ Audio Output DAC1_OUT DAC1_OUT
+ Volume Up PTD10 PTD10
+ Volume Down PTD11 PTD11
+Buzzer Audio Out PTA8 FTM1_CH0
+Microphone Microphone input PTA7 ADC0_SE10
+SD Card Slot SD Clock PTE2 SDHC0_DCLK
+ SD Command PTE3 SDHC0_CMD
+ SD Data0 PTD12 SDHC0_D4
+ SD Data1 PTD13 SDHC0_D5
+ SD Data2 PTD14 SDHC0_D6
+ SD Data3 PTD15 SDHC0_D7
+ SD Card Detect PTE27 PTE27
+ SD Card On PTE6 PTE6
+Infrared Port IR Transmit PTE4 IR_TX
+ IR Receive PTA13 CMP2_IN0
+Touch Pads E1 / Touch PTB0 TSI0_CH0
+ E2 / Touch PTA4 TSI0_CH5
+ E3 / Touch PTA24 PTA24
+ E4 / Touch PTA25 PTA25
+ E5 / Touch PTA26 PTA26
+ E6 / Touch PTA27 PTA27
+
+Connections via the General Purpose Tower Plug-in (TWRPI) Socket
+------------------- -------------------------- -------- -------------------
+FEATURE CONNECTION PORT/PIN PIN FUNCTION
+------------------- -------------------------- -------- -------------------
+General Purpose TWRPI AN0 (J8 Pin 8) ? ADC0_DP0/ADC1_DP3
+TWRPI Socket TWRPI AN1 (J8 Pin 9) ? ADC0_DM0/ADC1_DM3
+ TWRPI AN2 (J8 Pin 12) ? ADC1_DP0/ADC0_DP3
+ TWRPI ID0 (J8 Pin 17) ? ADC0_DP1
+ TWRPI ID1 (J8 Pin 18) ? ADC0_DM1
+ TWRPI I2C SCL (J9 Pin 3) PTC10 I2C1_SCL
+ TWRPI I2C SDA (J9 Pin 4) PTC11 I2C1_SDA
+ TWRPI SPI MISO (J9 Pin 9) PTB23 SPI2_SIN
+ TWRPI SPI MOSI (J9 Pin 10) PTB22 SPI2_SOUT
+ TWRPI SPI SS (J9 Pin 11) PTB20 SPI2_PCS0
+ TWRPI SPI CLK (J9 Pin 12) PTB21 SPI2_SCK
+ TWRPI GPIO0 (J9 Pin 15) PTC12 PTC12
+ TWRPI GPIO1 (J9 Pin 16) PTB9 PTB9
+ TWRPI GPIO2 (J9 Pin 17) PTB10 PTB10
+ TWRPI GPIO3 (J9 Pin 18) PTC5 PTC5
+ TWRPI GPIO4 (J9 Pin 19) PTA5 PTA5
+
+The KwikStik features an expansion card-edge connector that interfaces to the Primary Elevator board in a Tower system (Primary side).
+
+Connections via the Tower Primary Connector Side A
+--- -------------------- --------------------------------
+PIN NAME USAGE
+--- -------------------- --------------------------------
+
+A9 GPIO9 / CTS1 PTE10/UART_CTS
+A43 RXD1 PTE9/UART_RX
+A44 TXD1 PTE8/UART_TX
+A63 RSTOUT_b PTA9/FTM1_CH1
+
+Connections via the Tower Primary Connector Side B
+--- -------------------- --------------------------------
+PIN NAME USAGE
+--- -------------------- --------------------------------
+B21 GPIO1 / RTS1 PTE7/UART_RTS
+B37 PWM7 PTA8/FTM1_CH0
+B38 PWM6 PTA9/FTM1_CH1
+B41 CANRX0 PTE25/CAN1_RX
+B42 CANTX0 PTE24/CAN1_TX
+B44 SPI0_MISO PTA17/SPI0_SIN
+B45 SPI0_MOSI PTA16/SPI0_SOUT
+B46 SPI0_CS0_b PTA14/SPI0_PCS0
+B48 SPI0_CLK PTA15/SPI0_SCK
+B50 SCL1 PTE1/I2C1_SCL
+B51 SDA1 PTE0/I2C1_SDA
+B52 GPIO5 / SD_CARD_DET PTA16
+
Development Environment
=======================
@@ -298,7 +386,7 @@ KwikStik-K40-specific Configuration Options
CONFIG_KINETIS_PIT -- Support Programmable Interval Timers
CONFIG_ARMV7M_MPU -- Support the MPU
- Kinetis interrupt prioritys (Default is the mid priority)
+ Kinetis interrupt priorities (Default is the mid priority)
CONFIG_KINETIS_UART0PRIO
CONFIG_KINETIS_UART1PRIO
@@ -307,6 +395,16 @@ KwikStik-K40-specific Configuration Options
CONFIG_KINETIS_UART4PRIO
CONFIG_KINETIS_UART5PRIO
+ PIN Interrupt Support
+
+ CONFIG_GPIO_IRQ -- Enable pin interrtup support. Also needs
+ one or more of the following:
+ CONFIG_KINETIS_PORTAINTS -- Support 32 Port A interrupts
+ CONFIG_KINETIS_PORTBINTS -- Support 32 Port B interrupts
+ CONFIG_KINETIS_PORTCINTS -- Support 32 Port C interrupts
+ CONFIG_KINETIS_PORTDINTS -- Support 32 Port D interrupts
+ CONFIG_KINETIS_PORTEINTS -- Support 32 Port E interrupts
+
Kinetis K40 specific device driver settings
CONFIG_UARTn_SERIAL_CONSOLE - selects the UARTn (n=0..5) for the
@@ -319,20 +417,6 @@ KwikStik-K40-specific Configuration Options
CONFIG_UARTn_BITS - The number of bits. Must be either 8 or 8.
CONFIG_UARTn_PARTIY - 0=no parity, 1=odd parity, 2=even parity
- CONFIG_KINETIS_SPI_INTERRUPTS - Select to enable interrupt driven SPI
- support. Non-interrupt-driven, poll-waiting is recommended if the
- interrupt rate would be to high in the interrupt driven case.
- CONFIG_KINETIS_SPI_DMA - Use DMA to improve SPI transfer performance.
- Cannot be used with CONFIG_KINETIS_SPI_INTERRUPT.
-
- CONFIG_SDIO_DMA - Support DMA data transfers. Requires CONFIG_KINETIS_SDIO
- and CONFIG_KINETIS_DMA2.
- CONFIG_SDIO_PRI - Select SDIO interrupt prority. Default: 128
- CONFIG_SDIO_DMAPRIO - Select SDIO DMA interrupt priority.
- Default: Medium
- CONFIG_SDIO_WIDTH_D1_ONLY - Select 1-bit transfer mode. Default:
- 4-bit transfer mode.
-
KwikStik-K40 LCD Hardware Configuration
CONFIG_LCD_LANDSCAPE - Define for 320x240 display "landscape"
diff --git a/nuttx/configs/kwikstik-k40/ostest/defconfig b/nuttx/configs/kwikstik-k40/ostest/defconfig
index 651404aa89..e901f0ae94 100755
--- a/nuttx/configs/kwikstik-k40/ostest/defconfig
+++ b/nuttx/configs/kwikstik-k40/ostest/defconfig
@@ -102,41 +102,112 @@ CONFIG_KINETIS_DFU=y
# Individual subsystems can be enabled:
#
# Individual subsystems can be enabled:
-# AHB:
-CONFIG_KINETIS_DMA1=n
-CONFIG_KINETIS_DMA2=n
-CONFIG_KINETIS_CRC=n
-CONFIG_KINETIS_FSMC=y
-CONFIG_KINETIS_SDIO=n
-# APB1:
-CONFIG_KINETIS_TIM2=n
-CONFIG_KINETIS_TIM3=n
-CONFIG_KINETIS_TIM4=n
-CONFIG_KINETIS_TIM5=n
-CONFIG_KINETIS_TIM6=n
-CONFIG_KINETIS_TIM7=n
-CONFIG_KINETIS_WWDG=n
-CONFIG_KINETIS_SPI2=n
-CONFIG_KINETIS_SPI4=n
-CONFIG_KINETIS_UART2=y
+#
+# CONFIG_KINETIS_TRACE - Enable trace clocking on power up.
+# CONFIG_KINETIS_FLEXBUS - Enable flexbus clocking on power up.
+# CONFIG_KINETIS_UART0 - Support UART0
+# CONFIG_KINETIS_UART1 - Support UART1
+# CONFIG_KINETIS_UART2 - Support UART2
+# CONFIG_KINETIS_UART3 - Support UART3
+# CONFIG_KINETIS_UART4 - Support UART4
+# CONFIG_KINETIS_UART5 - Support UART5
+# CONFIG_KINETIS_ETHERNET - Support Ethernet (K60 only)
+# CONFIG_KINETIS_RNGB - Support the random number generator(K60 only)
+# CONFIG_KINETIS_FLEXCAN0 - Support FlexCAN0
+# CONFIG_KINETIS_FLEXCAN1 - Support FlexCAN1
+# CONFIG_KINETIS_SPI0 - Support SPI0
+# CONFIG_KINETIS_SPI1 - Support SPI1
+# CONFIG_KINETIS_SPI2 - Support SPI2
+# CONFIG_KINETIS_I2C0 - Support I2C0
+# CONFIG_KINETIS_I2C1 - Support I2C1
+# CONFIG_KINETIS_I2S - Support I2S
+# CONFIG_KINETIS_DAC0 - Support DAC0
+# CONFIG_KINETIS_DAC1 - Support DAC1
+# CONFIG_KINETIS_ADC0 - Support ADC0
+# CONFIG_KINETIS_ADC1 - Support ADC1
+# CONFIG_KINETIS_CMP - Support CMP
+# CONFIG_KINETIS_VREF - Support VREF
+# CONFIG_KINETIS_SDHC - Support SD host controller
+# CONFIG_KINETIS_FTM0 - Support FlexTimer 0
+# CONFIG_KINETIS_FTM1 - Support FlexTimer 1
+# CONFIG_KINETIS_FTM2 - Support FlexTimer 2
+# CONFIG_KINETIS_LPTIMER - Support the low power timer
+# CONFIG_KINETIS_RTC - Support RTC
+# CONFIG_KINETIS_SLCD - Support the segment LCD (K40 only)
+# CONFIG_KINETIS_EWM - Support the external watchdog
+# CONFIG_KINETIS_CMT - Support Carrier Modulator Transmitter
+# CONFIG_KINETIS_USBOTG - Support USB OTG (see also CONFIG_USBHOST and CONFIG_USBDEV)
+# CONFIG_KINETIS_USBDCD - Support the USB Device Charger Detection module
+# CONFIG_KINETIS_LLWU - Support the Low Leakage Wake-Up Unit
+# CONFIG_KINETIS_TSI - Support the touch screeen interface
+# CONFIG_KINETIS_FTFL - Support FLASH
+# CONFIG_KINETIS_DMA - Support DMA
+# CONFIG_KINETIS_CRC - Support CRC
+# CONFIG_KINETIS_PDB - Support the Programmable Delay Block
+# CONFIG_KINETIS_PIT - Support Programmable Interval Timers
+# CONFIG_ARMV7M_MPU - Support the MPU
+
+CONFIG_KINETIS_TRACE=n
+CONFIG_KINETIS_FLEXBUS=n
+CONFIG_KINETIS_UART0=y
+CONFIG_KINETIS_UART1=y
+CONFIG_KINETIS_UART2=n
CONFIG_KINETIS_UART3=n
CONFIG_KINETIS_UART4=n
CONFIG_KINETIS_UART5=n
+CONFIG_KINETIS_ETHERNET=n
+CONFIG_KINETIS_RNGB=n
+CONFIG_KINETIS_FLEXCAN0=n
+CONFIG_KINETIS_FLEXCAN1=n
+CONFIG_KINETIS_SPI0=n
+CONFIG_KINETIS_SPI1=n
+CONFIG_KINETIS_SPI2=n
+CONFIG_KINETIS_I2C0=n
CONFIG_KINETIS_I2C1=n
-CONFIG_KINETIS_I2C2=n
-CONFIG_KINETIS_USB=y
-CONFIG_KINETIS_CAN=n
-CONFIG_KINETIS_BKP=n
-CONFIG_KINETIS_PWR=n
-CONFIG_KINETIS_DAC=n
-# APB2:
+CONFIG_KINETIS_I2S=n
+CONFIG_KINETIS_DAC0=n
+CONFIG_KINETIS_DAC1=n
+CONFIG_KINETIS_ADC0=n
CONFIG_KINETIS_ADC1=n
-CONFIG_KINETIS_ADC2=n
-CONFIG_KINETIS_TIM1=n
-CONFIG_KINETIS_SPI1=n
-CONFIG_KINETIS_TIM8=n
-CONFIG_KINETIS_UART1=y
-CONFIG_KINETIS_ADC3=n
+CONFIG_KINETIS_CMP=n
+CONFIG_KINETIS_VREF=n
+CONFIG_KINETIS_SDHC=n
+CONFIG_KINETIS_FTM0=n
+CONFIG_KINETIS_FTM1=n
+CONFIG_KINETIS_FTM2=n
+CONFIG_KINETIS_LPTIMER=n
+CONFIG_KINETIS_RTC=n
+CONFIG_KINETIS_SLCD=n
+CONFIG_KINETIS_EWM=n
+CONFIG_KINETIS_CMT=n
+CONFIG_KINETIS_USBOTG=n
+CONFIG_KINETIS_USBDCD=n
+CONFIG_KINETIS_LLWU=n
+CONFIG_KINETIS_TSI=n
+CONFIG_KINETIS_FTFL=n
+CONFIG_KINETIS_DMA=n
+CONFIG_KINETIS_CRC=n
+CONFIG_KINETIS_PDB=n
+CONFIG_KINETIS_PIT=n
+CONFIG_ARMV7M_MPU=n
+
+#
+# PIN Interrupt Support
+#
+# CONFIG_GPIO_IRQ -- Enable pin interrtup support. Also needs one or
+# more of the following:
+# CONFIG_KINETIS_PORTAINTS -- Support 32 Port A interrupts
+# CONFIG_KINETIS_PORTBINTS -- Support 32 Port B interrupts
+# CONFIG_KINETIS_PORTCINTS -- Support 32 Port C interrupts
+# CONFIG_KINETIS_PORTDINTS -- Support 32 Port D interrupts
+# CONFIG_KINETIS_PORTEINTS -- Support 32 Port E interrupts
+#
+CONFIG_GPIO_IRQ=n
+CONFIG_KINETIS_PORTAINTS=n
+CONFIG_KINETIS_PORTBINTS=n
+CONFIG_KINETIS_PORTCINTS=n
+CONFIG_KINETIS_PORTDINTS=n
+CONFIG_KINETIS_PORTEINTS=n
#
# K40X256VLQ100 specific serial device driver settings
@@ -151,37 +222,42 @@ CONFIG_KINETIS_ADC3=n
# CONFIG_UARTn_BITS - The number of bits. Must be either 8 or 9.
# CONFIG_UARTn_PARTIY - 0=no parity, 1=odd parity, 2=even parity
#
+CONFIG_UART1_SERIAL_CONSOLE=n
CONFIG_UART1_SERIAL_CONSOLE=y
CONFIG_UART2_SERIAL_CONSOLE=n
CONFIG_UART3_SERIAL_CONSOLE=n
CONFIG_UART4_SERIAL_CONSOLE=n
CONFIG_UART5_SERIAL_CONSOLE=n
+CONFIG_UART0_TXBUFSIZE=256
CONFIG_UART1_TXBUFSIZE=256
CONFIG_UART2_TXBUFSIZE=256
CONFIG_UART3_TXBUFSIZE=256
CONFIG_UART4_TXBUFSIZE=256
CONFIG_UART5_TXBUFSIZE=256
+CONFIG_UART0_RXBUFSIZE=256
CONFIG_UART1_RXBUFSIZE=256
CONFIG_UART2_RXBUFSIZE=256
CONFIG_UART3_RXBUFSIZE=256
CONFIG_UART4_RXBUFSIZE=256
CONFIG_UART5_RXBUFSIZE=256
+CONFIG_UART0_BAUD=115200
CONFIG_UART1_BAUD=115200
CONFIG_UART2_BAUD=115200
CONFIG_UART3_BAUD=115200
CONFIG_UART4_BAUD=115200
CONFIG_UART5_BAUD=115200
+CONFIG_UART0_BITS=8
CONFIG_UART1_BITS=8
CONFIG_UART2_BITS=8
CONFIG_UART3_BITS=8
CONFIG_UART4_BITS=8
CONFIG_UART5_BITS=8
-CONFIG_UART1_PARITY=0
+CONFIG_UART0_PARITY=0
CONFIG_UART2_PARITY=0
CONFIG_UART3_PARITY=0
CONFIG_UART4_PARITY=0
@@ -304,7 +380,7 @@ CONFIG_HAVE_LIBM=n
# handle delayed processing from interrupt handlers. This feature
# is required for some drivers but, if there are not complaints,
# can be safely disabled. The worker thread also performs
-# garbage collection -- completing any delayed memory deallocations
+# garbage collection--completing any delayed memory deallocations
# from interrupt handlers. If the worker thread is disabled,
# then that clean will be performed by the IDLE thread instead
# (which runs at the lowest of priority and may not be appropriate
@@ -734,7 +810,7 @@ CONFIG_EXAMPLES_OSTEST_NBARRIER_THREADS=3
# specific initialization (nsh_archinitialize()).
#
# If CONFIG_NSH_TELNET is selected:
-# CONFIG_NSH_IOBUFFER_SIZE -- Telnetd I/O buffer size
+# CONFIG_NSH_IOBUFFER_SIZE - Telnetd I/O buffer size
# CONFIG_NSH_DHCPC - Obtain address using DHCP
# CONFIG_NSH_IPADDR - Provides static IP address
# CONFIG_NSH_DRIPADDR - Provides static router IP address