Contexte:C++: façon de créer l'équivalent de 'octet' Arduino dans Xcode
Je suis la programmation d'un ATmega328. Je ne peux pas supporter l'IDE Arduino, donc je préfère utiliser Xcode pour écrire du code. Cependant, j'ai trouvé toutes les options disponibles en ligne pour utiliser Xcode pour réellement télécharger des croquis vers Arduino pour être compliqué au mieux et n'ont pas réussi à les implémenter.
Méthode actuelle:
Ce qui fonctionne actuellement bien pour moi est d'utiliser Xcode strictement comme un débogueur, et « créer » des versions dépouillées vers le bas des classes Arduino quand je besoin d'eux de sorte que le débogueur ne panique pas quand je mettre en lignes de code spécifique à Arduino. Par exemple, j'ai une classe de série dans mon projet Xcode qui a les fonctions suivantes, qui fonctionnent très bien:
void Serial::print(int myInt)
{
cout << myInt;
}
void Serial::println(int myInt)
{
cout << myInt << endl;
}
Je fais la même chose pour les chaînes, et tout autre norme C++ type de données que je peux avoir besoin d'imprimer. De cette façon, chaque fois que je veux mettre Serial.print
dans une fonction dans une autre classe sur laquelle je travaille, je peux déboguer strictement à partir de Xcode sans ouvrir l'IDE Arduino. Je peux aussi créer un « faux » classe pour pinMode
, etc.
Problème:
Je voudrais le faire avec le byte
utilisé dans le type de données environnement Arduino. Je prends une approche orientée objet de ce programme, et il menace de manger la précieuse RAM sur mon petit Arduino. Donc, afin de gagner de la place, je convertis tous mes int
en byte
et ainsi de suite. Mais, je suppose (et mon compilateur me dit) que je ne peux pas sous-classer char
, ou int
, ou tout autre type de base. Je ne vois pas comment je peux commencer à utiliser des instructions comme "byte a = 2
" ou quelque chose de similaire avec ma méthode de contournement actuelle (quelque peu alambiquée).
Essentiellement, je veux tromper Xcode en pensant byte
est la même chose que int
pour toutes fins et intentions.
Des idées?
Merci pour le heads up. J'ai essayé juste de lancer le dossier ncore dans mon projet XCode et j'ai eu toutes sortes d'erreurs. Le Readme semble indiquer que ncore est mieux utilisé à partir de la ligne de commande, ce qui est un niveau de complexité dont je n'ai pas besoin et que je ne veux pas encore traiter. –
C'est une information utile pour moi. Merci! –