Autor Tema: Ayuda con el PIC18F45K50  (Leído 2285 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado avefenix586

  • PIC10
  • *
  • Mensajes: 16
Ayuda con el PIC18F45K50
« en: 11 de Octubre de 2023, 18:57:22 »
Hola a todos, estoy probando un bootloader llamado TinyMultiBootloader con el PIC18F45K50 que se dice es la version mejorada y pulida del popular PIC18F4550 pero aun asi casi nadie lo quiere usar y prefiere seguir usando el antiguo PIC18F4550  :D, no hay casi nada de ese PIC en google o en youtube, ni ejemplos , ni tutoriales de como configurarlo apenas unos contados con los dedos de una mano, el caso es que he hecho en assembler (MPLAB v8.92) un simple programa de "Hola mundo" con unos leds , al probarlo en el proteus 8 este lo simula y se ve parpadeando los leds como se espera pero al llevarlo al circuito real en una board hecha para Pinguino no hace nada, la aplicación le envía el Hex al bootloader que lo recibe satisfactoriamente pero no funciona por mas cambios o modificaciones que le he hecho, no funcionan los PORts como salidas digitales, los leds conectados al PORTB no parpadean, las salidas no lanzan ceros y unos, alguien que a programado esos Pics18F45K50 podria observar que le esta faltando al código para habilitar los puertos B y D como salidas digitales?
 
Código: [Seleccionar]
        LIST    P = 18F45K50    ;PIC a utilizar
INCLUDE <P18F45K50.INC>

;Setup CONFIG1L
    CONFIG PLLSEL = PLL4X ;4x clock multiplier
    CONFIG CFGPLLEN = OFF ;PLL Disabled (firmware controlled)
    CONFIG CPUDIV = NOCLKDIV ;CPU uses system clock (no divide)
    CONFIG LS48MHZ = SYS24X4 ;System clock at 24 MHz, USB clock divider is set to 4
;Setup CONFIG1H
    CONFIG FOSC = INTOSCIO ;Internal oscillator
    CONFIG PCLKEN = ON ;Primary oscillator enabled
    CONFIG FCMEN = OFF ;Fail-Safe Clock Monitor disabled
    CONFIG IESO = OFF ;Oscillator Switchover mode disabled
;Setup CONFIG2L
;    CONFIG NPWRTEN = ON ;Power up timer enabled
    CONFIG BOREN = OFF ;BOR disabled in hardware (SBOREN is ignored)
CONFIG BORV = 190 ;BOR set to 1.9V nominal
; CONFIG NLPBOR = OFF ;Low-Power Brown-out Reset disabled
;Setup CONFIG2H
CONFIG WDTEN = OFF ;WDT disabled in hardware (SWDTEN ignored)
CONFIG WDTPS = 1            ;1:1
;Setup CONFIG3H
CONFIG CCP2MX = RC1 ;CCP2 input/output is multiplexed with RC1
CONFIG PBADEN = OFF ;PORTB<5:0> pins are configured as digital I/O on Reset
CONFIG T3CMX = RC0 ;T3CKI function is on RC0
CONFIG SDOMX = RB3 ;SDO function is on RB3
CONFIG MCLRE = OFF ;MCLR pin enabled RE3 input pin disabled
;Setup CONFIG4L
CONFIG STVREN = OFF ;Stack full/underflow will not cause Reset
CONFIG LVP = OFF         ;Single-Supply ICSP disabled
CONFIG ICPRT = OFF ;ICPORT disabled
CONFIG XINST = OFF ;Instruction set extension and Indexed Addressing mode disabled
CONFIG DEBUG = OFF ;Background debugger disabled, RB6 and RB7 configured as general purpose I/O pins
;Setup CONFIG5L
CONFIG CP0 = OFF ;Block 0 (000800-001FFFh) or (001000-001FFFh) is not code-protected
CONFIG CP1 = OFF ;Block 1 (002000-003FFFh) is not code-protected
CONFIG CP2 = OFF ;Block 2 is not code-protected
CONFIG CP3 = OFF ;Block 3 is not code-protected

;Setup CONFIG5H
CONFIG CPB = OFF ;Boot block is not code-protected
CONFIG CPD = OFF ;Data EEPROM is not code-protected
;Setup CONFIG6L
CONFIG WRT0 = OFF ;Block 0 (000800-001FFFh) or (001000-001FFFh) is not write-protected
CONFIG WRT1 = OFF ;Block 1 (002000-003FFFh) is not write-protected
CONFIG WRT2 = OFF ;Block 2 is not write-protected
CONFIG WRT3 = OFF ;Block 3 is not write-protected

;Setup CONFIG6H
CONFIG WRTC = OFF ;Configuration registers are not write-protected
CONFIG WRTB = OFF ;Boot block is not write-protected
CONFIG WRTD = OFF ;Data EEPROM id not write-protected
;Setup CONFIG7L
CONFIG EBTR0 = OFF ;Block 0 (000800-001FFFh) or (001000-001FFFh) is not protected from table reads executed in other blocks
CONFIG EBTR1 = OFF ;Block 1 (002000-003FFFh) is not protected from table reads executed in other blocks
CONFIG EBTR2 = OFF ;Block 2 is not protected from table reads executed in other blocks
CONFIG EBTR3 = OFF ;Block 3 is not protected from table reads executed in other blocks

;Setup CONFIG7H
CONFIG EBTRB = OFF ;Boot block (000000-0007FFh) or (000000-000FFFh) is not protected from table reads executed in other blocks

CBLOCK 0x20
     cnt1
     cnt2
       cnt3
ENDC

ORG       0x0000
goto init

;goto init2
;nop
;nop

;************ initial *******************
   init
  ;OSCCON = 0b01110000; // Oscilador Interno 16 MHz
movlw 0X70
        movwf OSCCON

  clrf TRISA
  clrf TRISB
  clrf TRISC
clrf TRISD
clrf TRISE

  bsf TRISC, 7 ; configure UART RX as input, not to collide with MAX232
; !! also any pins connected to Vdd or GND should be configured as inputs, or else ...

  clrf PORTA
 
  movlw d'255'
        movwf PORTB
clrf PORTC

movlw d'255'
        movwf PORTD
clrf PORTE
         

start     
movlw d'10'
        rcall Delay
   
movlw d'255'
        movwf PORTB
   
movlw d'10'
        rcall Delay
movlw d'0'
        movwf PORTB

bra start


Delay ;depends on W parameter  1..255
movwf cnt1
dl1
movlw d'10'
movwf cnt2
dl2
movlw d'10'
movwf cnt3
dl3
nop
decfsz cnt3
bra dl3
decfsz cnt2
bra dl2
decfsz cnt1
bra dl1
return


     END
   

Desconectado DominusDRR

  • PIC24H
  • ******
  • Mensajes: 1982
    • Sicoy
Re:Ayuda con el PIC18F45K50
« Respuesta #1 en: 11 de Octubre de 2023, 19:27:38 »
Hola a todos, estoy probando un bootloader llamado TinyMultiBootloader con el PIC18F45K50 que se dice es la version mejorada y pulida del popular PIC18F4550 pero aun asi casi nadie lo quiere usar y prefiere seguir usando el antiguo PIC18F4550  :D, no hay casi nada de ese PIC en google o en youtube, ni ejemplos , ni tutoriales de como configurarlo apenas unos contados con los dedos de una mano, el caso es que he hecho en assembler (MPLAB v8.92) un simple programa de "Hola mundo" con unos leds , al probarlo en el proteus 8 este lo simula y se ve parpadeando los leds como se espera pero al llevarlo al circuito real en una board hecha para Pinguino no hace nada, la aplicación le envía el Hex al bootloader que lo recibe satisfactoriamente pero no funciona por mas cambios o modificaciones que le he hecho, no funcionan los PORts como salidas digitales, los leds conectados al PORTB no parpadean, las salidas no lanzan ceros y unos, alguien que a programado esos Pics18F45K50 podria observar que le esta faltando al código para habilitar los puertos B y D como salidas digitales?
 
Código: [Seleccionar]
        LIST    P = 18F45K50    ;PIC a utilizar
INCLUDE <P18F45K50.INC>

;Setup CONFIG1L
    CONFIG PLLSEL = PLL4X ;4x clock multiplier
    CONFIG CFGPLLEN = OFF ;PLL Disabled (firmware controlled)
    CONFIG CPUDIV = NOCLKDIV ;CPU uses system clock (no divide)
    CONFIG LS48MHZ = SYS24X4 ;System clock at 24 MHz, USB clock divider is set to 4
;Setup CONFIG1H
    CONFIG FOSC = INTOSCIO ;Internal oscillator
    CONFIG PCLKEN = ON ;Primary oscillator enabled
    CONFIG FCMEN = OFF ;Fail-Safe Clock Monitor disabled
    CONFIG IESO = OFF ;Oscillator Switchover mode disabled
;Setup CONFIG2L
;    CONFIG NPWRTEN = ON ;Power up timer enabled
    CONFIG BOREN = OFF ;BOR disabled in hardware (SBOREN is ignored)
CONFIG BORV = 190 ;BOR set to 1.9V nominal
; CONFIG NLPBOR = OFF ;Low-Power Brown-out Reset disabled
;Setup CONFIG2H
CONFIG WDTEN = OFF ;WDT disabled in hardware (SWDTEN ignored)
CONFIG WDTPS = 1            ;1:1
;Setup CONFIG3H
CONFIG CCP2MX = RC1 ;CCP2 input/output is multiplexed with RC1
CONFIG PBADEN = OFF ;PORTB<5:0> pins are configured as digital I/O on Reset
CONFIG T3CMX = RC0 ;T3CKI function is on RC0
CONFIG SDOMX = RB3 ;SDO function is on RB3
CONFIG MCLRE = OFF ;MCLR pin enabled RE3 input pin disabled
;Setup CONFIG4L
CONFIG STVREN = OFF ;Stack full/underflow will not cause Reset
CONFIG LVP = OFF         ;Single-Supply ICSP disabled
CONFIG ICPRT = OFF ;ICPORT disabled
CONFIG XINST = OFF ;Instruction set extension and Indexed Addressing mode disabled
CONFIG DEBUG = OFF ;Background debugger disabled, RB6 and RB7 configured as general purpose I/O pins
;Setup CONFIG5L
CONFIG CP0 = OFF ;Block 0 (000800-001FFFh) or (001000-001FFFh) is not code-protected
CONFIG CP1 = OFF ;Block 1 (002000-003FFFh) is not code-protected
CONFIG CP2 = OFF ;Block 2 is not code-protected
CONFIG CP3 = OFF ;Block 3 is not code-protected

;Setup CONFIG5H
CONFIG CPB = OFF ;Boot block is not code-protected
CONFIG CPD = OFF ;Data EEPROM is not code-protected
;Setup CONFIG6L
CONFIG WRT0 = OFF ;Block 0 (000800-001FFFh) or (001000-001FFFh) is not write-protected
CONFIG WRT1 = OFF ;Block 1 (002000-003FFFh) is not write-protected
CONFIG WRT2 = OFF ;Block 2 is not write-protected
CONFIG WRT3 = OFF ;Block 3 is not write-protected

;Setup CONFIG6H
CONFIG WRTC = OFF ;Configuration registers are not write-protected
CONFIG WRTB = OFF ;Boot block is not write-protected
CONFIG WRTD = OFF ;Data EEPROM id not write-protected
;Setup CONFIG7L
CONFIG EBTR0 = OFF ;Block 0 (000800-001FFFh) or (001000-001FFFh) is not protected from table reads executed in other blocks
CONFIG EBTR1 = OFF ;Block 1 (002000-003FFFh) is not protected from table reads executed in other blocks
CONFIG EBTR2 = OFF ;Block 2 is not protected from table reads executed in other blocks
CONFIG EBTR3 = OFF ;Block 3 is not protected from table reads executed in other blocks

;Setup CONFIG7H
CONFIG EBTRB = OFF ;Boot block (000000-0007FFh) or (000000-000FFFh) is not protected from table reads executed in other blocks

CBLOCK 0x20
     cnt1
     cnt2
       cnt3
ENDC

ORG       0x0000
goto init

;goto init2
;nop
;nop

;************ initial *******************
   init
  ;OSCCON = 0b01110000; // Oscilador Interno 16 MHz
movlw 0X70
        movwf OSCCON

  clrf TRISA
  clrf TRISB
  clrf TRISC
clrf TRISD
clrf TRISE

  bsf TRISC, 7 ; configure UART RX as input, not to collide with MAX232
; !! also any pins connected to Vdd or GND should be configured as inputs, or else ...

  clrf PORTA
 
  movlw d'255'
        movwf PORTB
clrf PORTC

movlw d'255'
        movwf PORTD
clrf PORTE
         

start     
movlw d'10'
        rcall Delay
   
movlw d'255'
        movwf PORTB
   
movlw d'10'
        rcall Delay
movlw d'0'
        movwf PORTB

bra start


Delay ;depends on W parameter  1..255
movwf cnt1
dl1
movlw d'10'
movwf cnt2
dl2
movlw d'10'
movwf cnt3
dl3
nop
decfsz cnt3
bra dl3
decfsz cnt2
bra dl2
decfsz cnt1
bra dl1
return


     END


¿ANSELB y ANSELD están calibrados correctamente?
Tengo una idea algo difusa sobre MPLAB Harmony, XC32 con PIC32

Desconectado avefenix586

  • PIC10
  • *
  • Mensajes: 16
Re:Ayuda con el PIC18F45K50
« Respuesta #2 en: 11 de Octubre de 2023, 22:21:53 »
Gracias por responder, ese codigo al principio hacia que todos bits de los 5 puertos parpadearan, le fui quitando los demas puertos para quedarme solo con el PuertoB, ahora que mencionas los de el ANSELB  también lo agregue después, le puse  ANSELB = 0 con las instrucciones assembler Movlw 0x0  y movwf ANSELB , en el Proteus 8 no hace diferencia e igual trabaja con o sin esas instrucciones pero en la placa sigue sin funcionar , es como si el reloj quedara congelado totalmente a pesar de que esta configurado con el reloj interno del PIC a 16 MHz, en ejemplos con XC8 hacen el codigo blink mas sencillo sin casi configurar mas que 4 cosas y se ve que funciona en el video de youtube el parpadeo pero no puedo usar ese ejemplo en XC8 porque no es compatible con la aplicación del Tiny multibootloader en el que han hecho varios bootloader para varios Pics, al cargarle mi código HEX resultante sigue sin funcionar pero tampoco a alterado el funcionamiento del bootloader porque este sigue respondiendo a la aplicación cuando lo invoca, así que hay algún detalle mas que se me esta escapando para resolverlo, recuerdo que anteriormente con el PIC18F4550 programando en Microcode Studio no me activaban tampoco las salidas a digitales y seguían flotantes, estaba rompiéndome la cabeza hasta que lo programe en PiC CCS y wala recien ya pude activar las I/O de una forma mas sencilla que en Microcode.   

Desconectado DominusDRR

  • PIC24H
  • ******
  • Mensajes: 1982
    • Sicoy
Re:Ayuda con el PIC18F45K50
« Respuesta #3 en: 11 de Octubre de 2023, 22:58:33 »
Gracias por responder, ese codigo al principio hacia que todos bits de los 5 puertos parpadearan, le fui quitando los demas puertos para quedarme solo con el PuertoB, ahora que mencionas los de el ANSELB  también lo agregue después, le puse  ANSELB = 0 con las instrucciones assembler Movlw 0x0  y movwf ANSELB , en el Proteus 8 no hace diferencia e igual trabaja con o sin esas instrucciones pero en la placa sigue sin funcionar , es como si el reloj quedara congelado totalmente a pesar de que esta configurado con el reloj interno del PIC a 16 MHz, en ejemplos con XC8 hacen el codigo blink mas sencillo sin casi configurar mas que 4 cosas y se ve que funciona en el video de youtube el parpadeo pero no puedo usar ese ejemplo en XC8 porque no es compatible con la aplicación del Tiny multibootloader en el que han hecho varios bootloader para varios Pics, al cargarle mi código HEX resultante sigue sin funcionar pero tampoco a alterado el funcionamiento del bootloader porque este sigue respondiendo a la aplicación cuando lo invoca, así que hay algún detalle mas que se me esta escapando para resolverlo, recuerdo que anteriormente con el PIC18F4550 programando en Microcode Studio no me activaban tampoco las salidas a digitales y seguían flotantes, estaba rompiéndome la cabeza hasta que lo programe en PiC CCS y wala recien ya pude activar las I/O de una forma mas sencilla que en Microcode.

No recuerdo mucho estos microcontroladores, pero, ¿No debes cambiarte de banco antes de escribir algo en los registros OSCON, TRIS , PORT, etc?

También PORT, ocupas cuando deseas usarlos como entradas, y LAT como salidas



« Última modificación: 11 de Octubre de 2023, 23:12:50 por DominusDRR »
Tengo una idea algo difusa sobre MPLAB Harmony, XC32 con PIC32

Desconectado avefenix586

  • PIC10
  • *
  • Mensajes: 16
Re:Ayuda con el PIC18F45K50
« Respuesta #4 en: 12 de Octubre de 2023, 13:56:40 »
Si justamente estaba leyendo aquí en el foro sobre los misterios del PIC18 o algo así, donde dice que no se requiere cambiar de bancos porque todos los registros especiales están en el banco 15 y también agregue ahora esa instrucción que es movlb   .15 para cambiar al banco 15 pero aun así el programa persiste en no funcionar  :shock:, si que es un dolor de cabeza programar en assembler , yo no uso el assembler por eso me hago lios ,mas uso el Microcode o el Pic Simulator IDE y de vez en cuando el PIC CCS pero como mencione estaba poniendo a prueba un bootloader y este requiere que se le mande un Hex hecho en assembler de MPLAB v8.92 o MPLAB x v5.30 y no con el XC8 o el mismo CCS que colocan el programa en una posición de memoria  muy distante a la requerida por el Tiny bootloader que debe empezar en la 0x0004 y los otros la colocan en direcciones como la 0x200 y no hay como obligarles a que lo coloquen a partir de la 0x0004 porque la rechazan y no compilan sino todo estaria resuelto ya  :shock: :shock:
Si alguien quiere probar ese Bootloader creo que podría abrir un nuevo Post sobre ello y postear los firmware que he recopilado (no son mios pero son de uso libre) pero que no he testeado aun porque quise empezar con el PIC18F45K50
Código: [Seleccionar]
LIST    P = 18F45K50    ;PIC a utilizar
INCLUDE <P18F45K50.INC>

;Setup CONFIG1L
    CONFIG PLLSEL = PLL4X ;4x clock multiplier
    CONFIG CFGPLLEN = OFF ;PLL Disabled (firmware controlled)
    CONFIG CPUDIV = NOCLKDIV ;CPU uses system clock (no divide)
    CONFIG LS48MHZ = SYS24X4 ;System clock at 24 MHz, USB clock divider is set to 4
;Setup CONFIG1H
    CONFIG FOSC = INTOSCIO ;Internal oscillator
    CONFIG PCLKEN = ON ;Primary oscillator enabled
    CONFIG FCMEN = OFF ;Fail-Safe Clock Monitor disabled
    CONFIG IESO = OFF ;Oscillator Switchover mode disabled
;Setup CONFIG2L
;    CONFIG NPWRTEN = ON ;Power up timer enabled
    CONFIG BOREN = OFF ;BOR disabled in hardware (SBOREN is ignored)
CONFIG BORV = 190 ;BOR set to 1.9V nominal
; CONFIG NLPBOR = OFF ;Low-Power Brown-out Reset disabled
;Setup CONFIG2H
CONFIG WDTEN = OFF ;WDT disabled in hardware (SWDTEN ignored)
CONFIG WDTPS = 1            ;1:1
;Setup CONFIG3H
CONFIG CCP2MX = RC1 ;CCP2 input/output is multiplexed with RC1
CONFIG PBADEN = OFF ;PORTB<5:0> pins are configured as digital I/O on Reset
CONFIG T3CMX = RC0 ;T3CKI function is on RC0
CONFIG SDOMX = RB3 ;SDO function is on RB3
CONFIG MCLRE = OFF ;MCLR pin enabled RE3 input pin disabled
;Setup CONFIG4L
CONFIG STVREN = OFF ;Stack full/underflow will not cause Reset
CONFIG LVP = OFF ;Single-Supply ICSP disabled
CONFIG ICPRT = OFF ;ICPORT disabled
CONFIG XINST = OFF ;Instruction set extension and Indexed Addressing mode disabled
CONFIG DEBUG = OFF ;Background debugger disabled, RB6 and RB7 configured as general purpose I/O pins
;Setup CONFIG5L
CONFIG CP0 = OFF ;Block 0 (000800-001FFFh) or (001000-001FFFh) is not code-protected
CONFIG CP1 = OFF ;Block 1 (002000-003FFFh) is not code-protected
CONFIG CP2 = OFF ;Block 2 is not code-protected
CONFIG CP3 = OFF ;Block 3 is not code-protected

;Setup CONFIG5H
CONFIG CPB = OFF ;Boot block is not code-protected
CONFIG CPD = OFF ;Data EEPROM is not code-protected
;Setup CONFIG6L
CONFIG WRT0 = OFF ;Block 0 (000800-001FFFh) or (001000-001FFFh) is not write-protected
CONFIG WRT1 = OFF ;Block 1 (002000-003FFFh) is not write-protected
CONFIG WRT2 = OFF ;Block 2 is not write-protected
CONFIG WRT3 = OFF ;Block 3 is not write-protected

;Setup CONFIG6H
CONFIG WRTC = OFF ;Configuration registers are not write-protected
CONFIG WRTB = OFF ;Boot block is not write-protected
CONFIG WRTD = OFF ;Data EEPROM id not write-protected
;Setup CONFIG7L
CONFIG EBTR0 = OFF ;Block 0 (000800-001FFFh) or (001000-001FFFh) is not protected from table reads executed in other blocks
CONFIG EBTR1 = OFF ;Block 1 (002000-003FFFh) is not protected from table reads executed in other blocks
CONFIG EBTR2 = OFF ;Block 2 is not protected from table reads executed in other blocks
CONFIG EBTR3 = OFF ;Block 3 is not protected from table reads executed in other blocks

;Setup CONFIG7H
CONFIG EBTRB = OFF ;Boot block (000000-0007FFh) or (000000-000FFFh) is not protected from table reads executed in other blocks

CBLOCK 0x20
cnt1
cnt2
cnt3
ENDC

ORG       0x0000
goto init

;goto init2
nop
nop

;************ initial *******************
;ORG 0x0028
init
  ;OSCCON = 0b01110000; // Osilador Interno 16 MHz
bsf OSCCON,IRCF2
movlb .15 ;setup digital I/O
clrf ANSELC,BANKED
clrf ANSELA,BANKED
clrf ANSELB,BANKED
clrf ANSELC,BANKED
clrf ANSELD,BANKED


clrf TRISB

  clrf TRISA
 
  clrf TRISC
clrf TRISD
clrf TRISE

  bsf TRISC, 7 ; configure UART RX as input, not to collide with MAX232
; !! also any pins connected to Vdd or GND should be configured as inputs, or else ...

  clrf PORTA
 
  movlw d'255'
    movwf PORTB
clrf PORTC

movlw d'255'
    movwf PORTD
clrf PORTE
         

start     
movlw d'10'
    rcall Delay
    ;comf PORTA
movlw d'255'
    movwf PORTB
    ;comf PORTC
movlw d'10'
    rcall Delay
movlw d'0'
    movwf PORTB

bra start


Delay ;depends on W parameter  1..255
movwf cnt1
dl1
movlw d'50'
movwf cnt2
dl2
movlw d'50'
movwf cnt3
dl3
nop
decfsz cnt3
bra dl3
decfsz cnt2
bra dl2
decfsz cnt1
bra dl1
return




Desconectado avefenix586

  • PIC10
  • *
  • Mensajes: 16
Re:Ayuda con el PIC18F45K50
« Respuesta #5 en: 13 de Octubre de 2023, 01:46:22 »
Se me ocurrio esta vez probar grabar directamente el PIC18F45K50 directamente con el PICKIT 2 ya sin utilizar de intermediario la aplicacion del bootloader y ohh sorpresa la aplicacion de parpadeo de los leds funciona, el programa no tenia problemas sino que era el bootloader, con lo que se determina que hay algun conflicto en el bootloader por corregir u observar que esta impidiendo la configuracion de las entradas y salidas digitales o quizas tenga que ver con el clock o alguna configuracion extra , ahora tendre que revisar que problema puede tener ese bootloader.

Les comento que por si no lo sabian el PICkit2 mediante una actualizacion no oficial puede programar el PIC18F45K50 directamente entre otros PICs como el mismisimo PIC18F47F83 que es la version  dip de uno de los tantos modelos del curiosity nano y de una forma mas economica  :) :)
 

Desconectado Fer_TACA

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4154
Re:Ayuda con el PIC18F45K50
« Respuesta #6 en: 13 de Octubre de 2023, 07:12:38 »

Les comento que por si no lo sabian el PICkit2 mediante una actualizacion no oficial puede programar el PIC18F45K50 directamente entre otros PICs como el mismisimo PIC18F47F83 que es la version  dip de uno de los tantos modelos del curiosity nano y de una forma mas economica  :) :)

¿Y como se puede realizar esa actualización no oficial?
Todos los días se aprende algo nuevo.

Desconectado DominusDRR

  • PIC24H
  • ******
  • Mensajes: 1982
    • Sicoy
Re:Ayuda con el PIC18F45K50
« Respuesta #7 en: 13 de Octubre de 2023, 10:00:03 »

Les comento que por si no lo sabian el PICkit2 mediante una actualizacion no oficial puede programar el PIC18F45K50 directamente entre otros PICs como el mismisimo PIC18F47F83 que es la version  dip de uno de los tantos modelos del curiosity nano y de una forma mas economica  :) :)

¿Y como se puede realizar esa actualización no oficial?

Tal vez sea esto:

https://www.forosdeelectronica.com/threads/%C2%BFc%C3%B3mo-programar-el-18f25k22-con-pickit-2.152794/
Tengo una idea algo difusa sobre MPLAB Harmony, XC32 con PIC32

Desconectado avefenix586

  • PIC10
  • *
  • Mensajes: 16
Re:Ayuda con el PIC18F45K50
« Respuesta #8 en: 13 de Octubre de 2023, 13:34:22 »
la versión oficial de Microchip para el Pickit 2 es la 2.61 y alli quedo para dar paso al Pickit3 que increíblemente no soporta al PIC18F45K45 directamente cuando debió incluirlo, pero Microchip prefirió que los nuevos Pics posteriores sean reconocidos pero con el Pickit 3 en modo Mplab, luego salieron mas Pics nuevos que el Pickit 3 ya no los reconocía (por falta de actualizacion) o rechazaba y ya Microchip nos empujo el Pickit 4 y también de golpe el Pickit 5 a precios uff por las nubes, de allí que veo la importancia del proyecto Unofficial de unos estudiantes electronicos sobre la base del Pickit 2 (modificando el codigo fuente) lo cual de continuar podría permitir ampliar a mas Pics incluso modernos y que quizás a Microchip no le va a gustar nadita  :D, la versión unofficial es la 2.62, no hay problema que pegue el enlace aquí no??

https://www.auelectronics.com/forum/index.php/topic,896.0.html
de alli lo descargan y tiene toda la información de su instalación, incluso lo publicaron en el foro del mismisimo Microchip y a casi nadie le intereso  :x

Lo interesante de ese proyecto en mi humilde opinion es que puedes programar mas pics sin necesidad de comprarte un pickit 4 o 5 muy aparte del asunto del debugging y sus demas herramientas necesarias para los que quieren meterse a fondo en el desarrollo de productos pero que una gran parte no las usamos incluyéndome y solo queremos un programador ICSP sencillo alternativo al estilo WinPic800 o IC-prog  que ojala los retomaran y actualizaran también.

la version 2.62 como es unoficial también tiene algunos bugs que se pueden pasar y seguramente los irán corrigiendo si el proyecto no queda allí plantado porque no faltan también los detractores que lo consideran obsoleto y le tiran barro jeje, saque su cuenta de comprarse un Pickit2 instalándole esa versión unoffical 2.62 a menos de 30 dólares vs un Pickit4 de $180 o Pickit 5 de $800  solo porque necesito programar un PIC18F45K50 y otros nuevos mas, no necesitaria hacer tremendo gasto no? sobre todo para los estudiantes que recien comienzan a programar Pics, Al descargarse el archivo comprimido e instalarlo les va a actualizar tambien el firmware del mismo Pickit2, yo preferí usar un Pickit2 clone que tenia y probar en el antes que en el Pickit 2 rojo clásico compatible por si acaso para no dañarlo o alterarlo irreversiblemente y eso les recomendaría que hagan las pruebas en un Pickit 2 clone pero sino ya háganlo en su mismo Pickit 2 rojo bajo su responsabilidad  :lol:.

La version PICkit 2.62 reconoce algunos Pics de los PIC18FxQxx entre ellos el PIC18F47Q83 que es el corazón de un modelo de esos costosos curiosity nanos, ni el Pickit3 en modo Mplab puede programar ese Pic porque ya te pide Pickit 4 y estos entusiastas lo consiguieron con el Pickit 2 unofficial,

« Última modificación: 13 de Octubre de 2023, 13:43:14 por avefenix586 »


 

anything