Publicado el 14 de Junio del 2018
3.409 visualizaciones desde el 14 de Junio del 2018
21,3 MB
425 paginas
Creado hace 15a (07/01/2010)
Copyright 2010 Christian Bodington
Todos los derechos reservados. Esta publicación no puede ser reproducida,
ni en todo ni en partes, ni registrada en o transmitida por un sistema de
recuperación de información, en ninguna forma ni por ningún medio, sea
mecánico, fotoquímico, electrónico, magnético, electroóptico, por fotocopia
o cualquier otro, sin permiso previo por escrito del autor.
Ilustrado y Editado por: Christian Bodington Esteva
Diseño de la portada / Arte por: Christian Bodington Esteva
WWW.CONEXIONELECTRONICA.COM
CONTENIDO
i
1.6.1.- Subrutinas.
1.6.2.- Variables.
1.6.3.- Arrays.
1.6.4.- Constantes.
1.6.5.- Alias.
1.6.6.- Operadores Aritméticos.
1.6.7.- Operadores Bit a Bit.
1.6.8.- Operadores de Comparación.
Prologo.
Capitulo I.
1.1.- Herramientas de diseño.
1.2.- Entorno de Desarrollo Integrado de mikroBasic.
1.3.- Estructura de un programa.
1.4.- Crear un nuevo proyecto en mikroBasic.
1.5.- Conociendo el entorno de desarrollo integrado.
1.6.- Componentes y operadores en mikroBasic.
Capitulo II.
2.1.- Arquitectura Básica del microcontrolador PIC16F877.
2.2.- El oscilador externo.
2.3.- Circuito de Reset.
2.4.- Consideraciones técnicas de diseño.
2.5.- Configuración de puertos de entrada y salida en un microcontrolador PIC.
2.6.- Primeros ejemplos de programación en mikroBasic.
2.4.1.- Estado lógico de un pin I/O.
2.4.2.- Lectura de un estado lógico en un pin I/O.
2.4.3.- El opto-acoplador como dispositivo de enlace.
2.4.4.- Fuente de poder 5Vdc – 3.3Vdc.
2.6.1.- Ejemplo #1. Control de Leds.
2.6.2.- Ejemplo #2. Control de Leds con pulsadores.
2.6.3.- Ejemplo #3. Librería Button.
Capitulo III. Pantallas LCD y GLCD.
3.1.- Pantallas LCD, estudio de la librería LCD de mikroBasic.
3.1.1.- Identificación de los pines de una pantalla LCD.
3.1.2.- Conexión y configuración de una pantalla LCD.
3.1.3.- Rutina Lcd_Init().
3.1.4.- Rutina Lcd_Cmd().
3.1.5.- Rutina Lcd_Out().
3.1.5.1.- Ejemplo #4. Imprimir mensaje en pantalla LCD.
3.1.5.2.- Ejemplo #5. Uso de comandos en pantalla LCD.
3.1.5.3.- Ejemplo #5.1. Uso de comandos en pantalla LCD.
3.1.6.- Rutina Lcd_Out_Cp().
3.1.6.1.- Ejemplo #6. Uso de la rutina Lcd_Out_Cp().
3.1.7.- Rutina Lcd_Chr().
3.1.8.- Rutina Lcd_Chr_Cp().
3.1.8.1.- Ejemplo #7. Uso de rutinas Lcd_Chr() y Lcd_Chr_Cp().
3.2.- Parámetros de rutinas cargados en variables.
3.2.1.- Ejemplo #8. Uso de variables como parámetros.
3.2.2.- Ejemplo #9. Imprime el contenido de dos variables tipo String.
3.3.- Imprimir el contenido de una variable en una pantalla LCD.
3.3.1.- Ejemplo #10. Imprimir el contenido de una variable.
3.3.2.- Ejemplo #11. Imprime el resultado de una operación,
suma y resta de un número cargado en una variable
a través de pulsadores.
3.3.3.- Ejemplo #12. Crear un menú de opciones en la pantalla.
3.4.- Pantalla Gráfica o GLCD (Graphic Liquid Crystal Display).
3.4.1.- Conexión y configuración de una pantalla GLCD.
3.5.- Librería GLCD.
3.5.1.- Rutina Glcd_Init().
3.5.2.- Ejemplo #13. Uso de la rutina Glcd_Init().
3.5.3.- Módulo de Fuentes en mikroBasic.
ii
3.5.3.1.- Ejemplo #14. Cómo incluir un módulo de fuentes.
3.5.6.1.- Ejemplo #15. Imprimir el contenido de una
3.5.7.- Rutina Glcd_Dot(x, y, color).
3.5.4.- Rutina Glcd_Fill().
3.5.5.- Rutina Glcd_Set_Font().
3.5.6.- Rutina Glcd_Write_Text().
variable tipo Word.
3.5.7.1.- Ejemplo #16. Encender o apagar un pixel específico.
3.5.7.2.- Ejemplo #17. Cambio de color o color inverso en la pantalla.
3.5.7.3.- Ejemplo #18. Cambio de estado de un pixel.
3.5.8.- Rutina Glcd_Line(x1, y1, x2, y2, color).
3.5.8.1.- Ejemplo #19. Dibuja línea entre coordenadas específicas.
3.5.8.2.- Ejemplo #20. Dibuja línea entre coordenadas, color inverso.
3.5.9.- Rutina Glcd_V_Line(y1, y2, x, color).
3.5.9.1.- Ejemplo #21. Dibuja línea vertical entre
coordenadas específicas.
3.5.10.- Rutina Glcd_H_Line(x1, x2, y, color).
3.5.10.1.- Ejemplo #22. Dibuja línea horizontal entre coordenadas.
3.5.11.- Rutina Glcd_Rectangle(x1, y1, x2, y2, color).
3.5.11.1.- Ejemplo #23. Dibuja un cuadrado o rectángulo.
3.5.11.2.- Ejemplo #24. Dibuja una serie de rectángulos consecutivos.
3.5.12.- Rutina Glcd_Box(x1, y1, x2, y2, color).
3.5.12.1.- Ejemplo #25. Dibuja un cuadrado o rectángulo sólido.
3.5.12.2.- Ejemplo #26. Dibuja un cuadrado o rectángulo sólido,
color inverso.
3.5.13.- Glcd_Circle(x, y, radio, color).
3.5.13.1.- Ejemplo #27. Dibuja un círculo en la pantalla.
3.5.13.2.- Ejemplo #28. Dibuja un círculo, color inverso.
3.5.13.3.- Ejemplo #29. Dibuja círculos consecutivos.
iii
Asin(x), Acos(x), Atan(x), Atan2(x, y), Log(x), Log10(x), Sqrt(x), Exp(x),
Pow(x, y), fabs(x).
4.1.1.- Ejemplo #30. Cálculo del seno de un valor x.
4.1.2.- Ejemplo #31. Cálculo del coseno de un valor x.
4.1.3.- Ejemplo #32. Cálculo de la tangente de un valor x.
4.1.4.- Ejemplo #33. Calculadora.
5.1.1.- Ejemplo #34. Reproduce las notas de la escala musical en la octava A4,
5.1.2.- Ejemplo #35. Elaboración de un piano de una octava musical.
y muestra las frecuencias a través de la pantalla LCD.
Capítulo IV. Librería Trigon – Funciones Trigonométricas.
4.1.- Funciones Trigonométricas. Sin(x), Sinh(x), Cos(x), Cosh(x), Tan(x), Tanh(x)
Capítulo V. Librería Sound.
5.1.- Rutinas de la librería de sonido de mikroBasic. Cálculos de frecuencias de la
escala musical.
Capítulo VI. Teclado Matricial y Teclado PS/2.
6.1.- Teclado Matricial.
6.2.- Librería KeyPad.
6.3.- Teclado PS/2.
6.4.- Librería PS/2.
6.4.2.1.- Ejemplo #38. Lectura de un teclado PS/2.
6.4.2.2.- Ejemplo #39. Lectura de teclas de funciones especiales.
6.4.2.3.- Ejemplo #40. Mostrar símbolo ASCII y valor correspondiente
6.4.1.- Rutina Ps2_Config().
6.4.2.- Rutina Ps2_Key_Read().
6.2.2.1.- Ejemplo #36. Lectura de un teclado matricial.
6.2.2.2.- Ejemplo #37. Como enmascarar el resultado de la lectura
del teclado matricial.
6.2.1.- Rutina KeyPad_Init().
6.2.2.- Rutina KeyPad_Key_Press().
a una tecla presionada.
iv
7.2.2.1.- Ejemplo #41. Sistema de control de acceso con clave de 6
dígitos almacenada en la memoria EEPROM.
7.2.2.2.- Ejemplo #42. Sistema de control de acceso mejorado. Se
permite el cambio de clave desde el teclado.
Capítulo VII. Memoria de Datos EEPROM.
7.1.- Memoria de datos EEPROM.
7.2.- Librería EEPROM.
7.1.1.- Rutina EEPROM_Read().
7.2.2.- Rutina EEPROM_Write().
Capítulo VIII. Conversor A/D.
8.1.- El conversor A/D.
8.2.- El Acelerómetro.
ejes X, Y, Z.
8.1.1.- El registro ADCON0.
8.1.2.- El registro ADCON1.
8.1.3.- Ejemplo #43. Conversión A/D de una señal analógica.
8.1.4.- Ejemplo #44. Conversión A/D con voltaje de referencia.
8.1.5.- Ejemplo #45. Conversión A/D, datos adicionales en la pantalla.
8.2.1.- Ejemplo #46. Acelerómetro 3D, conversión A/D de datos en los
8.2.2.- Cálculo del voltaje de entrada del conversor A/D.
8.2.3.- Cálculo de la aceleración en base al voltaje calculado en cada eje.
8.2.4.- Ejemplo #47. Visualizar voltaje y aceleración calculada en la GLCD.
8.3.1.- AD594/AD595, cálculo de la linealidad.
8.3.2.- Ejemplo #48. Termómetro digital con termocupla tipo J.
8.3.- Termocupla.
Capítulo IX. Comunicación Serial Asíncrona RS232.
9.1.- Comunicación Serial Asíncrona RS232.
9.2.- Librería UART.
9.2.1.- Rutina UART1_Init().
9.2.2.- Rutina UART1_Data_Ready().
v
9.3.1.- Ejemplo #52. Extraer información de una cadena de datos.
9.4.1.- Widcomm BlueTooth Software 5.0.1.3900.
9.4.2.- Comunicación Serial inalámbrica BlueTooth.
9.2.3.- Rutina UART1_Read().
9.2.4.- Ejemplo #49. Recepción de datos vía RS232.
9.2.5.- Ejemplo #50. Almacenar y visualizar una cadena de caracteres.
9.2.6.- Rutina UART1_Write().
9.2.7.- Ejemplo #51. Transmisión y recepción de datos vía RS232.
9.3.- ¿Cómo extraer información específica de una cadena de datos?.
9.4.- Módulo de comunicaciones BlueTooth.
9.5.- Módulo GPS (OEM), comunicación serial RS232.
9.6.- Programación en Visual Basic 6.0 para ejemplos de comunicación serial
RS232.
Capítulo X. Multi Media Card (MMC) y Secure Card (SD) Memory.
10.1.- Librería MMC/SD.
9.5.1.- Protocolo NMEA.
9.5.2.- Ejemplo #53. Extrae coordenadas geográficas y número de
9.6.1.- Ejemplo #54. Captura de datos enviados desde un módulo VB.
9.6.2.- Ejemplo #55. Captura de datos enviados desde un microcontrolador
a una hoja de cálculo de Microsoft Excel.
satélites utilizador por el módulo GPS.
10.1.1.- Rutina Mmc_Init().
10.1.2.- Rutina Mmc_Read_Cid().
10.1.3.- Rutina Mmc_Read_Csd().
10.1.4.- Rutina Mmc_Write_Sector().
10.1.5.- Rutina Mmc_Read_Sector().
10.2.- Registro CID.
10.3.- Registro CSD Versión 2.0.
vi
10.2.1.- Ejemplo #56. Lectura del registro CID en una memoria SD.
10.3.1.- Ejemplo #57. Lectura del registro CSD en una memoria SD.
10.4.- WinHex.
10.5.- Sistema de archivos FAT.
10.4.1.-
10.4.2.- Ejemplo #59. Lectura de datos de un sector específico.
Ejemplo #58. Almacenamiento de datos en sectores específicos
de la memoria SD.
desde el microcontrolador PIC.
archivo oculto.
10.6.1.- Ejemplo #65. Almacena cadena de caracteres enviada desde la
Comentarios de: Introducción a los microcontroladores PIC (0)
No hay comentarios