parent
0564e423e1
commit
9d1917a8e6
|
@ -1,10 +1,10 @@
|
|||
---
|
||||
layout: post
|
||||
title: "VSCode ARM CortexM 开发"
|
||||
subtitle: ""
|
||||
subtitle: "VSCode EIDE 插件的配置和使用"
|
||||
description: "讲述如何使用 VSCode 进行 MCU 系统开发。"
|
||||
excerpt: "VSCode 及 Embedded IDE、Cortex-Debug 扩展介绍。"
|
||||
date: 2023-11-13 19:11:00
|
||||
date: 2024-03-15 15:58:00
|
||||
author: "Rick Chan"
|
||||
tags: ["Applications", "VSCode"]
|
||||
categories: ["Software"]
|
||||
|
@ -20,6 +20,8 @@ published: true
|
|||
- [3.1. PyOCD 的安装](#31-pyocd-的安装)
|
||||
- [3.2. 关于 PyOCD 的扩展说明](#32-关于-pyocd-的扩展说明)
|
||||
- [3.3 PyOCD 常用命令](#33-pyocd-常用命令)
|
||||
- [4. 常见问题解决](#4-常见问题解决)
|
||||
- [4.1. GCC 链接错误 引用未定义函数 \_read \_write \_sbrk](#41-gcc-链接错误-引用未定义函数-_read-_write-_sbrk)
|
||||
|
||||
VSCode 的嵌入式开发插件具备了相当多的功能,这里主要使用 Embedded IDE,这是一个支持 MCU 开发的工具,但不具备调试功能,为了调试 ARM Cortex-M MCUs,可以配合安装 Cortex-Debug 插件。这两个插件直接在扩展商店进行搜索安装即可,下面主要介绍使用方法。
|
||||
|
||||
|
@ -191,3 +193,28 @@ C:\Users\<User Name>\AppData\Local\cmsis-pack-manager\cmsis-pack-manager
|
|||
pyocd pack find <part keyword>
|
||||
pyocd pack install <part number>
|
||||
```
|
||||
|
||||
## 4. 常见问题解决
|
||||
|
||||
### 4.1. GCC 链接错误 引用未定义函数 _read _write _sbrk
|
||||
|
||||
```bash
|
||||
d:/gcc-arm-none-eabi-4_9/bin/../lib/gcc/arm-none-eabi/4.9.3/../../../../arm-none-eabi/lib/armv7-m\libc_nano.a(lib_a-sbrkr.o): In function `_sbrk_r':
|
||||
sbrkr.c:(.text._sbrk_r+0xc): undefined reference to `_sbrk'
|
||||
d:/gcc-arm-none-eabi-4_9/bin/../lib/gcc/arm-none-eabi/4.9.3/../../../../arm-none-eabi/lib/armv7-m\libc_nano.a(lib_a-writer.o): In function `_write_r':
|
||||
writer.c:(.text._write_r+0x10): undefined reference to `_write'
|
||||
d:/gcc-arm-none-eabi-4_9/bin/../lib/gcc/arm-none-eabi/4.9.3/../../../../arm-none-eabi/lib/armv7-m\libc_nano.a(lib_a-closer.o): In function `_close_r':
|
||||
closer.c:(.text._close_r+0xc): undefined reference to `_close'
|
||||
d:/gcc-arm-none-eabi-4_9/bin/../lib/gcc/arm-none-eabi/4.9.3/../../../../arm-none-eabi/lib/armv7-m\libc_nano.a(lib_a-fstatr.o): In function `_fstat_r':
|
||||
fstatr.c:(.text._fstat_r+0xe): undefined reference to `_fstat'
|
||||
d:/gcc-arm-none-eabi-4_9/bin/../lib/gcc/arm-none-eabi/4.9.3/../../../../arm-none-eabi/lib/armv7-m\libc_nano.a(lib_a-isattyr.o): In function `_isatty_r':
|
||||
isattyr.c:(.text._isatty_r+0xc): undefined reference to `_isatty'
|
||||
d:/gcc-arm-none-eabi-4_9/bin/../lib/gcc/arm-none-eabi/4.9.3/../../../../arm-none-eabi/lib/armv7-m\libc_nano.a(lib_a-lseekr.o): In function `_lseek_r':
|
||||
lseekr.c:(.text._lseek_r+0x10): undefined reference to `_lseek'
|
||||
d:/gcc-arm-none-eabi-4_9/bin/../lib/gcc/arm-none-eabi/4.9.3/../../../../arm-none-eabi/lib/armv7-m\libc_nano.a(lib_a-readr.o): In function `_read_r':
|
||||
readr.c:(.text._read_r+0x10): undefined reference to `_read'
|
||||
```
|
||||
|
||||
在 Builder Configurations -> Builder Options 中进行修改。
|
||||
|
||||
选择 Global Options 或 Linker,添加或删除 “--specs=nosys.spece”(文章:[ARM GCC 链接错误 引用未定义函数 _read _write _sbrk 解决和重定向](https://blog.csdn.net/daxiebao/article/details/52653657) 中说要添加该参数,但我实际项目中已经添加了该参数仍然报出了这个警告,删除后警告消失)。
|
||||
|
|
Loading…
Reference in New Issue