Haz una pregunta
  Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

06/05/2010 #41


Respuesta: tutorial y manejo de proton IDE
hola mecatrodatos, he estado muy pendiente del tutorial y la verdad muy interesante, sabes bastante del tema. Espero me puedas ayudar. Estoy trabajando en un proyecto que es convertir un nivel de burbuja a digital, es decir, digitalizar un nivel. ya lo tengo listo y funcionando con proton, pero ahora, necesito hacerlo en CCS. Ojala me colabores como lo haces con los otros participantes, cuando lo leas me respondes algo para enviarte el codigo q tengoy asi saber en que me puedes ayudar. Gracias.
08/05/2010 #42

Avatar de mecatrodatos

Respuesta: tutorial y manejo de proton IDE
Que tal mira sube lo que has hecho y vere como te puedo ayudar.
08/05/2010 #43


Respuesta: tutorial y manejo de proton IDE
Hola mecatrodatos, gracias x la atencion prestada. A continuacion subo el codigo en proton que deseo me ayudes a pasar a CCS.

Código PHP:
Device 18F4523
Declare Xtal 20
Config_Start
   OSC 
HS HS oscillator
   PWRT 
OFF PWRT disabled
   BOREN 
OFF Brown-out Reset disabled in hardware and software
   WDT 
OFF WDT disabled (control is placed on the SWDTEN bit)
   
MCLRE OFF RE3 input pin enabledMCLR disabled
   LVP 
OFF Disabled
   Debug 
OFF Background debugger disabledRB6 and RB7 configured as general purpose I/O pins
Config_End

                                                                     
'ADCON2.7 = 1
PortB_Pullups = 1
Declare Adin_Res 12      ' 
10-bit result required
Declare Adin_Tad 32_FOSC     ' Set the ADC's clock source
Declare Adin_Stime 50       ' Allow 50us sample time

Declare LCD_Type 0          ' 
Type of LCD Used is Alpha
Declare LCD_DTPin PORTD.4   ' The control bits B4,B5,B6,B7
Declare LCD_RSPin PORTD.2  ' 
RS pin on B2
Declare LCD_ENPin PORTD.3   ' E pin on B3
Declare LCD_Interface 4     ' 
Interface method is 4 bit


  CCP1_Pin 
PORTC.2   
   CCP2_Pin 
PORTC.1   
Dim ADC_Loops 
As Word
Dim Temp 
As Word
Dim port 
As Byte
Dim incremento 
As Float
 Dim      ADC_Result1   
As Word
 Dim      ADC_Result3   
As Word
ADCON1 
= %11001011          ' Set all to analogue inputs (PORTA)
TRISA = $FF ' 
Declare porta as all inputs
 TRISB 
$FF
DelayMS 150

 
  TRISD.0
=0
  PORTD.0
=0

Dim Result1 
As Float
Dim Result3 
As Float
 Dim      ADC_Total1    
As Float
  Dim      ADC_Total3    
As Float
Dim Last_Result1 
As Float
Dim Last_Result3 
As Float
 
 Dim ax 
As Float
 Dim az 
As Float
 Dim inclina 
As Float 
Dim inclinamm 
As Float 
Dim inclinammPf 
As Float
Dim diferencia 
As Word

Dim mp1 
As Byte
Dim brillo 
As Byte
 incremento
=0.1
 ADC_Result1
=0
  ADC_Result3
=0
  brillo
=0
  inclinammPf 
=0
  
ADC_Loops 
=800
Print $FE,1
 mp1
=0
Print $FE,$40,$07,$05,$07,$00,$00,$00,$00,$00 ' Custom character for Degree
  


MenuP:
 incremento=0.1
     '
PORTd.0 =0
 
Print $FE,1
  
Print At 11"Menu P"
 
  
  
If mp1=1 Then
  
Print At 21"Contrast"
  
End If
  If 
mp1=2 Then
   
Print At 21"Pos. F"
       
End If
       
         If 
mp1=3   Then
   
Print At 21"Inc A"
       
End If
       
       If 
PORTB=254 Then
            
If mp1>1 Then
            mp1
=mp1-1
           
            
Else
            
            
mp1=3
            End 
If
             
DelayMS 600
       End 
If
       
       If 
PORTB=251 Then
              
If mp1<3 Then
            mp1
=mp1+1
           
            
Else
           
            
mp1=1
            End 
If
             
DelayMS 600
       End 
If
       
       
         If 
PORTB=253 Then
              
If mp1=1 Then
               DelayMS 200
            
GoTo menubrillo
           
             End 
If
              If 
mp1=2 Then
            DelayMS 200
            
GoTo menuPosfinal
            
             End 
If
           
            If 
mp1=3 Then
            DelayMS 200
            
GoTo menuPosActual
            
             End 
If
              
       
End If
       
     
DelayMS 50
     
GoTo MenuP


menubrillo
:

Print 
$FE,1
   
Print At 11"C.Contraste"
        
Print At 2,1Dec brillo
        
         
If PORTB=254 Then
            
If brillo>1 Then
            brillo
=brillo-3
           
            
Else
            
            
brillo=0
            End 
If
             
DelayMS 400
       End 
If
       
       If 
PORTB=251 Then
              
If brillo<30 Then
            brillo
=brillo+3
           
            
Else
           
            
brillo=30
            End 
If
             
DelayMS 400
       End 
If
         
HPWM 1,brillo,1000
            DelayMS 100
            
           
If PORTB=253 Then
            mp1
=0
            DelayMS 100
           
GoTo MenuP
           End 
If
           
         
            GoTo 
menubrillo

menuPosfinal
:
        
        
      If 
PORTB=254 Then
            
If inclinammPf >-88.8889 Then
            inclinammPf
=inclinammPf-incremento
              
            
Else
            
            
inclinammPf=-88.8889 
            End 
If
             
DelayMS 100
       End 
If
       
       If 
PORTB=251 Then
              
If inclinammPf 1600 Then
            inclinammPf
=inclinammPf+incremento
           
            
Else
           
            
inclinammPf=1600
            End 
If
             
DelayMS 100
       End 
If
              
              
        
' HPWM 2,inclinammPf,1000
            DelayMS 100
            
           If PORTB=253 Then
            mp1=0
            DelayMS 100
            GoTo MenuP
           End If
           
             If PORTB=250 Then
                If incremento < 100 Then
                incremento=incremento *10
                DelayMS 300
                    Else
                    incremento=0.1
                     DelayMS 300
                    End If
           End If
           
            Print $FE,1
   Print At 1, 1, "Ingr Pos"
     Print At 2, 1, Dec1  inclinammPf, " Mils"      
           
           
      GoTo menuPosfinal
menuPosActual:

 '
GoTo menup

 ADC_Total1 
' Clear summing register
  ADC_Total3 = 0 
  ' 
Loop for a pre-determined number of times
  
For Temp 1 To ADC_Loops
    ADC_Result1 
ADIn 1      ' Grab a new ADC value
  
    ADC_Total1 = ADC_Total1 + ADC_Result1 ' 
Sum it to the total register
    DelayUS 2                         
' Allow internal capacitors to discharge
    
    ADC_Result3 = ADIn 3      ' 
Grab a new ADC value
     ADC_Total3 
ADC_Total3 ADC_Result3 ' Sum it to the total register
    DelayUS 2     
  Next Temp
 
  ' 
Determin the average of all the equations
  ADC_Result1 
ADC_Total1 ADC_Loops
    ADC_Result3 
ADC_Total3 ADC_Loops

 

Result1 
ADC_Result1 *( 5.071023)            ' Scale it to volts
Result3 = ADC_Result3 *( 5.07/ 1023)       

 ax= (Result1 - 0.03)/0.8
   az= (Result3 - 0.03)/0.8

  inclina= ATan (ax/az)
  inclina=inclina * 57.2957795 *4.20023
  inclina= 232.666 -  inclina
    
 If inclina>-7 And inclina <92 Then   
 
     If inclina >= 0  Then
       inclina=inclina
       
       inclinamm=inclina*17.7778
       
     Else
        inclina=inclina*1.506
         inclinamm=inclina*17.7778
     End If

If Last_Result1 <>  inclina Then         ' 
Check if value has changed
   
' Print At 1, 1, Dec2  inclina,0, " "   ' If it hasdisplay new data
      
Print At 11Dec1  inclinamm," mils "   ' If it has, display new data
       Print At 2, 1, Dec1 inclinammPf," mils "
    Last_Result1 = inclina             ' 
and update last value
EndIf
 
 Else
  Print 
At 11"fuera de rang" 
  
End If
 
 
'If Last_Result3  <> az Then         ' Check if value has changed
  
'  Print At 2, 1, Dec4 az, " Z"   ' If it hasdisplay new data
  
'  Last_Result3 = az             ' and update last value
'EndIf

 If PORTB=253 Then
            mp1=0
            DelayMS 50
           GoTo MenuP
           End If
 
 diferencia=  inclinammPf -inclinamm
 
 If diferencia =0  Then
 HPWM 2,255,1000
 Else
 HPWM 2,0,1000
 End If
 
GoTo menuPosActual 
09/05/2010 #44


Respuesta: tutorial y manejo de proton IDE
Hola que tal.
Voy a comprar el PIC16F628A en la tienda Steren y segun en la descripcion de esa tienda (http://www.steren.com.mx/catalogo/in...PIC16F628A-I/P) dice que el reloj interno de este pic corre a 20 MHz ¿Es correcto esto?
Ademas, si uso el PROTON IDE tendría que declarar XTAL = 20 si voy a usar el reloj interno o solo es necesario cuando se usa un reloj externo ?

gracias y saludos.
22/07/2010 #45


Respuesta: tutorial y manejo de proton IDE
Gracias mecatrodatos por estos tutoriales, el mundo necesita gente asi
13/08/2010 #46


Respuesta: tutorial y manejo de proton IDE
Muy buena informacion gracias por su ayuda
31/08/2010 #47


Respuesta: tutorial y manejo de proton IDE
Muy buena toda esta información.
Gracias!!!
03/09/2010 #48

Avatar de mecatrodatos

Respuesta: tutorial y manejo de proton IDE
Gracias por los comentarios.

Bien amigos he terminado el tutorial lo subiré cuando arregle el computador y pase algunos artículos a PDF. Esta hasta la comunicación USB HID, paciencia por favor.
03/09/2010 #49


Respuesta: tutorial y manejo de proton IDE
Hola muchachos...
Me podrían ayudar con el LCD Chr Generator...tenía la versión 2.0.0.5 del Proton IDE pero a la hora de correr el generador de caractéres me salía un error de ActiveX q no lo dejaba ejecutar y ya no sé como arreglarlo. Tengo Windows 7 y actualmente el Proton IDE 1.0.0.1.

Gracias!!
03/09/2010 #50

Avatar de mecatrodatos

Respuesta: tutorial y manejo de proton IDE
La versión de proton que tienes es la de prueba o es full puesto que en la carpeta de plugins esta incorporado el GLCD, LCD CHR Genrator, Mister E E-Z SPBRG Calculator, calculadora, Serial Communicator,y el EasyHID Wizard.

En el caso en que no los tengas busca en la red y adjuntalos en la carpeta de PLugin de tu versión de proton hay versiones libres de estas ayudas o ubica el proton portable.
03/09/2010 #51


Respuesta: tutorial y manejo de proton IDE
Ya los puse en la carpeta de plugins y nada.. :(
Voy a tratar de bajar otra versión...pero me late q es este w7 el q molesta :s
04/09/2010 #52

Avatar de mecatrodatos

Respuesta: tutorial y manejo de proton IDE
Ubica el proton portable de 32 bits es versión USB y viene con todo lo almacenas en tu memoria y corre en cualquier equipo , es lo mismo que el proteus portable , el ccs compiler y otros mas, te correrán bien en Windows 7.
09/09/2010 #53


Respuesta: tutorial y manejo de proton IDE
Hola... Ya lo he buscado y nada :s

Chicos a lo mejor alguno me pueda ayudar con programita que estoy haciendo. Consiste en mostrar un mensaje en movimiento en una LCD (de derecha a izquierda), el problem es que con un mensaje mayor a 16 caractéres pues este se queda corto y por ende no se muestra toda la información. Este prog lo hice en Assembler y sirvió pero no me dá con Basic :s

Este es el código:

Código:
DEVICE 16F877A

XTAL = 4

'CONFIGURACIÓN LCD:

LCD_DTPIN = PORTD.4        'Usado para interface de 4 líneas (líneas de datos) y deben ser conectadas  desde RD4 hasta RD7
LCD_RSPIN = PORTC.4       'RS al pin RB4
LCD_ENPIN = PORTC.6       'E al pin RB6
LCD_INTERFACE = 4         'Serán utilizadas 4 líneas de datos
lcd_lines = 2             'LCD de 2 líneas
LCD_TYPE = 0              'Indica que el tipo de LCD es numérica
ALL_DIGITAL = TRUE

dim P AS byte                'P = posición del dato
dim L as byte             'L = línea donde se úbica el dato

INICIO:

L = 1                     'Se sitúa el cursor en la linea 1 de la LCD
FOR P = 16 TO 1 step -1   'Este ciclo permite el moviento de derecha a izquierda, por eso se va dedrementadndo un paso
cls                       'Limpiar LCD
CURSOR L,P                'Se sitúa el cursor en las coordenadas L,P
PRINT "Electronica y Telecomunicaciones" 
DELAYMS 100
NEXT                      'Regresar al ciclo For
GOTO INICIO
13/09/2010 #54


Respuesta: tutorial y manejo de proton IDE
Les adjunto un manual super resumido pero bueno pa aprender , un ejercicio
y en esta direccion

http://www.unrobotica.com/usbcon.htm

como crear un control HID con el 18f4550
Archivos Adjuntos
Tipo de Archivo: zip ejercicio.zip (21,3 KB (Kilobytes), 406 visitas)
Tipo de Archivo: zip manual.zip (771,7 KB (Kilobytes), 571 visitas)
13/09/2010 #55

Avatar de mecatrodatos

Respuesta: tutorial y manejo de proton IDE
Cordial saludo mi amiga tata con lo hecho por ti te doy la idea para el funcionamiento de desplazamiento de mensaje según tu requerimiento te recomiendo realizarlo de esta manera por otro lado recuerda que el valor del mensaje se justifica con for si por ejemplo deseas desplazar "foros de electrónica ", deberás contar las letras y espacios es decir en este caso son 20 caracteres y se colocaría For index: 20 to 0, por otro lado coloca siempre el conexionado en un solo puerto o combinado con el Puerto E , yo utilizo en B para el 16f877A y asi utizar los beneficios de los puertos restantes, no pude contestar antes ya que estoy muy ocupado con la universidad :

Código:
Device 16F877A

XTAL = 4

'CONFIGURACIÓN LCD:

LCD_DTPIN = PORTD.4        'Usado para interface de 4 líneas (líneas de datos) y deben ser conectadas  desde RD4 hasta RD7
LCD_RSPIN = PORTC.4       'RS al pin RB4
LCD_ENPIN = PORTC.6       'E al pin RB6
LCD_INTERFACE = 4         'Serán utilizadas 4 líneas de datos
LCD_LINES = 2             'LCD de 2 líneas
LCD_TYPE = 0              'Indica que el tipo de LCD es numérica
ALL_DIGITAL = TRUE

Dim index As Byte
Symbol SCRRIGHT = 28
Main: 
Print $fe,1
Print At 1,1, "Electronica y Telecomunicaciones" 
DelayMS 2000

GoSub Scroll_Derecha
DelayMS 1000
GoTo Main

Scroll_Derecha:
For index= 0 To 32            
Print $FE,SCRRIGHT
DelayMS 300
Next
Return
muchas gracias amigo Luis_speed por el aporte y bienvenido al foro
Archivos Adjuntos
Tipo de Archivo: rar desplazamiento.rar (5,9 KB (Kilobytes), 378 visitas)
13/09/2010 #56


Respuesta: tutorial y manejo de proton IDE
Muchas gracias gracias Mecatrodatos!!!

Aún me falta estudiar más el Basic pq en la U aprendimos fue Ass jeje.. y hay cosas q me enredan un poquito.

Gracias
16/10/2010 #57


Respuesta: tutorial y manejo de proton IDE
hola como estan? es para ver quien me hace el favor de prestarme el instalador de pronton quiero aprender en ese lenguaje
16/10/2010 #58


Respuesta: tutorial y manejo de proton IDE
Holaaa ... creo no se puede adjuntar el instalador de Proton por aquí pq el tamaño excede lo permitído pero lo puedes ubicar en internet, te recomiendo Taringa.
17/10/2010 #59

Avatar de atricio

Respuesta: tutorial y manejo de proton IDE
hola amigos como estan un favor alguien sabe como usar el bootloader de los micros 18f2550 y el 18f4550 en PROTON IDE he leido un poco sobre esto y segun mire se puede cargar al micro por esta herramienta un nuevo programa sin necesidad de un grabador es verdad eso o no????? les agradezco la ayuda desde ya muchas gracias
17/10/2010 #60

Avatar de ByAxel

Respuesta: tutorial y manejo de proton IDE
atricio dijo: Ver Mensaje
hola amigos como estan un favor alguien sabe como usar el bootloader de los micros 18f2550 y el 18f4550 en PROTON IDE he leido un poco sobre esto y segun mire se puede cargar al micro por esta herramienta un nuevo programa sin necesidad de un grabador es verdad eso o no????? les agradezco la ayuda desde ya muchas gracias
Que tal.
Dos opciones...

> Usando el Loader del Proton IDE, pero este requiere un pequeño circuito que se conecta a puerto serie de la PC, también es usado para depurar el programa el circuito. Para eso requiere que se grabe un programa antes de hacerlo que se encuentra en la carpeta de instalación "C:\Program Files\ProtonIDE\MCLoader\LoaderHEX"; ahi verás todos los *.HEX para cada PIC.

> Usando el Bootloader de Microchip, los programas se graban directo al PIC18F2550/4550 por medio de su módulo USB; igualmente se requiere grabar antes con el firmware que hace el trabajo. Bootloader P18.

saludos.
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.