Red de conocimiento informático - Material del sitio web - ¿Cómo utilizar el microcontrolador 51 para generar PWM y utilizar PWM para controlar la potencia de las luces LED?

¿Cómo utilizar el microcontrolador 51 para generar PWM y utilizar PWM para controlar la potencia de las luces LED?

El microcontrolador de la serie 51 no tiene función de salida PWM y puede utilizar salida de temporizador y software. Es muy práctico para situaciones donde la precisión no es alta. El diagrama del circuito se muestra en la Figura 1, utilizando una salida de aislamiento óptico de alta velocidad (6N137) para invertir la señal PWM. 1. Diagrama esquemático

Figura 12. Salida PWM de ancho de pulso fijo

La salida PWM se completa con el temporizador T0 y el ancho de pulso es fijo: 65536 microsegundos. El temporizador T0 está configurado en: temporizador de 16 bits.

Modulación de ancho de pulso:

Lista de programas: (12MHz)

PwmData0T0 temporización t1 (palabra) valor inicial de temporización requerida

Datos PWM 1; valor inicial de temporización (palabra) requerido para la temporización T0 t2

Indicador de salida PwmFPWM

;****************** *** **************************************

setb tro Iniciar T0

. . . . . .

T0Int:; Rutina de servicio de interrupción T0

JB PwmF, la salida PwmOutHPWM no regresa por completo.

Mov TH0, nivel alto (PwmData0)

Mov TL0, nivel bajo (PwmData0)

Setb tr0

Setb PwmF

clr p 1.0; pin de salida PWM

Reti

PwmOutH:

Setb p1.0

Clr tr0

Mov TH0, nivel alto (PwmData1)

Mov TL0, nivel bajo (PwmData1)

Setb tr0

Clr PwmF

Reti

Descripción: Calcula los valores de PwmData0 y PwmData1 en el programa principal. Salida PWM de ancho de pulso variable

El ciclo de trabajo de PWM está controlado por el temporizador T0 y el ancho de pulso está controlado por el temporizador T1 (máximo: 65536 microsegundos).

Las configuraciones del temporizador de T0 y T1 son: Temporizador de 16 bits.

Lista de programas: (12MHz)

PwmData0T0 temporización t1 (palabra) valor inicial de temporización requerida

Datos PWM 1 temporización T1 (palabra) Temporización inicial requerida; valor

;****************************************** * ************************

setb tro inicia T0

setb tr1

. . . . . .

T0Int:; rutina de servicio de interrupción T0

Clr tr0

setb p 1.0 pin de salida PWM

Reti

<; p>t 1 int:; rutina de servicio de interrupción T1

Clr p1.0

Clr tr0

Clr tr1

Mov TH0, nivel alto (PwmData0)

Mov TL0, nivel bajo (PwmData0)

Mov TH1, nivel alto (PwmData1)

Mov TL1, nivel bajo Flat(PwmData1) )

Setb tr1

Setb tr0

Reti

Descripción: Calcula los valores de PwmData0 y PwmData1 en el programa principal.

上篇: Cómo mejorar las métricas de rendimiento del sistemaPrefacio Cuando escribí este título, me sorprendió haber creado un título tan grande. ¡Me di cuenta de que este es el escenario de la vida de innumerables personas! No quiero explicar todos los aspectos de la mejora del rendimiento del sistema. Solo quiero hablar sobre algunas de nuestras ideas y soluciones de diseño para mejorar el rendimiento del sistema J2EE durante el proceso de migración del sistema en función de casos específicos, principalmente la aplicación de la tecnología de almacenamiento en caché de datos. Espero que no dé. Todos han traído demasiados malentendidos. Nota: Todas las discusiones en este artículo se basan en la plataforma Windows y en otras plataformas convencionales, como Unix, Linux, etc. También existe un mecanismo de implementación similar al MMF, que no entraré en detalles aquí. Volver al inicio Concepto: ¿Qué es MMF? (1) A partir de ahora, el término FMM aparecerá con frecuencia en este artículo. Entonces comenzaré con una breve introducción a MMF. MMF, el nombre completo es Archivos asignados en memoria. Desde una perspectiva macro, es una tecnología de mapeo de memoria de datos o una forma de administrar la memoria dinámica. Randy Kath define MMF de la siguiente manera: Los archivos asignados en memoria (MMF) proporcionan una función de administración de memoria única. permite que las aplicaciones accedan a archivos en el disco de la misma manera que la memoria dinámica: a través de punteros. Desde una perspectiva micro, tiene las siguientes características principales: Concepto: MMF es un objeto de Windows al que se puede crear y acceder a través de la API de Windows. Naturaleza: Puede considerar un MMF como un archivo normal, excepto que está almacenado en la memoria del sistema. Figura 1: MMF se puede habilitar en todos los procesos (extraído de MSDN Online) Características: Cualquier proceso puede acceder a MMF: cualquier proceso o subproceso puede acceder a MMF, lo que significa que MMF tiene la característica de habilitarse en todos los procesos, y esta es su mayor "encanto". Por supuesto, dado que todas las operaciones de acceso se realizan en la memoria, también se caracteriza por su alta velocidad. Principio de implementación: MMF se basa en la tecnología de memoria virtual comúnmente utilizada en los sistemas operativos modernos, que se basa en un mecanismo llamado paginación (2). Por lo tanto, se puede considerar que siempre que el sistema operativo adopte un sistema de gestión de memoria virtual basado en páginas, se puede realizar la función MMF. Duración: MMF existe hasta que se desconecta la última referencia. MMF es en realidad una función básica de la plataforma Windows y todas las operaciones en ella se pueden realizar a través de la API de Windows, lo que hace posible que COM acceda a datos a través de procesos bajo la arquitectura DNA. Hace posible almacenar en caché los datos comerciales en el lado de la base de datos en MMF en el lado del servidor de aplicaciones o en el cliente, lo que elimina la sobrecarga del acceso frecuente a la base de datos y mejora en gran medida el rendimiento del acceso al sistema. En Java, también encontramos una serie de clases que aprovechan MMF bajo la especificación NIO de Jdk1.4. Aunque la documentación API de Jdk1.4 no propone claramente tal concepto, sabemos por la documentación de FileChannel y ByteBuffer que el objeto FileChannel tiene la función de asignar archivos a la memoria. Como podemos ver arriba, esto en realidad crea un MMF. Volver arriba Antecedentes: ¿Qué problema encontramos? Queremos actualizar el sistema que hemos adquirido, lo que naturalmente implica la elección de la plataforma. El sistema original se basó en la arquitectura DNA de Microsoft y ahora tendemos a trasladarlo a la plataforma J2EE. Antes de eso, naturalmente, tendremos que realizar los análisis de viabilidad necesarios. Entre otras consideraciones, nos centramos principalmente en la viabilidad de tecnologías clave, ya que queríamos maximizar el uso del diseño arquitectónico del sistema original. Dado que el sistema se basa en la arquitectura DNA de Microsoft y utiliza el componente de acceso remoto DCOM, el rendimiento del sistema naturalmente se convierte en una consideración muy importante. Por lo tanto, lo más destacado del sistema original es que se ha trabajado mucho para mejorar los indicadores de rendimiento de todo el sistema, de modo que todo el sistema tenga un rendimiento sobresaliente en términos de velocidad de respuesta del sistema y operaciones concurrentes de gran volumen de datos. 下篇: ¿Cómo prepararse para el examen de autoestudio?