背景:
我正在编写ATmega328。我受不了 Arduino IDE,所以我更喜欢使用Xcode来编写代码。但是,我发现使用 Xcode 将草图实际上传到 Arduino 的所有在线选项充其量都是令人费解的,并且在尝试实现它们方面没有成功。
当前方法:
目前对我有用的是严格使用 Xcode 作为调试器,并在我需要它们时“创建”精简版本的 Arduino 类,这样当我输入特定于 Arduino 的代码行时,调试器就不会崩溃。例如,我的 Xcode 项目中有一个 Serial 类,它具有以下功能,可以正常工作:
void Serial::print(int myInt)
{
cout << myInt;
}
void Serial::println(int myInt)
{
cout << myInt << endl;
}
我对字符串以及我可能需要打印的任何其他标准C++数据类型执行相同的操作。
这样,任何时候我想将Serial.print
一个函数放入我正在处理的另一个类中,我都可以在 Xcode 中严格调试,而无需打开 Arduino IDE。我还可以为 等创建一个“假”类pinMode
。
问题:
我想byte
用 Arduino 环境中使用的数据类型来做到这一点。我正在对这个程序采用面向对象的方法,它可能会耗尽我的小 Arduino 上宝贵的 RAM。所以,为了节省空间,我将我所有int
的 s 转换为byte
s 等等。
但是,我假设(并且我的编译器告诉我)我不能继承char
, or int
, 或任何其他基本类型。我不知道如何开始使用诸如“ byte a = 2
”之类的语句或与我当前的(有些复杂的)解决方法类似的语句。
本质上,我想诱使 Xcode 认为所有意图和目的都是byte
一样的int
。
有任何想法吗?