AVRSH: Un intérprete comandos para Arduino/AVR. ¿ (2 / 6 paso)

Paso 2: Leer y escribir registros

La cáscara del AVR fue escrita principalmente a algunos sensores que me había conectado a mi AVR. Comenzó con un simple LED entonces movido a sensores de luz, sensores de temperatura y finalmente a dos transductores ultrasónicos. avrsh puede establecer los componentes digitales de estos sensores por escrito a los registros que los controlan.

Manipulación de AVR registra mientras se está ejecutando
Para obtener una lista de todos los registros conocidos en el Arduino, escriba:

y obtendrá un listado como este...

Para ver cómo se fijan los bits individuales en cualquier registro, utilice el comando echo o gato :

Aquí estoy pidiendo el intérprete de comandos para mostrar o eco, el contenido de la General propósito entrada-salida registro #0. Tenga en cuenta el signo de porcentaje (%) delante del nombre del registro. Usted necesita esto a indican al shell que es una palabra clave reservada identificar un registro. La típica salida de un comando echo se ve así:

La salida muestra el nombre del registro, el valor hexadecimal en el registro y la representación binaria del registro (mostrando cada bit como un 1 o 0). Para establecer un poco particular en cualquier registro, utilice el "índice de" operador []. Por ejemplo, supongamos que quiero el 3 º bit a 1.

y el shell le dará una respuesta indicando su acción y el resultado:

Dont' olvidar firma el por ciento a la shell está trabajando con un registro. También tenga en cuenta que estableciendo el bit 3, que es 4 pedacitos porque nuestro AVR utiliza un índice basado en cero. En otras palabras, contar hasta el 3 º bit cuenta 0, 1, 2, 3, que es el 4 º lugar, pero el bit 3. Para borrar un poco de la misma forma estableciendo un poco a cero.

Estableciendo los bits como este puede cambiar el funcionamiento de la AVR sobre la marcha. Por ejemplo, al cambiar el temporizador CTC coincide con valor que se encuentra en OCR1A. También le permite dar un vistazo a la configuración particular que usted tendría que comprobar mediante programación en el código, como el valor UBBR para la velocidad en baudios.

Trabajar con DDRn, PORTn y PINn
Los pines de I/O también se asignan a los registros y pueden ajustarse en la misma forma, pero una sintaxis especial ha sido creada para trabajar con estos tipos de registros.

En el código, hay un proceso normal, decir, encender un LED u otro dispositivo que requiere un digital alta o baja. Requiere establecer el registro de dirección de datos para indicar que el pin es para la salida y luego escribir un 1 o 0 en el bit particular en el puerto correcto. Suponiendo que tenemos un LED conectado a digital pin 13 (PB5) y queremos encenderlo, aquí está cómo hacerlo mientras se está ejecutando el AVR:

La salida, además de ser capaces de ver el LED enciende, sería como este:

La "raíz es prompt de la shell que indica que está listo para aceptar comandos de usted. Para apagar el LED, simplemente escribes un poco al pin. Si quieres leer la entrada de un pin digital, utilice el comando de lectura. Utilizando el ejemplo anterior:

Por otra parte, sólo echo el registro de pin que controla pines del puerto. Por ejemplo, si tenemos dip switch conectado al pin digital 7 y 8 (PD7 PD8), podría enviar el comando:

y la cáscara mostrará el contenido de ese registro, que muestra todos los Estados de entrada y salida de los dispositivos conectados y si el estado del interruptor de encendido o apagado.

Artículos Relacionados

Módulo de Sensor de nivel de agua para Arduino AVR brazo STM32 STM8

Módulo de Sensor de nivel de agua para Arduino AVR brazo STM32 STM8

felicitaciones al equipo de ICStation ! Han desarrollado este maravilloso módulo de sensor de nivel de agua por grandes esfuerzos. Este módulo con tamaño pequeño y alto rentable es fácil de usar. En este artículo, utilizaremos el osciloscopio de alma
Un ATTiny13A de programación utilizando Arduino y servo intérprete

Un ATTiny13A de programación utilizando Arduino y servo intérprete

así que ahí estaba, navegando eBay, buscando algunas ofertas baratas en chips Atmel cuando me topé con un par de chips ATTiny13 por £2.50. Sólo tenía que tenerlos! Después de todo, ¿qué tan difícil puede ser?Necesitaba un pequeño chip para leer señal
Cómo intérpretes utilizan tácticas inusuales para afectar los resultados de la negociación

Cómo intérpretes utilizan tácticas inusuales para afectar los resultados de la negociación

En la historia, un montón de preocupaciones sobre la capacidad y exactitud de los intérpretes en la reproducción de las traducciones a una lengua. Incluso sentencia Tribunal juicios dependen fuertemente de tal traducción, y un montón de rumores circu
ESP8266 Wifi adiciónales para Arduino fácil

ESP8266 Wifi adiciónales para Arduino fácil

ActualizaciónEl proceso descrito aquí ya no se recomienda. Este instructivo ha sido reemplazado por ESP8266 WiFi Shield para Arduino y otros micros que proporciona una función de configuración de página web más universal.IntroducciónESP8266 es un chi
Escudo de programación de Arduino AVR

Escudo de programación de Arduino AVR

Necesita una manera rápida y fácil programa AVR virutas. ¿Sabías que puedes usar el Arduino y el IDE de Arduino? Este escudo Arduino hace el proceso mucho más fácil.Puedes:Quemar un bootloader en un reemplazo Atmega328 para su UNO.Hacer un proyecto i
Construcción de un escudo de ISP para Arduino

Construcción de un escudo de ISP para Arduino

es este Instructable para las instrucciones de construcción de nuestro nuevo AVR ISP escudo para Arduino. Su desarrollo debe mucho a Instructables y nuestra propia comunidad (sobre todo Nick!) y espero poder explicar algo de eso en el camino.Han pedi
Telnet a tu Arduino/AVR.

Telnet a tu Arduino/AVR.

El otro día yo quería comprobar en uno de mi AVR pero estaba arriba y Dios sabe era demasiado de una molestia que ir abajo a donde estaba el microcontrolador. Pero, había dos ordenadores ociosos sentados arriba junto a mis nalgas vagos, así que tenía
ArduDroid: Un Simple 2-Way Bluetooth controlador basado en Android para Arduino

ArduDroid: Un Simple 2-Way Bluetooth controlador basado en Android para Arduino

ACTUALIZACIONES:19 de noviembre. 2031: opinión: la increíble sinergia entre Arduino y Android.30 de octubre de 2013: Andruino está ahora oficialmente ARDUDROID y pronto estará disponible en Google Play. Este cambio de nombre para evitar conflicto con
Añadir dispositivo de juego USB para Arduino Leonardo/Micro

Añadir dispositivo de juego USB para Arduino Leonardo/Micro

Nota importante: Este artículo es para IDE de Arduino versión 1.6.5 (o inferior). Para agregar un dispositivo de juego USB a un Arduino Leonardo o Micro mediante Arduino IDE versión 1.6.6 (o superior) ver el Instructable siguiente: Arduino Leonardo M
Intérprete de código de G de CNC mediante procesamiento

Intérprete de código de G de CNC mediante procesamiento

Hola chicos, hace años estoy tratando de hacer mi propio router CNC por lo que puedo hacer PCB fácil.Lo que estoy tratando de hacer es un intérprete de código de G que envía señales a una placa arduino. Así que la placa arduino puede controlar un sim
Interconexión de circuitos electrónicos para Arduinos

Interconexión de circuitos electrónicos para Arduinos

interconexión de circuitos electrónicos para ArduinoEn este instructable utilizo un ejemplo de interfaz un Arduino a un transmisor-receptor de ARINC 429 para demostrar el proceso general de interconexión un Arduino a circuitos electrónicos para poder
Juego protector del RGB LED para arduino

Juego protector del RGB LED para arduino

me preguntaba por qué no hay un montón de juegos hecho por arduino, quiero decir que encontré una página de ellos, pero no fue tht muchos. Así que he decidido que debo tratar de hacer uno de mi propia!Para jugar este juego, usted tiene que emparejar
Joystick de RF para Arduino

Joystick de RF para Arduino

Se trata de un Instructable muy simple que te ayudarán a aprender a controlar de forma inalámbrica un segundo Arduino y los componentes conectados a él. Esto podría utilizarse para el control de motores en un coche, servos en un brazo robótico o prop
Herramientas de procesamiento para Arduino

Herramientas de procesamiento para Arduino

Hay muchas maneras de controlar su Arduino. Muchas muchas muchas maneras. Estos pueden ser a través de otro Arduino, botones, potenciómetros, R/C y más. Una forma genial es a través de la computadora. También hay un montón de maneras de lograr esto.