Estoy buscando C++ abstracción para el hardware de puntos de e/S o alfileres. Cosas como in_pin, out_pin, inout_pin, tal vez open_collector_pin, etc.
Yo sin duda puede venir para arriba con un conjunto de abstracciones de mí mismo, así que no estoy en busca de 'hey, usted puede hacerlo de esta manera" tipo de respuestas, sino más bien el 'mira esta biblioteca que se ha utilizado en este y este y este proyecto".
Google no devuelve nada, tal vez porque no sé cómo otros llamarían a esto.
Mi objetivo es la construcción de e/S de las bibliotecas que se basan en esos puntos, sino que también proporcionan puntos de referencia, por lo que sería fácil, por ejemplo, conectar un LCd HD44780 a cualquiera de los pines del chip, o I2C (o SPI) I/O extender, o cualquier otro punto que de alguna manera puede ser controlado, sin ningún cambio en la pantalla LCD de la clase.
Sé que esto es en la electrónica/software de borde, lo siento si no pertenece aquí.
@leon: cableado Que es una bolsa grande de software, tendré que mirar más de cerca. Pero parece que no utilice un pin de la abstracción como yo quiero. Por ejemplo, en el teclado de la implementación veo
digitalWrite(columnPins[c], LOW); // Activate the current column.
Esto implica que hay una función (digitalWrite) que sabe cómo escribir un pin I/O. Esto hace que sea imposible para agregar un nuevo tipo de pin de e/S (por ejemplo, uno que está en una MCP23017, así que tiene que ser por escrito a través de I2C) sin tener que reescribir la función digitalWrite.
@Oli: busqué en google un Arduino IO ejemplo, pero al parecer a utilizar sobre el mismo enfoque que el Cableado de la biblioteca:
int ledPin = 13; // LED connected to digital pin 13
void setup(){
pinMode(ledPin, OUTPUT); // sets the digital pin as output
}