# Duda con el libro compilador c ccs y simulador proteus para microcontroladores pic



## microniano (Nov 17, 2009)

hola estoy leyendo el libro compilador c ccs y simulador proteus para microcontroladores pic y en ejemplo 1 del capitulo 3 muestra un ejemplo sencillo para trabajar con los puertos, en donde RB0 actua como entrada con un pulsador y RB1 como salida con un diodo, la idea es que la salida debe tener el mismo valor que la entrada al oprimirse el pulsador.Mi duda es que la entrada no esta alimentada con tension en el simulador proteus si no que conectado a tierra, por que? es un error de libro o se debe a otra razon? puede estar relacionado con la resistencia de pull-up??? por favor si alguien puede darme una mano se lo agradeceria soy nuevo con los pic y estoy aprendiendo de a poco y la verdad es que este simple ejemplo me dejo con esa duda, desde ya muchas gracias.En anexo una imagen del libro y el programa en c.


----------



## El nombre (Nov 18, 2009)

El puerto B tiene posibilidad de poner la resistencia por programación. Repasa ese punto.
Suerte


----------



## microniano (Nov 20, 2009)

Entiendo que se pueda programar las resistencias de pull-out, pero no me queda muy en claro como trabajan luego estas. Por lo que veo en la imagen, de alguna manera con la resistencia de pull-out puedo dar un valor alto a la entrada sin tener conectado tension? (como sucede en la entrada RB0?) esa parte me tiene confundido


----------



## Vick (Nov 20, 2009)

1. No es pull-out es *Pull-Up*.

2. Busca info de lo que es un resistor de pull-up (o pull-down) y entenderás como funcionan los del PIC...

Saludos.


----------



## microniano (Nov 20, 2009)

Ok, encontre la respuesta muchas gracias lo de pull-out es un error mio por confundir con una resistencia de mi profesion jejeje


----------



## Braulio (Nov 23, 2009)

La Resistencia Pull-up es una resistencia que va de conectada de Vcc a un pin de entrada en cualquier circuito integrado; lo que le da a la entrada un nivel alto por defecto y facilita el cambio a nivel bajo pues únicamente hace falta colocar un pulsador entre el pin de entrada y tierra. En el caso del puerto B de los PICs existe la posibilidad de habilitar una resistencia pull-up interna cuando este actúa como entrada; esto se hace modificando el bit /RBPU (Option.7)

Vcc-----Pull_Up----------Pulsador---------Tierra
aaaaaaaaaaaaaaaa|
aaaaaaaaaaaaaaaa|
aaaaaaaaaaaaPin_entrada


----------



## microniano (Nov 23, 2009)

Muchas gracias braulio!!! lo que a mi me costaba trabajo entender era como al conectar una entrada directamente a masa a traves de un pulsador podria darme un valor alto o bajo dependiendo de la posicion del pulsador sin que interactue Vdd en la conexion, en el libro no lo explica pero ahora me quedo claro


----------



## Braulio (Nov 24, 2009)

Me alegra que la duda esté aclarada. Muchos salu2.

Braulio


----------



## dcf.electronica (Ene 29, 2010)

Hola compañeros, actualmente me encuentro aprendiendo el lenguaje C, esoy utilizando ccs, pero en un programa que  tome el libro microcontroladores y ccs,  ejemplo (3) lo compilando me sale error, el programa es el siguiente:

realiza un menu de control mediante un pulsador, el programa deve mostrar un menu de tres funciones, mediante el pulsador se debe seleccionar uno de los 3 elementos y con otro ejecutar la funcion( en este4 caso encender un led)



#include <16F876.h>
#fuses XT,NOWDT,NOPROTECT,NOLVP
#use delay(clock= 4000000)        

#include <lcd.c>
#include <kbd.c>


void main() {
   char k; 
   int  x;

   lcd_init(); 
   kbd_init();
   port_b_pullups(TRUE); 

   lcd_putc("\fListo...\n");

   while (TRUE) {
      k=kbd_getc(); 
      x=k-48;                             //Conversión numérica
      if(k!=0){
        if(k=='*')  
          lcd_putc('\f'); 
        else
           lcd_putc(k);             //Imprime carácter
           delay_ms(500);
           printf(lcd_putc,"\f Car=%c",k); //Imprime carácter
           delay_ms(500);
           printf(lcd_putc,"\f Car=%u",k); //Imprime valor ASCII
           delay_ms(500);
           printf(lcd_putc,"\f Num=%u",x); //Imprime valor numérico
           delay_ms(500);
           lcd_putc("\fListo...\n");
      }
   }
}

y los errores son:

Clean: Deleting intermediary and output files.
Clean: Deleted file "F:\m\m.c.mcs".
Clean: Done.
Executing: "C:\Archivos de programa\PICC\Ccsc.exe" +FM "m.c" +DF +LN +T +A +M +Z +Y=9 +EA
*** Error 12 "C:\ARCHIV~1\PICC\drivers\lcd.c" Line 91(29,30): Undefined identifier  -- set_tris_d
*** Error 12 "C:\ARCHIV~1\PICC\drivers\lcd.c" Line 103(30,31): Undefined identifier  -- set_tris_d
*** Error 12 "C:\ARCHIV~1\PICC\drivers\lcd.c" Line 133(28,29): Undefined identifier  -- set_tris_d
*** Error 12 "C:\ARCHIV~1\PICC\drivers\kbd.c" Line 106(49,50): Undefined identifier  -- set_tris_d
*** Error 12 "C:\ARCHIV~1\PICC\drivers\kbd.c" Line 109(49,50): Undefined identifier  -- set_tris_d
*** Error 12 "C:\ARCHIV~1\PICC\drivers\kbd.c" Line 112(49,50): Undefined identifier  -- set_tris_d
*** Error 12 "C:\ARCHIV~1\PICC\drivers\kbd.c" Line 143(25,26): Undefined identifier  -- set_tris_d
      7 Errors,  0 Warnings.
Halting build on first failure as requested.
BUILD FAILED: Fri Jan 29 12:02:11 2010


----------



## COSMICO (Ene 29, 2010)

dcf.electronica
Parece que estas usando MPLAB para depurar el codigo
si asi es debes agregar los divice y drive que se encuentran en la carpeta del CCS
y asi no te saldra el error..
Mira el tema en microcontroladores"dispositivos controlados por USB"
ahy encontraras un tuto de como hacer esto..
"PROYECTOS CON PIC Y SIMULACION EN PROTEUS"
suerte.


----------



## ilcapo (Jul 2, 2012)

hola ya que estan estudiando del libro: Compilador C CCS e Simulador Proteus para Microcontroladores Pic

tengo una duda .. alguien conoce lo que dice la pagina secreta 43 !! ????  porque he descargado de varios lados y en todas le falta la pagina 43 !!!!! jajajaja 

saludos !


----------



## mnicolau (Jul 2, 2012)

Hola, en la pag 43 muestra ejemplos de distintas directivas:



Saludos


----------



## ilcapo (Jul 3, 2012)

mmmmm me parece que ese es el manual de CCS o cual libro es ?

ahi te adjunto la tapa del libro que te comentaba ( es CCS + Proteus) ....traté de adjuntar todo el libro pero es muy pesado para subirlo y no me deja, igual se puede encontrar facilmente por la web pero en todos los sitios de descarga le falta la pagina 43


----------



## mnicolau (Jul 3, 2012)

Claro, es ese... pero el que compré es la 2º edición así que capaz no coincidan las páginas.



Saludos


----------



## ilcapo (Jul 3, 2012)

mmmm a okas !  a lo mejor esta parecido  

te adjunto la pagina 42 y la 44 a ver si coincide la que falta


----------



## ilcapo (Jul 12, 2012)

hola nicolau ! pudiste ver si esta la hoja que falta en el libro ?? saludos!


----------



## jhonferd (Ene 1, 2013)

hola, pudiste encontrar la página 43 del libro compilador c ccs y simulador proteus para microcontroladores pic, si la pudiste encontrar por favor compartirmela...gracias... correo:
*[URL="https://www.forosdeelectronica.com/politicas.htm#2.3"]políticas@delforo.com[/URL]
*

*Como no cumplo las Políticas del Foro. Me editaron el mensaje.*​


----------



## ilcapo (Ene 9, 2013)

hola jhonferd al final  nunca pude encontrar  la pagina 43, descargue de varios lados el libro pero siempre faltaba esa pagina, y la edicion nueva no la encontré por ningun lado, seguramente la parte que falta del cuadro esta en la edicion nueva de ese libro pero en otra pagina, no justamente la 43, saludos !


----------

