1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
|
# LPC55S69-EVK BSP Introduction
**English** | [中文](README_zh.md)
## 1. Introduction
The LPC55S69 is a high-performance microcontroller based on the Cortex-M33 core from NXP Semiconductors.
Includes the following hardware features:
| HARDWARE | DESCRIPTION |
| -- | -- |
|Chip model| LPC556x/LPC55S6x Full range |
|CPU| Cortex-M33 Dual Core, with FPU |
|Frequency| 150MHz |
|Basic peripherals| 8 x Flexcomm (optionally configured as USART/SPI/I2C/I2S) / 1 x 50MHz SPI / Dual USB (1 H and 1 Full, Master-Slave Support) |
|Characteristic| PowerQuad DSP coprocessor/security peripheral: PRINCE/PUF/CASPER/AES-256/HASH |
## 2. Hardware development system

## 3. Quickly Get Started
| ENVIRONMENT | DESCRIPTION |
| ------------------- | ------------------------------------------------------------ |
| PC Operating System | Linux/MacOS/Windows |
| Compiler | arm-none-eabi-gcc version 6.3.1 20170620 (release)/armcc/iar |
| Build tools | scons/mdk5/iar |
| Depends | Env tool/(MDK or IAR or arm-none-eabi-gcc)/git/debugger driver |
1) Download the source code
```bash
git clone https://github.com/RT-Thread/rt-thread.git
```
2) Configure the project and prepare the ENV
(Linux/Mac)
```bash
cd rt-thread/bsp/lpc55s69_evk
scons --menuconfig
source ~/.env/env.sh
pkgs --upgrade
```
(Windows)
>Download the ENV toolkit [RT-Thread][1]
3) Configure the chip model
(Linux/Mac)
```bash
scons --menuconfig
```
(Windows(use ENV))
```bash
menuconfig
```
Then, the necessary libraries should be pulled; otherwise, the compilation will fail.
```bash
pkgs --update
```
On the menuconfig page, configure and select the corresponding chip model, if the development environment is MDK/IAR, you need to generate the project.
4) Build Project (please skip this step under Mac/Linux)
(Windows IAR)
```bash
SET RTT_CC=iar
scons --target=iar -s
```
(Windows MDK5)*
```bash
scons --target=mdk5 -s
```
*This board support package does not support projects that generate MDK4
**MDK and IAR must manually select the chip signal once in the project after the project is built, otherwise a serious compilation error will be generated.**
---
Note: Because some versions of Keil5 have issues with AC6 compiler support, it is recommended to upgrade keil to the latest version
> [Download the latest version of Keil here](https://www.keil.com/update/check.asp?P=MDK&V=5.38.0.0&S=)
Some error messages are as follows:

Or you can choose to refer to this forum post:[AC6 compiler error unsupported option '--c99' solution](https://club.rt-thread.org/ask/question/4c744e41ded5efb0.html)
---
5) Compile
To use the MDK or IAR, see the corresponding tutorial
(Windows arm-none-eabi-gcc)
Use the following command to set the GCC path
```bash
SET RTT_EXEC_PATH=[GCC path]
```
(Linux/Mac arm-none-eabi-gcc)
Use the following command to set the GCC path
```bash
export RTT_EXEC_PATH=[GCC path]
```
Compile(WindowsLinux/Mac arm-none-eabi-gcc)
```bash
scons -j4
```
Or use the `scons --exec-path="GCC toolchain path"`command to compile directly while specifying the toolchain location.
The following message indicates that the compilation was successful
```bash
LINK rtthread-lpc55s69.elf
arm-none-eabi-objcopy -O binary rtthread-lpc55s6x.elf rtthread.bin
arm-none-eabi-size rtthread-lpc55s69.elf
text data bss dec hex filename
41596 356 1456 43408 a990 rtthread-lpc55s6x.elf
scons: done building targets.
```
If compiled correctly, the rtthread-lpc55s6x.elf, rtthread.bin file will be generated. where rtthread .bin binary firmware
## 3. Download and Execution
Programming can use emulators, ISPs, and other ways to repeat them here.
### 3.1 Running Results
If the compilation & programming is correct, you will see the RT-Thread startup logo information on the Flexcomm0 serial port*:
```bash
\ | /
- RT - Thread Operating System
/ | \ 4.0.1 build Jul 30 2019
2006 - 2019 Copyright by rt-thread team
uising armclang, version: 6120001
msh />
```
*Default serial port
## 4. Peripheral Condition
| **On-board Peripherals** | **Support** | **Remark** |
| ---------- | :------: | :--------------------------: |
| UART | yes | UART0/2 |
| GPIO | yes | Automatically selects the pinout based on the chip model |
| SPI | yes | Support High Speed SPI |
| USB Device | no | |
| USB Host | no | |
| Windowed WatchDog | no | |
| ADC | no | |
| I2C | yes | Can be used with MMA8562 |
| I2C Sensor | yes | Acquire onboard MMA8562 accelerometer data |
| RTC | yes | RTC clock auto-configuration |
| SDIO | yes | Operate the SD card |
| I2S | no | |
## 5.Notes
- Please use env (v1.3.5) [download](https://github.com/RT-Thread/env-windows/releases/tag/v1.3.5)
- Please use the version is higher than 5.3 keil
## 6. Maintained By
* [email protected]
* [email protected]
|