¿Qué es un programa C integrado y su estructura para principiantes?

¿Qué es un programa C integrado y su estructura para principiantes?

Anteriormente, muchas aplicaciones integradas se desarrollaron utilizando programación a nivel de ensamblaje. Sin embargo, no proporcionaron portabilidad. Esta desventaja se superó con la llegada de varios lenguajes de alto nivel como C, Pascal y COBOL. Sin embargo, fue el lenguaje C el que obtuvo una gran aceptación para los sistemas integrados, y continúa haciéndolo. El código C escrito es más confiable, escalable y portátil y, de hecho, mucho más fácil de entender. La programación en C integrada es el alma del procesador que funciona dentro de todos y cada uno sistema Integrado con los que nos encontramos en nuestra vida diaria, como teléfonos móviles, lavadoras y cámaras digitales. Cada procesador está asociado con un software integrado. Lo primero y más importante es el software integrado que decide el funcionamiento del sistema integrado. El lenguaje C incorporado se usa con mayor frecuencia para programar el microcontrolador .

¿Qué es el lenguaje C?

El lenguaje C fue desarrollado por Dennis Ritchie en 1969. Es una colección de una o más funciones, y cada función es una colección de declaraciones que realizan una tarea específica.
El lenguaje C es un lenguaje de nivel medio, ya que admite aplicaciones de alto nivel y aplicaciones de bajo nivel. Antes de entrar en los detalles de la programación en C embebido, debemos conocer la organización de la memoria RAM.




Las principales características del lenguaje C incluyen las siguientes.



  • El lenguaje C es un software diseñado con diferentes palabras clave, tipos de datos, variables, constantes, etc.
  • Embedded C es un término genérico dado a un lenguaje de programación escrito en C, que está asociado con una arquitectura de hardware particular.
  • Embedded C es una extensión del lenguaje C con algunos archivos de encabezado adicionales. Estos archivos de encabezado pueden cambiar de un controlador a otro.
  • los microcontrolador 8051 Se utiliza #include.

¿Qué es una programación C integrada?

En todos los proyectos basados ​​en sistemas integrados, la programación en C integrado juega un papel clave para hacer que el microcontrolador funcione y realice las acciones preferidas. En la actualidad, normalmente utilizamos varios dispositivos electrónicos como teléfonos móviles, lavadoras, sistemas de seguridad, refrigeradores, cámaras digitales, etc. El control de estos dispositivos integrados se puede realizar con la ayuda de un programa C integrado. Por ejemplo, en una cámara digital, si presionamos un botón de cámara para capturar una foto, entonces el microcontrolador ejecutará la función requerida para hacer clic en la imagen y almacenarla.

Programación C integrada

Programación C integrada



La programación en C incrustada se construye con un conjunto de funciones donde cada función es un conjunto de declaraciones que se utilizan para ejecutar algunas tareas particulares. Los lenguajes C y C integrados son iguales y se implementan a través de algunos elementos fundamentales como una variable, juego de caracteres, palabras clave, tipos de datos, declaración de variables, expresiones, declaraciones. Todos estos elementos juegan un papel clave al escribir un programa en C integrado.

Los diseñadores de sistemas integrados deben conocer la arquitectura de hardware para escribir programas. Estos programas juegan un papel destacado en la monitorización y el control de dispositivos externos. También operan y utilizan directamente la arquitectura interna del microcontrolador, como el manejo de interrupciones, temporizadores, comunicación en serie y otras funciones disponibles.


Programación del sistema integrado

Como comentamos anteriormente, el diseño de un sistema integrado se puede realizar mediante hardware y software. Por ejemplo, en un sistema integrado simple, el procesador es el módulo principal que funciona como el corazón del sistema. Aquí un procesador no es más que un microprocesador, DSP, microcontrolador, CPLD y FPGA. Todos estos procesadores son programables para que defina el funcionamiento del dispositivo.



Un programa de sistema integrado permite al hardware verificar las entradas y controlar las salidas en consecuencia. En este procedimiento, es posible que el programa integrado tenga que controlar la arquitectura interna del procesador directamente como temporizadores, manejo de interrupciones, puertos de E / S, interfaz de comunicaciones en serie, etc.

Por tanto, la programación del sistema integrado es muy importante para el procesador. Hay diferentes lenguajes de programación disponibles para sistemas embebidos como C, C ++, lenguaje ensamblador, JAVA, script JAVA, visual basic, etc. Así que este lenguaje de programación juega un papel clave al hacer un sistema embebido pero elegir el lenguaje es muy esencial.

Pasos para crear un programa C integrado

Hay diferentes pasos involucrados en el diseño de un programa c integrado como el siguiente.

  • Comentarios
  • Directivas del procesador
  • Configuración de puerto
  • Global variables
  • Función principal / Función principal
  • Declaración de Variable
  • La lógica del programa

Comentarios

En los lenguajes de programación, los comentarios son muy esenciales para describir la función del programa. El código de los comentarios no es ejecutable pero se utiliza para proporcionar documentación del programa. Para comprender la función del programa, esto hará un método simple para comprender la función del programa. En C incrustado, los comentarios están disponibles en dos tipos, a saber, comentarios de línea única y comentarios de línea principal.

En un lenguaje de programación C integrado, podemos colocar comentarios en nuestro código, lo que ayuda al lector a comprender el código fácilmente.

C = a + b / * suma dos variables cuyo valor se almacena en otra variable C * /

Comentario de una sola línea

Generalmente, para los lenguajes de programación, los comentarios de una sola línea son muy útiles para aclarar una fracción del programa. Estos comentarios comienzan con una barra doble (//) y pueden ubicarse en cualquier lugar dentro del lenguaje de programación. Al usar esto, se puede ignorar toda la línea dentro de un programa.

Comentario de varias líneas

Los comentarios de varias líneas comienzan con una sola barra (/) y un asterisco (/ *) en los lenguajes de programación que explican un bloque de código. Este tipo de comentarios se pueden organizar en cualquier lugar dentro del lenguaje de programación y se utilizan principalmente para ignorar un bloque completo de código dentro de un programa.

Directivas del procesador

Las líneas incluidas en el código del programa se denominan directivas de preprocesador que se pueden seguir mediante un símbolo de almohadilla (#). Estas líneas son las directivas del preprocesador pero no declaraciones programadas.
El código se puede examinar a través de un preprocesador antes de que comience la compilación del código real y resuelva estas directivas antes de generar un código a través de declaraciones regulares. Hay varias directivas especiales de preprocesador disponibles, aunque dos directivas son extremadamente útiles dentro del lenguaje de programación.

como el siguiente.

#incluir
#incluir
LED de Sbit = P2 ^ 3
Principal()
{
LED = 0x0ff
Demora()
LED = 0x00
}
#define
#incluir
#define LED P0
Principal()
{
LED = 0x0ff
Demora()
LED = 0x00
}

En el programa anterior, la directiva #include se usa generalmente para comprender bibliotecas estándar como study y. h se utiliza para permitir funciones de E / S utilizando la biblioteca de 'C'. La directiva #define generalmente se usa para describir la serie de variables y asigna los valores ejecutando el proceso dentro de una instrucción particular como macros.

Configuración de puerto

El microcontrolador incluye varios puertos donde cada puerto tiene diferentes pines. Estos pines se pueden utilizar para controlar los dispositivos de interfaz. La declaración de estos pines se puede hacer dentro de un programa con la ayuda de palabras clave. Las palabras clave en el programa c integrado son estándar y predefinidas como bit, sbit, SFR, que se utilizan para indicar los bits y el pin único dentro de un programa.

Hay ciertas palabras que se reservan para realizar tareas específicas. Estas palabras se conocen como palabras clave. Son estándar y predefinidos en el incrustado C. Las palabras clave siempre se escriben en minúsculas. Estas palabras clave deben definirse antes de escribir el programa principal. Las principales funciones de las palabras clave incluyen las siguientes.

#incluir
Sbit a = P 2 ^ 2
SFR 0x00 = PoRT0
Bit C
principal()
{
……………..
……………..
}

sbit

Este es un tipo de tipo de datos que se utiliza para acceder a un solo bit dentro de un registro SFR.

La sintaxis para este tipo de datos es: nombre de variable sbit = bit SFR

Ejemplo: sbit a = P2 ^ 1

Si asignamos p2.1 como variable 'a', entonces podemos usar 'a' en lugar de p2.1 en cualquier parte del programa, lo que reduce la complejidad del programa.

Un poco

Este tipo de tipo de datos se utiliza principalmente para permitir la memoria direccionable por bits de la memoria de acceso aleatorio como 20h a 2fh.

La sintaxis de este tipo de datos es: nombre de la variable de bits

Ejemplo: bit c

Es una configuración de serie de bits dentro de una pequeña región de datos que se utiliza principalmente con la ayuda de un programa para memorizar algo.

SFR

Este tipo de tipo de datos se utiliza para obtener los puertos periféricos del registro SFR mediante un nombre adicional. Entonces, la declaración de todos los registros SFR se puede hacer en mayúsculas.

La sintaxis de este tipo de datos es: nombre de variable SFR = dirección SFR para registro SFR

Ejemplo: SFR port0 = 0 × 80

Si asignamos 0 × 80 como 'port0', después de eso podemos utilizar 0 × 80 en lugar de port0 en cualquier lugar del lenguaje de programación para disminuir la dificultad del programa.

Registro SFR

SFR significa Registro de funciones especiales. En el microcontrolador 8051, incluye la memoria RAM con 256 bytes, que se divide en dos elementos principales: el primer elemento de 128 bytes se utiliza principalmente para almacenar los datos mientras que el otro elemento de 128 bytes se utiliza principalmente para los registros SFR. Todos los dispositivos periféricos como temporizadores, contadores y puertos de E / S se almacenan dentro del registro SFR y cada elemento incluye una única dirección.

Global Variables

Cuando la variable se declara antes que la función clave, se conoce como variable global. Esta variable se puede permitir en cualquier función dentro del programa. La vida útil de la variable global depende principalmente de la programación hasta que llega a su fin.

#incluir
Sin signo int a, c = 10
Principal()
{
……………
…………..
}

Función principal / Función principal

La función principal es una parte central al ejecutar cualquier programa y comienza simplemente con la función principal. Cada programa utiliza simplemente una función principal, ya que si el programa incluye la función principal anterior, el compilador se confundirá al comenzar la ejecución del programa.

#incluir
Principal()
{
……………
…………..
}

Declaración de Variable

El nombre como la variable se usa para almacenar los valores, pero esta variable debe declararse primero antes de utilizarse dentro del programa. La declaración de variable indica su nombre y el tipo de datos. Aquí, el tipo de datos no es más que la representación de los datos de almacenamiento. En la programación C embebida, utiliza cuatro tipos de datos fundamentales como integer, float, character para almacenar los datos dentro de la memoria. El tamaño del tipo de datos, así como el rango, se pueden definir según el compilador.

El tipo de datos se refiere a un sistema extenso para declarar variables de diferentes tipos como enteros, caracteres, flotantes, etc. El software C integrado utiliza cuatro tipos de datos que se utilizan para almacenar datos en la memoria.

El 'char' se usa para almacenar cualquier carácter 'int' se usa para almacenar valores enteros, y 'float' se usa para almacenar cualquier valor de punto flotante de precisión. El tamaño y rango de diferentes tipos de datos en una máquina de 32 bits se dan en la siguiente tabla. El tamaño y el rango pueden variar en máquinas con diferentes tamaños de palabras.

  • El tamaño del tipo de datos char / char firmado es de 1 byte y su rango es de -128 a +128
  • El tamaño del tipo de datos de caracteres sin firmar es de 1 byte y su rango es de 0 a 255
  • El tamaño del tipo de datos int / firmado int es de 2 bytes y su rango es de -32768 a 32767
  • El tamaño del tipo de datos int sin signo es de 2 bytes y su rango es de 0 a 65535

Principal()
{
Unsigned int a, b, c
}

La estructura de un programa C integrado se muestra a continuación.

  • comentarios
  • directivas del pre procesador
  • global variables
  • función principal

{

  • variables locales
  • declaraciones
  • …………..
  • …………..

}

  • divertido (1)

{

  • variables locales
  • declaraciones
  • …………..
  • …………..

}

La lógica del programa

La lógica del programa es un plan del carril que aparece en la teoría detrás y resultados predecibles de las acciones del programa. Explica la afirmación de la teoría de lo contrario con respecto a por qué el programa integrado funcionará y muestra los efectos reconocidos de las acciones de otra manera recursos.

Principal
{
LED = 0x0f
retraso (100)
LED = 0x00
retraso (100)
}

Factores principales del programa C integrado

Los principales factores que se deben considerar al elegir el lenguaje de programación para desarrollar un sistema integrado incluyen los siguientes.

Tamaño del programa

Cada lenguaje de programación ocupa algo de memoria donde el procesador integrado como el microcontrolador incluye una cantidad extremadamente menor de memoria de acceso aleatorio.

Velocidad del programa

El lenguaje de programación debe ser muy rápido, por lo que debe ejecutarse lo más rápido posible. La velocidad del hardware integrado no debe reducirse debido al software de ejecución lenta.

Portabilidad

Para los diferentes procesadores integrados, se puede realizar la compilación de programas similares.

  • Implementación simple
  • Mantenimiento sencillo
  • Legibilidad

Diferencias entre el programa C y el programa C integrado

La diferencia entre la programación integrada en C y en C no es mucho, en realidad, aparte del entorno operativo y algunas extensiones. Estos lenguajes de programación son estándares ISO y también tienen una sintaxis, funciones, tipos de datos, etc. aproximadamente similares. Las principales diferencias entre la programación en C y la programación en C incrustado incluyen lo siguiente.

Lenguaje C

Lenguaje C incorporado

Generalmente, este lenguaje se usa para desarrollar aplicaciones basadas en escritorio.

El lenguaje C integrado se utiliza para desarrollar aplicaciones basadas en microcontroladores.
El lenguaje C no es una extensión de ningún lenguaje de programación, sino un lenguaje de programación de propósito generalEmbedded C es una extensión del lenguaje de programación C que incluye diferentes características como direccionamiento de E / S, aritmética de punto fijo, direccionamiento de memoria múltiple, etc.

Procesa el desarrollo nativo en la naturalezaProcesa el desarrollo cruzado en la naturaleza
Es independiente para la arquitectura de hardware.Depende de la arquitectura de hardware del microcontrolador y otros dispositivos
Los compiladores del lenguaje C dependen del sistema operativoLos compiladores de C integrados son independientes del sistema operativo
En lenguaje C, los compiladores estándar se utilizan para ejecutar un programa.En el lenguaje C incorporado, se utilizan compiladores específicos.
Los compiladores populares utilizados en este lenguaje son GCC, Borland turbo C, Intel C ++, etc.Los compiladores populares utilizados en este lenguaje son Keil, BiPOM Electronics y green hill
El formato del lenguaje C es de formato libreSu formato depende principalmente del tipo de microprocesador utilizado.
La optimización de este idioma es normalLa optimización de este idioma es de alto nivel
Es muy fácil de modificar y leer.No es fácil de modificar y leer.
La corrección de errores es fácilLa corrección de errores de este idioma es complicada

Ejemplos de programas C integrados

Los siguientes son algunos programas C Embedded simples que se utilizan para proyectos basados ​​en microcontroladores .

Ejemplo 1

Ejemplo 1

Ejemplo 2

Ejemplo 2

Ejemplo 3

Ejemplo 3

Ejemplo 4

Ejemplo 4

Ventajas

los ventajas del programa c integrado g incluyen lo siguiente.

  • Es muy sencillo de entender.
  • Ejecuta una tarea similar de forma continua, por lo que no es necesario cambiar el hardware, como memoria adicional, o espacio de almacenamiento.
  • Ejecuta simplemente una sola tarea a la vez
  • El costo del hardware utilizado en el c integrado suele ser muy bajo.
  • Las aplicaciones de Embebido son extremadamente apropiadas en industrias.
  • Se necesita menos tiempo para desarrollar un programa de aplicación.
  • Reduce la complejidad del programa.
  • Es fácil de verificar y comprender.
  • Es portátil de un controlador a otro.

Desventajas

los desventajas de la programación c integrada Incluya lo siguiente.

  • A la vez, ejecuta solo una tarea, pero no puede ejecutar las tareas múltiples.
  • Si cambiamos el programa, también necesitamos cambiar el hardware
  • Solo es compatible con el sistema de hardware.
  • Tiene un problema de escalabilidad
  • Tiene una restricción como la memoria limitada, de lo contrario, la compatibilidad de la computadora.

Aplicaciones del programa C integrado

los aplicaciones de programación c embebida Incluya lo siguiente.

  • La programación C integrada se utiliza en industrias para diferentes propósitos
  • El lenguaje de programación utilizado en las aplicaciones es verificador de velocidad en la carretera, control de semáforos, control de alumbrado público, seguimiento del vehículo, inteligencia artificial, domótica y control automático de intensidad.

Esperamos haber tenido éxito en proporcionar una forma fácil y accesible para los principiantes de Programación C integrada . La comprensión de la programación de Embedded C es el requisito previo más esencial para diseñar proyectos basados ​​en embebidos. Además de esto, una mejor comprensión y un conocimiento adecuado sobre la programación C integrada ayudan enormemente a los estudiantes en la selección de una carrera gratificante.

Alentamos y agradecemos las consultas, sugerencias y comentarios de nuestros lectores. Por lo tanto, puede publicar sus consultas y comentarios sobre este artículo en la sección de comentarios que figura a continuación. Siga el enlace a continuación para Proyectos sin soldadura