# Manuales para PIC



## george.manson.69 (Mar 10, 2014)

Hola Todos,

Les comparto algunos proyectos con Microcontroladores PIC que he realizado desde que tengo conocimiento de programacion de Microcontroladores.


Aplicacion de Logica Difusa en PIC
Curso de Hi tech Compiler
Curso de PIC18
Curso de Labview + PIC16

Saludos!

Aplicando Sistemas de Lógica Difusa en Sistemas Embebidos.pdf


----------



## Fogonazo (Mar 11, 2014)

*! Gracias por el aporte ¡*


----------



## george.manson.69 (Mar 13, 2014)

Hola,


Por ahi tenia mas manuales y proyectos que habia realizado se los comparto:


Tarjeta de adquisición de Datos
Python Ejemplo
Practicas con PIC
Ejemplo Con PIC
FlowCode Manual
Algoritmo para LCD Grafico para generar Menus
Entrenador con pic


Saludos!


----------



## digito (Mar 14, 2014)

Hola george.manson.69, buenisimo aporte gracias, les voy a dar un link:http://www.mikroe.com/news/view/496/timer-calculator-application-released/, esto puede servir a quièn yà utiliza MicroC - Mikrobasic -Mikropascal una herramienta util de verdad. Para calculo de los timer de Pic. Muchos Saludos a Todos.


----------



## Meta (Nov 20, 2014)

Hola:

*Manuales y tutoriales, muchos en PDF:*
MPLAB Inicio rápido
Manual IC-Prog
Manual básico del WinPic800 
Librerías de retardos para PIC12F, 16F y 18F
Palabras de configuración de los PIC
Puerto serie RS232 con PIC16F84A controlado por Visual C#
Manual Interfaz VC++ y Visual Basic controlando puerto serie con PIC16F84A

Sigo haciendo manuales y tutoriales relacionado con la electrónica.

Saludos.


----------



## Berto75 (Jul 22, 2015)

george.manson.69 dijo:


> Hola Todos,
> 
> Les comparto algunos proyectos con Microcontroladores PIC que he realizado desde que tengo conocimiento de programacion de Microcontroladores.
> 
> ...



Hola 69 Gracias por el aporte.  E visto que Hi tech Compiler es similar a CCS dime que ventajas tiene Hi tech. Solo e visto paginas en ingles dicen CCS es + sencillo otros que es obsoleto.


----------



## TRILO-BYTE (Jul 22, 2015)

no tienen mucho en comun CCS y hitech C
ccs es sencillo por que tiene funciones inventadas que facilitan la programacion 

mencionare unas de esas 

XFER();
toggle_pin();
#use rs232
printf(putc_lcd,"");

etc.


----------



## Berto75 (Jul 22, 2015)

Iventadas a que te refieres ¿mas numero de ellas respepto a la hora de tratar con micros? inventar funciones tambien lo puedes hacer tu.


----------



## TRILO-BYTE (Jul 22, 2015)

si y no
inventadas en el sentido
que hay cosas que no deberian

como es el caso de *printf(lcd_putc,"algo ");*
no es valido en el lenguaje se si se tratase de algo asi deberia ser
*sprintf(cadena,"algo ");* 
y hace que la cadena se valla escribiendo en la lcd

xfer(); tambien es una instruccion inventada segun CCS pude trabajar a software o a hardware

get_adc(); no se sabe como se configuraron los registros del micro para leer el ADC

hay muchas incongruencias no se parece en nada al HITECH C pero eso no indica que CCS sea malo

no lo es simplemente es distinto que si es posible hacer una programacion estandar si se puede pero hay que hacer mas cosas


----------



## Berto75 (Jul 23, 2015)

Yo e observado que realizar un
printf(lcd_putc,"ESCRIBE");//iden *
       lcd_putc("ESCRIBE: ");//iden * dan el mismo resultado
A todo esto donde podria descargar un diccionario-glosario que me describa el proceso de cada funcion
interna de CCS (No me interesa otro libro de C hablando de operandos, sentencias y ejemplos)
Solo significado de cada funcion (ejemplo get_adc(): descripcion)
Esto me lo da el propio compilador. El problema es que esta en ingles y siempre tengo que tratar con el traductor.


----------



## TRILO-BYTE (Jul 23, 2015)

pero no se por que todos en este foro quieren las cosas peladitas y en la boca

no se trata de eso es *ESTUDIAR y MUCHO*

el mismo CCS trae un INDEX con muchos EJEMPLOS

obviamente en INGLES!!

es como le acabo de decir a otro colega yo programe un freescale kwistick donde la documentacion estaba 100% en ingles y en RUSO 

si hay libros en español pero son cosas facilitas como el 18f84 en C para prender un led y un rele

pero si quieres hacer algo mas serio es cada vez mas dificil


----------



## pandacba (Jul 23, 2015)

AlberertO dijo:


> . El problema es que esta en ingles y siempre tengo que tratar con el traductor.


Si quieres dedicarte a la programación y electrónica no lo lograras sin aprender inglés, las obras más importantes estan en ese idiome, de echo los temrinos del lenguaje estan en inglés y por ende la mayor información estan en ese idioma, muchos de nosotos aprndimos electrónica en manuales y libros donde todo estaba en inglés, no había posibilidad de conseguir prácticametne nada en esañol, y tampoco había computadoras ni traductores y sin embargo aprendimos y muy bien.....
Cada vez que compilas y sucede un error este siemrpe estara en inglés, o aprendes o renuncias...


----------



## miglo (Jul 23, 2015)

AlberertO dijo:


> Yo e observado que realizar un
> printf(lcd_putc,"ESCRIBE");//iden *
> lcd_putc("ESCRIBE: ");//iden * dan el mismo resultado
> A todo esto donde podria descargar un diccionario-glosario que me describa el proceso de cada funcion
> ...



Esta claro que yo no soy el mas indicado para explicar cosas de ccs, creo que con paciencia poco a poco iras comprendiendo, y ya te digo que hay tela que aprender, pero mira por ejemplo lo que lo que tu as puesto como ejemplo: get_adc(); pues si lees un poquito, como dice trilo-byte, sabras que adc se refiere a los pines de conversor analogico-digital, si a esto le añades get, que traducido quiere decir obtener, pues entendemos que en determinado pin podemos obtener un valor analogico de algun componente, ejemplo: potenciometro, para que con las funciones especificas podamos hacer cosas.

Con respecto a printf(lcd_puct,"ESCRIBE"); y lcd_putc("ESCRIBE: "); aunque en este caso hacen lo mismo en el caso de printf se usa para poner variables, en lcd_puct(); no te deja, ejemplo:

variable   int A=5; 
printf(lcd_putc"Cantidad:%2.0d",A);


----------



## TRILO-BYTE (Jul 23, 2015)

pero es lo que digo CCS invento eso esconde la configuracion de registros
por eso digo que no es bueno compararlo con el hitech C o C18


----------



## Berto75 (Jul 24, 2015)

Respecto al tema del INGLES que hablais sois (-). Si sois electronicos buscar a JoseMaria Angulo a mi me gustaba su manera de esplicar las cosas era muy concreto TODO EN CASTELLANO respecto a micros solo le vi ediciones del 8086 y 8085 este ultimo es el que trate le escribia nemonicos mediante EDIT (creo que asi se llamaba) pero veo que todo a cambiado mucho.
Empiezo a estar mas agusto con CCS me empeño en no querer estudiar ingles a pesar de sus consecuencias
Solucion: http://www.spanishdict.com/translation.
Familiarizarse e idear cuenta mas que el ingles yo solo se el significado de IF,FOR,WHILE y demas.
Supongo que es precipitado pedir un glosario de las funciones de C estas pueden ser indefinidas, ya que dependen de el proyecto que estes elavorando en concreto.


----------



## TRILO-BYTE (Jul 24, 2015)

no confundir que C es infinito no lo es tiene instrucciones basicas, hay que saber usar el preprosesador
que son las directivas propias de un compilador

deseguro todos conocen esta directiva
*#include*
hay otras como son:
#pragma
#if
#ifndef
#elseif
#define

entre otras.

las funciones como gets(); , printf(); etc.
se pueden ver como fueron escritas por sus librerias pueden abrir una libreria y ver como estan constituidas instruccion a instruccion 
ejemplo:
stdlib.h , conio.h , stdout.h ,iostream.h ,etc.

pero!

lo que hace CCS es que hiso funciones como get_adc(); donde uno no tiene idea como se construyo 
bueno como esta construida esta funcion ,como se dio de alta el ADC , ¿que regsitros movio el compilador?
eso es lo que hace poco estandar a CCS.

respecto al ingles es basico como digo y no me canso de repetir se debe estudiar


----------



## Berto75 (Jul 25, 2015)

Yo lo que me refiero es que para lo que estoy haciendo solo debo introducirme en el codigo actual
#pragma
#if
#ifndef
#elseif
#define
Ni las conozco. Ni se para que podrian servirme ahora mismo
#bit LADRA=portc.0 //es lo mas parecido en lo que estoy haciendo
Yo cuando escribo codigo me atasco mas por falta de deduccion e ideas, aunque si a veces tambien suele ser el ingles. Yo tambien soy cabezon como tu TRILO e insisto que es mas ganar experiencia a vase de escribir codigo.


----------



## TRILO-BYTE (Jul 25, 2015)

es lo que yo decia esas instrucciones del simbolo # 

son las del preprosesador muchos libros de C dice para que sirven pero yo tambien cometi el pecado de saltarme eso e ir directo a copiar algoritmos de C.

eso lo descubri cuando vi que era posible hacer librerias genericas

ejemplo:

libreria para controlar un termopar ,LCD , calendario tiempo real ,etc.

las encontraba aveces para un AVR ,pic12f , pic32 ,arduino ,etc.

y algunos autores ponian directivas del preprosesador para que pudieran jalar sus librerias en CCS ,C18 ,XC8 ,avrstudio ,mikroC ,etc.

ahi vi que era importante


----------



## Berto75 (Jul 25, 2015)

Gracias por la historia TRILO pero ahora CCS y Proteus ya son un reto para my y no quiero mas. Solo mire el Hi-Tech por encima.

Saludos


----------



## TRILO-BYTE (Jul 25, 2015)

Es que hay cosas sobrevaluadas el pic16f84 ,18f4550, asm y hitech c

Pero en la vida real hay mas que eso mucho mas existen micros poderosos y economicos 
Solo que no hay que dejarse con lo que taringa nos dice y es interesante platicar con un ingeniero o afi ionado que usa mas para sus proyectos


----------



## george.manson.69 (Jul 29, 2015)

AlberertO dijo:


> Gracias por la historia TRILO pero ahora CCS y Proteus ya son un reto para my y no quiero mas. Solo mire el Hi-Tech por encima.
> 
> Saludos



Yo te recomiendo que bajes MPLAB X, y el compilador XC8 en la pagina de Microchip.com,
¿Porque?, ya que actualmente hay mucha información de como empezar a programar microcontroladores de Microchip usando MPLAB X y XC8 asi de simple, en verdad CCS es poderoso en cuestión de sacar tus proyectos mas rapido, pero no aprendes a desarrollarte al 99% , si no eres aficionado y solo quieres hacer el proyecto esta bien el CCS, pero si quieres ya involucrarte mas afondo en proyectos complejos, entonces ve por MPLAB X y XC8.

Yo por lo personal, conozco la mayoría de los microcontroladores en el mercado, cuando hago proyectos me baso en la complejidad del proyecto, si es fácil, uso un micro simple (PIC, AVR, STM8, etc) pero si es algo complejo y requiere precisión me voy por los ARM CORTEX M3 o M4 (STM, NXP, FREESCALE, TEXAS INSTRUMENTS).

La complejidad del proyecto se basa en los requerimientos necesarios para llevar acabo la solución del problema.

Ejemplo:

"Se requiere un dispositivo que mida con precisión la altura de una prensa hidraulica"
Nivel de complejidad Medio, me voy por un microcontrolador de Microchip un DSPIC, lo programare con MPLAB X y XC16. 

"Se requiere una pantalla GLCD que realice muestreos de Temperatura y me lo guarde un micro SD, y tenga la capacidad de enviar datos por la RED"
Nivel de Complejidad ALTO, se requiere un microcontrolador que opere a mucha frecuencia y memoria, me ire con ARM CORTEX M3 ya que puede operar hasta 100Mhz, lo programare con KEIL UVISION y GCC como compilador.

¡Saludos!


----------



## Berto75 (Nov 3, 2015)

```
CCS es poderoso en cuestión de sacar tus proyectos mas rapido, pero no aprendes a desarrollarte al 99% , si no eres aficionado y solo quieres hacer el proyecto esta bien el CCS, pero si quieres ya involucrarte mas afondo en proyectos complejos, entonces ve por MPLAB X y XC8.
```
LLevo ya unos 5 meses con ccs a este se le puede cargar MPLAB Solo tengo entendido que es una maquina virtual no se ahora paro en mis dos primeros proyectos no importo que no estuviese instalada Ahora quiero simular la amortiguacion que hace un vehiculo en curvas contrapareltadas que vi en un documental va de esto:
Si la curva es a la icquierda Los amortiguadores hidrahulicos de la icquierda vajan y los de la derecha suben para mayor comodidad del conductor
Utilizar un micro central que actue de giroscopio y 4 uno por cada rueda es esagerado pero lo hago para practicar con interrupciones y spi
Soy aficionado Hay gente que les gusta hacer sudokus o sopas de letras pero esto para mi es mas entretenido Que haya mas informacion en XC8 Esta bien En CCS Tambien ocurre hay un monton pero difusa y sin llegar a ser demasiado concreta
Ahora mismo e estado vuscando paginas que comenten las aplicaiones que puedes utilizar cuando creas el wizar Solo e conseguido sobre el timer y al añadir el spi como aplicacion en este proyecto me a hecho lo siguiente
//Se me enseño a declarar al maestro de la siguiente forma:
setup_spi(spi_master | spi_l_to_h | spi_clk_div_16); 
//pero el compilador marca el estatus a si
#USE SPI (MASTER, SPI1, MODE=0, BITS=8, STREAM=SPI_1)
//Lo unico que tienen en comun es que contienen instrucciones del cual no se su implicacion
¿Hay algun sitio donde vajar documentacion de como configurar las aplicaciones del wizar y te enseñe a moldearlas segun lo que quieras hacer?
No entiendo a que se hace referencia escribir un SP1 a 4 Luego al parecer BITS podria ser igual a 15 ¿Esto para que es para poder pasar un int16 al otro micro?


----------



## george.manson.69 (Abr 4, 2017)

Hola buen dia,

Comparto un manual incompleto pero tiene algunas ideas del cual podria venir util a alguien,


Saludos!


----------



## savad (Abr 6, 2017)

Gracias por tu aportación, yo siempre habia programado los pics usando assembler y me empiezo a meter en C para pics. Me gusto el compilador PWC de CCS (Custom Computer Services) ... facil de usar y configurar, ádemas soporta casi todos los pics cosa que el mikroC no lo hace ...por ejemplo el antiguo, barato y muy útil PIC16F54, y el substituto más moderno PIC16F18855 ...

Ademas trabaja muy bien en mi XP3-Pro, que es la que uso para el lab.

Hace tiempo baje el manual del COMPILADOR PCW DE CCS (pdf) adjunto y me ha servido bastante en 
estos 2 dias que he empesado a usar este compilador.


----------



## savad (Abr 7, 2017)

Version 5 trae un generador de diagrama de flujo. No se de las versiones anteriores porque con *é*sta versi*ó*n es con la que me estoy iniciando, que aunque no es el mejor, te saca del apuro de generar tu diagrama.

A prop*ós*ito de ello y ademas de MS-visio, ¿Que software recomiendan para ello?


----------

