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

Paso 4: Otros comandos

Hay varios otros comandos que el intérprete de comandos predeterminado entiende que usted puede encontrar útil. Puedes ver todos los comandos implementados y futuro de liberación mediante la emisión de ayuda o el menú en el indicador. Rápidamente les hablaré aquí como en su mayoría son auto-explicatorias.

Ajustes de frecuencia de reloj de la CPU
Usted puede encontrar lo que el firmware se ha configurado para usar la configuración del reloj del CPU con el comando de la fcpu :

Es decir 16 millones, o 16 millones de herz, conocido más comunmente como 16 MHz. Usted puede cambiar sobre la marcha, por cualquier razón, con el comando clock . Este comando toma un argumento: el prescaler a utilizar al dividir la velocidad de reloj. El comando clock entiende estos valores del divisor:

  • ckdiv2
  • ckdiv4
  • ckdiv8
  • ckdiv16
  • ckdiv32
  • ckdiv64
  • ckdiv128
  • ckdiv256

Utilizando el comando:

Cuando la velocidad del procesador 16MHz resultado en la velocidad de reloj se cambió a 8 MHz. con una velocidad inicial del reloj de 16MHz con un prescaler de ckdiv64 dará como resultado una velocidad de reloj final de 250 KHz. ¿Por qué en la tierra ¿quieres hacer el MCU más lento? Bueno, para uno, una velocidad de reloj menor consume menos energía y si tienes su MCU corriendo de una batería en un recinto de proyecto puede no necesita correr a toda velocidad y podría por lo tanto, reducir la velocidad y reducir su consumo de energía, aumentando la duración de la batería. También, si utiliza el reloj para cualquier tipo de problemas de sincronización con otro MCU, digamos, implementar un software UART o alguna cosa semejante, puede que desee establecer en un valor particular que es fácil conseguir una buena velocidad incluso con menores tasas de error.

Encender y apagar sub-sistemas periféricos
En la misma nota como reducir el consumo de energía mencionado anteriormente, puede que desee reducir aún más el poder cerrando algunos de los periféricos a bordo que no usas. El intérprete de comandos y shell actualmente pueden encender y apagar los siguientes periféricos:

  • Convertidor de analógico a Digital (ADC). Este periférico se utiliza cuando usted tiene un sensor analógico de datos (como temperatura, luz, aceleración, etc.) y necesita convertir a un valor digital.
  • Interfaz periférico serial (SPI). El autobús SPI se utiliza para comunicarse con otros dispositivos habilitados para SPI, como memorias externas, controladores LED, externo ADC, etc.. Partes de la SPI se utilizan ISP de programación, o al menos los pernos son, así que ten cuidado cuando esta apagado si se programa a través de ISP.
  • Interfaz de dos hilos. Algunos dispositivos externos utilizan el bus I2C para comunicarse, aunque estos son rápidamente sustituidos por dispositivos con SPI SPI tiene un rendimiento mayor.
  • USART. Esta es su interfaz serial. Probablemente no quieres apagar esto si está conectado al AVR a través de la conexión en serie. Sin embargo, he añadido esto aquí como un esqueleto para portar a los dispositivos que tienen múltiples USART como el ATmega162 ATmega644P.
  • todos. Este argumento para el comando de encendido o powerdown todos los periféricos mencionados se enciende o les apaga todo con un comando. De nuevo, utilice este comando con prudencia.

Arranque y parada de temporizadores
La cáscara tiene un temporizador de 16 bits que está disponible para su uso. Iniciar el temporizador con el mando de temporizador:

y detener el temporizador con el argumento de parada:

Este temporizador no se entrar en conflicto con el temporizador interno del USART. Ver el código para los detalles de implementación del temporizador USART, si le interesa ese tipo de detalles sangrientos.

Autenticación de
La cáscara puede guardar una contraseña de 8 caracteres en la EEPROM. Este mecanismo de contraseña fue creada para apoyar las capacidades de inicio de sesión de telnet, pero podría ampliarse para proteger a otras cosas. Por ejemplo, podría requerir ciertos comandos, como cambiar valores del registro, a través del mecanismo de autenticación.
Configuración de la contraseña con el comando de la contraseña :

Autorizar contra contraseña (o requieren autorización mediante programación a través del código) con el comando auth. Tenga en cuenta que si intenta cambiar la contraseña de root y ya hay un sistema de contraseña de root, debe autorizar a sí mismo contra la contraseña antigua antes de ser permitido para cambiar a una nueva contraseña.

Por supuesto, usted necesitará cargar el archivo avrsh.eep si borraran el firmware para tener sus antiguos valores y variables restauradas. El fichero Makefile creará el archivo EEPROM para usted.

Variables
La cáscara entiende la noción de variables definidas por el usuario. El código limita esto a 20, pero usted puede cambiarlo si quieres cambiar la define MAX_VARIABLES en script.h. Puede guardar un valor de 16 bits (es decir, cualquier número hasta 65.536) en una variable para recordar más adelante. La sintaxis es similar a los registros salvo un signo de dólar ($) se utiliza para denotar las variables de la shell. Lista de todas las variables con el comando de impresión variables.

Establecer una variable:

Obtener el valor de una variable dada:

Se pueden ver lo que todas las variables que actualmente has instanciado con el comando de impresión que ya sabes.

El nombre de $ $FREE sólo indica que esa variable ubicación es gratis y no se le ha asignado un nombre de variable sin embargo.

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.