Commit Graph

89 Commits

Author SHA1 Message Date
Meco Man 1a240798fa [RTduino] pins_arduino.h add limit check 2024-03-08 09:39:57 +08:00
Yilin Sun 4570a9047d [bsp][lpc55sxx] GNU toolchain: fix broken port.
1 - The current linker flags undefines `Reset_Handler' and uses `entry()' as
default entry point (specified by `-e'), which will cause a invalid reset
vector in the image without proper crt0 init assembly routine.

2 - The default startup files provided by NXP violate the crt0 assumption
that bss section will be filled with zero unless macro `__STARTUP_CLEAR_BSS'
is defined. This will cause RTT hook funtion pointers set to non-NULL values at
kernel start, thus successfully passes the `RT_nnnn_HOOK_CALL` checks
and jumps to an invalid pointer.

3 - The default heap size used by TCB and kernel objects are set by
linker file macros, which is 0x400 (1024 bytes). The size is too small
for main task and the allocation will fail before the first task being created.

This patch restores Reset_Handler as default reset vector and executes
entry by replacing __START from newlib, defines the
`__STARTUP_CLEAR_BSS` macro to forcibly zeroize the bss section to avoid
unexpected hard faults, set proper heap sizes based on the SRAM sizes.
Some unused compiler/linker flags are also removed or replaced to avoid
future confusion.

The heap sizes for different devices are:
* LPC55(S)69/LPC55(S)28:            64kB
* LPC55(S)06/LPC55(S)16/LPC55(S)36: 32kB

Signed-off-by: Yilin Sun <imi415@imi.moe>
2024-02-07 21:57:28 -05:00
Yilin Sun 7be9ae16b3 [bsp][lpc55sxx] Add RTT constant table sections to GNU lds.
The following RTT constant table sections are missing from the linker
script which will cause non-functional image:

* .rti_fn*
* FSymTab
* VSymTab

Add these sections after .text sections.

Signed-off-by: Yilin Sun <imi415@imi.moe>
2024-02-07 21:57:28 -05:00
Yilin Sun d7c05bfe8d [bsp][lpc55sxx] Update default configs for LPC5500 series.
Fixes compilation errors on mainline RTT versions.

Signed-off-by: Yilin Sun <imi415@imi.moe>
2024-02-07 21:57:28 -05:00
guozhanxin 9e79333512 [project] update mdk/iar project and config. 2023-10-08 11:21:00 +08:00
Shicheng Chu 61c53e3e9f
[bsp][lpc55sxx]update: update keil default project
1.update keil default project
2.add rtduino aht10 demo
2023-06-16 19:28:53 -04:00
rose_man 5d299ffdcd [bsp][lpc55sxx]update: drv_soft_i2c drv_soft_spi
1.config pin in menuconfig;
2.update format;
3.chang soft_i2c name
2023-06-02 17:27:03 -04:00
Shicheng Chu 62afa5a9dc
[bsp][lpc55sxx]add: adaptation LVGL (#7585) 2023-05-31 00:50:19 -04:00
Shicheng Chu 3a44dbbf92
[bsp][lpc55sxx]add: drv_lcd and drv_touch (#7569) 2023-05-30 23:40:19 -04:00
rose_man 31ede54ac7 [bsp][lpc55sxx]update drv_adc 2023-05-29 12:43:03 -04:00
Man, Jianting (Meco) 7a9ee5af20
[bsp][lpc55][gcc] fix the compiling errors when enable C++ (#7575) 2023-05-28 06:48:08 +08:00
rose_man c349fe68b8 [bsp][lpc55sxx]update Kconfig default and delete drv_led drv_key 2023-05-18 10:16:49 -04:00
褚仕成 5f8b33f85d [bsp][lpc55sxx]update: drv_spi 2023-05-17 07:20:05 +08:00
Shicheng Chu 5e188b8ca8
[bsp][lpc55sxx]update: drv_soft_i2c, fix macro (#7506)
Co-authored-by: Man, Jianting (Meco) <920369182@qq.com>
2023-05-15 09:02:32 -04:00
Shicheng Chu a650e3e69c
[bsp][lpc55sxx]update rtconfig.py to support armclang configurations 2023-05-12 00:01:44 -04:00
Shicheng Chu 4ce116dae0
[bsp][lpc55sxx]add: rw007_lpc55sxx_port.c (#7450) 2023-05-08 21:51:58 -04:00
Shicheng Chu 8964fb70ac
[bsp][lpc55sxx]update: add missing library (#7408) 2023-04-28 19:24:17 +08:00
Shicheng Chu 2b9a095c77
[bsp][lpc55s69]update:drv_hwtimer (#7385) 2023-04-28 17:44:40 +08:00
Yuqiang Wang a09a2ea6fe
[bsp][lpc55sxx] Added drv_soft_spi functionality and fixed drv_soft_i2c pin errors (#7251)
1.lpc55sxx添加软件模拟SPI驱动
2.lpc55s69 board在Kconfig中添加软件SPI配置项
3.lpc55s69添加通用GPIO引脚定义
4.lpc55s69修正Kconfig中关于软件i2c配置项
2023-04-23 19:30:42 -04:00
linshire 825cdefe70
[bsp][lpc55s69]add softi2c (#7221) 2023-04-13 21:41:38 -04:00
杨熙 abb4bfdead
[bsp][lpc55sxx] update keil project files (#7180) 2023-04-11 19:02:11 -04:00
Meco Man 85294a8e86 [RTduino][STM32] 优化内置ADC通道 2023-04-08 22:40:55 -04:00
yangjie11 95e6b69b8e
sync and update all projects (#7138)
* sync and update
2023-03-31 16:49:48 +08:00
Meco Man c3820a2c1b format sconscript Kconfig files 2023-03-19 07:08:27 -04:00
Meco Man 0429452465 [bsp][rtduino] update arduino_main.cpp 2023-03-05 21:10:08 -05:00
螺丝松掉的人 3a08336cb5
[bsp][lpc55sxx] update pwm driver 2023-02-28 17:37:09 -05:00
Yifang ae0296e802
[rtduino][lpc55s69] 添加RTduino所需i2c引脚定义及结构体对象声明 (#6984) 2023-02-27 21:28:39 -05:00
杨熙 8015b61fcb
[bsp][lpc55sxx] update spi driver (#6986)
* [bsp][lpc55sxx] update spi driver

1. update spi driver, fix pin driver
2. move DMA_Init to board.c

* [bsp][lpc55sxx] formmat code

* [bsp][lpc55sxx] format lpc55s69_nxp_evk board file
2023-02-27 18:27:42 -05:00
褚仕成 dfad527019 [arduino][lpc55s69] : update PWM 2023-02-27 14:20:08 +08:00
vandoul cdd2755bbd
[bsp][lpc55sxx]修复drv_spi和drv_pwm测试得到的问题 (#6983)
修复spi通过env配置选中之后没有使能的问题,修改spi获取时钟源的API,修改cs脚无效的问题;
修复pwm不能修改频率和占空比的问题,修改pwm获取时钟源的API解决PWM频率和占空比不正确的问题。
2023-02-26 20:06:05 -05:00
Yifang 7763183074
[rtduino][lpc55s69] 纠正uart引脚错误并使能相关依赖项 (#6976)
* [rtduino][lpc55s69] 纠正uart引脚错误并使能相关依赖项

Co-authored-by: Man, Jianting (Meco) <920369182@qq.com>
2023-02-25 01:28:03 -05:00
螺丝松掉的人 faddfecbd2
[rtduino][lpc55s69] update (#6972) 2023-02-25 01:26:37 -05:00
Yifang 08c2a65136
[rtduino][lpc55s69] 修正RTduino框架下的引脚错误 (#6963)
1.修正RTduino框架下的引脚错误
2.Kconfig新增RTduino依赖项
3.README文档完善
4.上传LPC55s69兼容arduino部分引脚图
2023-02-23 13:47:55 -05:00
褚仕成 1533b88390 [arduino][lpc55s69] : 对接RTduino 2023-02-22 19:20:33 -05:00
vandoul c377c4bea3
[nxp][lpc55sxx] add status to lpc_i2c_bus in drv_i2c for lpc55sxx. (#6935)
添加一个status,判断I2C执行结果来修复i2c传输始终正确的BUG。
2023-02-19 23:09:27 -05:00
Yifang 53dcac6f68
bsp][LPC55S69] README文档增加keil版本编译报错解决方案 (#6910) 2023-02-06 22:15:42 -05:00
褚仕成 60199160cf [bsp][lpc55sxx] add: README_zh and README 2023-02-05 22:03:27 -05:00
杨熙 83bd8614ab
Bsp lpc55sxx (#6897)
* [bsp_lpc55sxx] i2c,rtc bsp update

1. add i2c DMA mode
2. enable rtc driver

* [bsp_lpc55sxx] formmat code

using formmating.py for format code

* [lpc55sxx] remove .gitignore

* [bsp][lpc55sxx] update bsp driver

1. update sdif driver, enable DFS, FAT32
2. update rtc driver
2023-02-02 16:41:14 +08:00
Meco Man ddccef3a64 modify RT_ALIGN_SIZE as 8 by default 2023-01-12 22:47:23 -05:00
Meco Man 9bc68d26a4 format Kconfig and sconscript 2023-01-08 22:52:13 -05:00
yandld d58e863a6d [bsp][lpc55sxx] i2c driver fix&repair 2023-01-06 18:42:00 -05:00
yandld 7788227887 [bsp][lpc55sxx] update IDE project file
1. update all LPC55sxx ide project file
2022-12-30 07:52:46 -05:00
yandld 4c44047f78 [bsp][lpc55sxx] add LPC55S36 support 2022-12-05 18:43:41 -05:00
supperthomas 5ff358fec6 [bsp][lpc55s69] Fix the ci error for lpc55s69 2022-11-30 21:58:53 -05:00
杨熙 2bbbd4b3fd
[bsp][lpc55sxx] add support of LPC5528/LPC55S28 (#6667)
* [bsp][lpc55sxx] add support of LPC5528/LPC55S28

1. add .ignore_format
2. add support of LPC55S28
3. fix LPC55S69 keil comiple error
3. refine README

* [bsp][lpc55sxx]

1. remove cmake file
2. formating code using rt-thread formating tools
3. CMSIS folder -> ../

* [bsp][lpc55s69]

 - add IAR support(IAR version: 9.30.1)
2022-11-29 19:56:50 -05:00
yandld 6c5f9ffb0a [bsp][lpc55sxx] update NXP SDK to 2_12_0
update NXP SDK to 2_12_0
2022-11-27 21:01:12 -05:00
Meco Man 8b0610fc34 [bsp][readme] 增加scons --exec-path=xxx 命令的使用说明 2022-10-10 09:42:44 +08:00
liuxianliang a4eb64b873 update the project for RT-Thread_V4.1.1 2022-08-16 19:38:48 +08:00
Tangyuxin a47468f574
支持只运行在安全模式下 (#6115)
* [cpu][cm33] Support running in secure mode

* [bsp][lpc55sxx] Using the cortex cm33
2022-06-29 14:08:57 +08:00
Meco Man c9878aacd2 [scons][iar] 将IAR的PLATFORM字段由iar调整为iccarm
将路径更新为IAR最新版本的路径
2022-06-09 07:01:59 +08:00