Notas de estudio de la placa de desarrollo de Alibaba Cloud HaaS100 IoT (3) Aplicación de luz preliminar: use js para hacer que las luces pequeñas parpadeen

Resumen: Es genial dejar que las aplicaciones JavaScript se ejecuten en la placa de desarrollo haas100. Alibaba Cloud denomina este método "aplicaciones ligeras". Este artículo lo llevará a comenzar desde cero, primero comprenderá qué es una aplicación ligera, luego configurará el entorno y luego ejecutará la "aplicación ligera" más simple paso a paso en la placa de desarrollo haas100. El efecto logrado es que después de descargar el código js a la placa de desarrollo, la pequeña luz designada parpadea.

Tabla de contenido

Propósito

1 Pasos de funcionamiento

1.1 Configuración de un entorno de programación

1.2 Más información sobre el modo de funcionamiento de la aplicación ligera

1.3 Compilar una aplicación ligera para ejecutar firmware

1.4 Quemar

1.5 Preparar el entorno para escribir aplicaciones ligeras

1.6 Conecte el módulo de puerto serie USB

1.7 Preparar el programa js

2. Efecto de programación

3. Conclusión

4. Lectura ampliada: motor JavaScript para dispositivos integrados

Pasos básicos para principiantes para comenzar con la placa de desarrollo Alibaba Cloud Haas100

Cómo adaptar el código fuente de la placa de desarrollo haas100 de Alibaba Cloud a la versión python3.7

Notas de estudio de la placa de desarrollo de Alibaba Cloud HaaS100 IoT (1) Introducción a los recursos de hardware

Notas de estudio de la placa de desarrollo de Alibaba Cloud HaaS100 IoT (2) Control de hardware preliminar: haga que las luces parpadeen


Hardware: placa de desarrollo HaaS100 IoT

Software: amp-win (versión de línea de comando), a0s-cube (versión de línea de comando), sistema win7 x64

Propósito

Utilice el método de "aplicación de luz" para programar una sola luz LED para que parpadee.

1 Pasos de funcionamiento

1.1 Configuración de un entorno de programación

Consulte el enlace a continuación para conocer los pasos detallados. Si ha compilado y descargado helloworld_demo con éxito, demuestra que domina las operaciones básicas. Por favor, ignore el paso de configuración de un entorno de programación.

Pasos básicos para principiantes para comenzar con la placa de desarrollo Alibaba Cloud Haas100

1.2 Más información sobre el modo de funcionamiento de la aplicación ligera

¿Por qué escribir el conocimiento del modo de funcionamiento como un paso?

Es porque este conocimiento es demasiado importante y no comprender realmente afecta el funcionamiento de los siguientes pasos.

En el documento de ayuda de Alibaba Cloud, la siguiente figura describe el principio de funcionamiento de la aplicación ligera. Puede ser un poco difícil de entender para los estudiantes con conocimientos básicos débiles.

Utilizo la siguiente figura para describir la aplicación de la luz. La aplicación ligera consiste esencialmente en grabar un entorno de ejecución de scripts de Java en la placa de desarrollo. Este entorno puede aceptar programas js en la parte superior y operar directamente el hardware en la parte inferior. Para realizar funciones complejas con códigos simples.

1.3 Compilar una aplicación ligera para ejecutar firmware

El nombre del firmware es amp_app. No es seguro que las tres letras de amp sean las abreviaturas de esas palabras. Supongo que tipo de entorno operativo es, o admite firmware.


El 12 de noviembre de 2020, descubrí qué es amp del archivo Léame en la carpeta C: \ Users \ Administrator \ AliOS-Things \ components \ amp

El Mini Programa AliOS Things (AMP) es un marco de software de aplicación ligero que se ejecuta en dispositivos con recursos limitados.


Ubicado en la carpeta C: \ Users \ Administrator \ AliOS-Things \ application \ example \ amp_app.

 

Compile este programa como el programa helloworld. Una vez programado este programa en la placa de desarrollo, no comienza directamente a realizar operaciones de hardware, sino que comienza a analizar el programa js. En otras palabras, cuando js le pide que lo haga, comienza a actuar.

Primero abre la línea de comando.

Luego use el comando cd para ir al directorio alios-things

cd alios-things

Luego ejecuta el comando de configuración

aos make amp-app@haas100 -c config

Luego compila

aos make

La interfaz es como la siguiente figura. Si la compilación no es exitosa, consulte los pasos básicos para comenzar con la placa de desarrollo Alibaba Cloud Haas100 para principiantes

1.4 Quemar

Primero, asegúrese de que la placa de desarrollo esté encendida, conecte el cable Micro USB a la computadora y asegúrese de que el controlador USB se haya instalado correctamente.

Ingrese al directorio C: \ Users \ Administrator \ AliOS-Things \ platform \ mcu \ haas1000 \ release \ write_flash_gui

Encuentra herramienta de grabación

Haga doble clic para abrir

Establecer el número de puerto serie

Seleccione grabar

Puede presionar el botón de reinicio (el que tiene el mango de la llave corta) para comenzar la programación. Después de una grabación exitosa, se completa la preparación del firmware de la aplicación ligera.

 

1.5 Preparar el entorno para escribir aplicaciones ligeras

De hecho, es una herramienta que se ejecuta en la línea de comandos de Windows.

Haga clic en la fuente azul a continuación para descargar. O haga clic para descargar a través de los documentos oficiales de Alibaba Cloud.

Alibaba Cloud recomienda oficialmente herramientas de línea de comandos de aplicaciones ligeras

El contenido de la carpeta después de la descompresión es

Esta herramienta se llama herramienta de "línea de comandos". Se ejecuta bajo la línea de comandos. Si hace doble clic en el icono verde amp, aparecerá una ventana de línea de comandos y luego volverá a parpadear.

Antes de usarlo, se recomienda copiar este directorio a mi directorio de documentos, que es el directorio al que se ingresa directamente después de abrir la línea de comando cmd.

Por ejemplo, la ubicación que copié es C: \ Users \ Administrator \ amp-win

Después de ingresar al directorio amp-win a través del comando cd, ingrese el siguiente comando.

amp device list

 

Tenga en cuenta que no es el comando con puntos y barras en el documento de ayuda de Alibaba Cloud, y no necesita tener el sufijo exe.

El resultado de la operación es el siguiente. En este momento, la placa de desarrollo solo está conectada al cable USB para la información de depuración y no al módulo del puerto serie USB. A pesar del mensaje rojo, al menos prueba que la herramienta se está ejecutando.

1.6 Conecte el módulo de puerto serie USB

El módulo que utilizo es el que se muestra a continuación. Dos líneas de datos están conectadas externamente: TXD y RXD, que proporcionan funciones de envío y recepción respectivamente. Otros no necesitan estar conectados, porque la línea de información del puerto serie se ha conectado a la computadora y el GND ya está en el mismo nivel.

Conecte de acuerdo con la conexión del transceptor del puerto serie USB y del transceptor de la placa de desarrollo HAAS100. Y conecte GPIO47 a 3.3V a través de la línea DuPont.

El diagrama de conexión física se muestra en la siguiente figura. Elevar a 3.3V es para que la placa de desarrollo esté lista para recibir el programa js enviado por la computadora. El propósito de utilizar el módulo de puerto serie USB es no entrar en conflicto con el puerto serie de información.

Presione el botón de reinicio, si el LED rojo parpadea dos veces de manera intermitente, demuestra que el firmware se ejecuta correctamente.

1.7 Preparar el programa js

Abra la carpeta de la aplicación en el directorio amp-win

 

Modifique los archivos app.js y app.json por separado

 

El código de app.js es el siguiente

var gpio = require('gpio');

var led3 = gpio.open({
  id: 'LED3',
  success: function() {
      console.log('gpio: open led success')
  },
  fail: function() {
      console.log('gpio: open led failed')
  }
});

var vol = 0;

setInterval(function() {
  vol = 1 - vol;
  led3.writeValue(vol);
  console.log('led set value ' + vol);
}, 1000);

El código app.json es el siguiente

{
    "version": "1.0.0",
    "io": {
	 "LED3": {
            "type": "GPIO",
            "port": 36,
            "dir": "output",
            "pull": "pulldown"
			}
	},
    "debugLevel": "DEBUG"
}

Después de editar, asegúrese de hacer clic en Guardar.

 

1.8 Use la herramienta de línea de comando amp para transferir el programa a la placa de desarrollo

Las dos instrucciones utilizadas son:

El primer comando es mostrar el número de puerto serie actual

amp seriallist

El segundo comando es grabar con el número de serie correspondiente al puerto serie USB

amp serialput app com14

Cuando aparece la siguiente interfaz, la programación es exitosa.

 

2. Efecto de programación

Como se muestra en la figura siguiente, el LED seleccionado en el marco rojo parpadea.

 

3. Conclusión

Desarrollar haas100 en un método de aplicación liviano tiene varias ventajas: primero, no necesita modificar el código subyacente repetidamente, simplemente modifique el programa js directamente; segundo, el código es muy simple; tercero, puede grabar el firmware de hardware una vez; En cuarto lugar, tiene una función de actualización en caliente en línea, que sienta las bases para el desarrollo de productos maduros. Después de dominar los pasos básicos para crear un entorno básico y operaciones de aplicaciones ligeras, el uso de este método de desarrollo mejorará enormemente la eficiencia del desarrollo.

 

4. Lectura ampliada: motor JavaScript para dispositivos integrados

¿Por qué elegir javascript para el desarrollo de IOT?

Una mejor explicación es: IOT carece de un sistema clave --- aplicación.

IoT (Internet of Things) es el futuro reconocido por todos. Pero lo que es vergonzoso es que estos productos geniales que representan el futuro solo parecen existir en el PPT de los conocedores de la industria. Lo que realmente entra en la vida de la gente común es principalmente un "hardware común con Wi-Fi". Como la mayoría de los problemas encontrados en el proceso de popularización ecológica, IoT carece de una aplicación de sistema clave. La falta de aplicaciones dificulta la creación de una ecología de usuario. Sin embargo, esto no es completamente responsabilidad del desarrollador. En la mayoría de los casos, los desarrolladores se encuentran en un estado que sus concubinas no pueden hacer, porque el "desarrollo integrado" que involucra hardware requiere una gran cantidad de código base de hardware subyacente, lo que hace que la mayoría El programa de software es abrumador. (Ver enlace https://www.sohu.com/a/71527621_114877 ).

Anteriormente, el rendimiento de los procesadores integrados era relativamente débil, no lo suficiente para admitir el funcionamiento del motor javascript. Después de todo, JavaScript ("JS" para abreviar) es un lenguaje de programación de alto nivel interpretado o compilado justo a tiempo. Esta función de interpretación y ejecución en la CPU Los requisitos son más altos.

Hoy en día, las CPU son cada vez más fuertes, por lo que las funciones de desarrollo convenientes de javascript definitivamente se volverán cada vez más populares (las herramientas de desarrollo gráfico acelerarán este proceso).

Buscando motores de JavaScript en Internet, encontré muchos. Por ejemplo, la imagen de abajo

También está lo siguiente, duktape es de código abierto en gitee, los estudiantes interesados ​​pueden descargar y estudiar.

El enlace es https://gitee.com/mirrors/duktape/tree/66287cfb4f6afc1db0e647bc423e64f79c4b90f4

Consulte otros documentos de respaldo

 

Pasos básicos para principiantes para comenzar con la placa de desarrollo Alibaba Cloud Haas100

Cómo adaptar el código fuente de la placa de desarrollo haas100 de Alibaba Cloud a la versión python3.7

Notas de estudio de la placa de desarrollo de Alibaba Cloud HaaS100 IoT (1) Introducción a los recursos de hardware

Notas de estudio de la placa de desarrollo de Alibaba Cloud HaaS100 IoT (2) Control de hardware preliminar: haga que las luces parpadeen

 

 

 

Supongo que te gusta

Origin blog.csdn.net/youngwah292/article/details/109540717
Recomendado
Clasificación