Esto puede estar en el límite de las posibilidades de ATTiny13, pero aún así: ¿es posible conectar ATTiny13 a USB para obtener lecturas de ADC (una vía)?
De acuerdo con este artículo http://www.vk2zay.net/article/211 (y mi comprensión del mismo) parece factible, aunque el tamaño del programa de comunicación en serie requiere mucha memoria.
Sin embargo, en lugar de max232, tengo un adaptador Micro USB a serie de microbot ( http://www.microbot.it/products/mr002-002-1.php ). (Bueno, también tengo el chip max3323, pero me gustaría reservarlo para otra cosa).
Soy consciente de esta pregunta: ¿ Cómo puedo comunicarme entre el microcontrolador y la PC sin usar el adaptador RS232/USB?
pero no puedo entender por qué se necesita max232 en el medio?
ACTUALIZACIÓN : no puedo encontrar ninguna hoja de datos mejor sobre el adaptador, pero usa el chip MCP2200.
ACTUALIZACIÓN 2 : como respondió Passerby a continuación, uno puede conectar attiny directamente al adaptador del microbot. Para que conste, estos son los cambios que hice en el proyecto mencionado anteriormente para que funcione:
La línea 52 del código necesitaba "const": const unsigned long mags[10] PROGMEM = {... para hacer feliz a avr-gcc.
El pin 6 de attiny debe conectarse al RX del adaptador (attiny puede usar Vdd y Gnd para una alimentación de 5v)
No configuré ningún fusible con avrdude (los eliminé en Makefile)
La tasa de baudios en mi caso fue 1200, y todo lo que se necesitó para ver la salida de attiny fue cu -l /dev/ttyACM3 -s 1200 (supongo que cu hace algo de magia al adaptador al principio para establecer la tasa de baudios). La tasa de baudios se calculó observando la salida del pin 6 con un osciloscopio, lo que dio un ancho de pulso de aproximadamente 0,8 ms min. (cu es la utilidad serial Linux/Unix, otra probada es minicom)
La hoja de datos del adaptador no es suficiente. Necesitaba buscar las especificaciones del chip MCP2200 para hacer mejores conjeturas
El adaptador microbot es un adaptador USB a serie basado en TTL (normalmente 5 V). No puedo decir qué IC usan, pero todos actúan de la misma manera. Simplemente conecte los pines TX, RX y GND a su ATTiny13 e inicie una comunicación serial regular. O, en este caso, solo el TX de ATTiny al pin RX del adaptador y los pines de tierra juntos, ya que el proyecto al que se vincula es solo de transmisión. Simplemente reemplazaría el max232 en el circuito, con el adaptador USB en su lugar. Todo lo demás se queda igual.
El max232 se usa cuando se convierte de serie TTL (0v Bajo, +5v Alto) a RS232 real como lo usaría un puerto serie de computadora (+3~25V Bajo, -3~25V Alto). Dado que está utilizando un adaptador de USB a serie con niveles TTL, el mismo que usaría el ATTiny13, no se necesita el max232. Hay algunos adaptadores de usb a serie destinados a usarse con material de nivel rs232 real, por lo que el chip max232 o similar sería útil en ese momento, pero no en su caso.
El adaptador de 5v del microbot está conectado directamente al pin usb de 5v. Esto le da hasta 500 mA para usar.
Los AVR tienen la ventaja de la pila de software LUFA . Puede conectar un AVR directamente a los pines USB D+ y D- y obtener una apariencia razonable de USB. No cumplirá exactamente con las especificaciones de USB, pero es lo suficientemente parecido para casi todas las aplicaciones generales.
A partir de ahí, debería ser bastante sencillo usar el periférico ADC en ATTiny y dejar que LUFA se encargue del lado USB.
Editar: en realidad parece que quieres V-USB ahora. Lo siento por la pista falsa. Específicamente, aquí hay un ejemplo de interfaz de un ATTiny45 con un LDR para comenzar.
Hay un excelente tutorial aquí que puede ayudarte.
Muestra cómo usar un puente USB a USART de 9 dólares, o simplemente puede construir uno propio, y los terminales gratuitos HyperTerminal o RealTerm para comunicarse con los AVR.
EwokPesadillas
susi romano