embedded - ImageCraft IDE 中的非法存储类 __flash
问题描述
我正在尝试构建一个最初在 Atmel Studio 中构建的项目,该项目编译良好,没有任何错误或警告,但如果我尝试在 ImageCraft IDE 中构建项目,它会说没有错误,但它会无法构建。
我试图在 ImageCraft 中构建的源代码片段:
static inline void PORTA_set_pin_pull_mode(const uint8_t pin, const enum port_pull_mode pull_mode)
{
if (pull_mode == PORT_PULL_UP)
{
DDRA &= ~(1 << pin);
PORTA |= 1 << pin;
}
else if (pull_mode == PORT_PULL_OFF)
{
PORTA &= ~(1 << pin);
}
}
这是构建日志的结果
iccavr.exe:'C:\iccv8avr\bin\iccomavr.exe' 返回错误代码 -1073741819 进程以状态 -1073741819 终止(0 分钟,2 秒)构建失败:0 错误,158警告(0 分钟,2 秒)
尝试构建项目时显示的警告
!W C:\Sahil\Basic WifiBuild\WifiBoard\include\port.h(63):[warning] Illegal storage class __flash for parameter 'pin'. Storage class removed.
!W C:\Sahil\Basic WifiBuild\WifiBoard\include\port.h(63):[warning] Illegal storage class __flash for parameter 'pull_mode'. Storage class removed.
!W C:\Sahil\Basic WifiBuild\WifiBoard\include\port.h(92):[warning] Illegal storage class __flash for parameter 'mask'. Storage class removed.
!W C:\Sahil\Basic WifiBuild\WifiBoard\include\port.h(92):[warning] Illegal storage class __flash for parameter 'direction'. Storage class removed.
!W C:\Sahil\Basic WifiBuild\WifiBoard\include\port.h(123):[warning] Illegal storage class __flash for parameter 'pin'. Storage class removed.
!W C:\Sahil\Basic WifiBuild\WifiBoard\include\port.h(123):[warning] Illegal storage class __flash for parameter 'direction'. Storage class removed.
解决方案
推荐阅读
- parsing - 除了叶子,如何创建相同的树?
- c - 如何在C中实现多关键字搜索?
- git - Git 认为我正在推送到不同的(不存在的)存储库?
- java - 如果我的 JVM 是 1.8,为什么我必须将 targetCompatibility 设置为 JavaVersion.VERSION_1_8
- java - c:if 带有来自模型的变量
- java - 如何通过java中的soap头传递多个参数?
- android - MySQL数据库发生变化时如何通知我的android应用
- html - 如何将父 div 的高度设置为仅一个(多个)子元素的高度
- ruby-on-rails - Ruby On Rails - NoMethodError:nil:NilClass 的未定义方法“[]”
- c# - 写一个 void 作为参数