Autor Tema: Port D con 18f45k80 no funcionan como salidas RD4 a RD7  (Leído 4552 veces)

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

Desconectado Eduardo2

  • PIC24H
  • ******
  • Mensajes: 1004
Re:Port D con 18f45k80 no funcionan como salidas RD4 a RD7
« Respuesta #15 en: 01 de Abril de 2022, 16:26:45 »
Deberías publicar un código de prueba completo, porque en la simulación anda lo mas bien.

Código: [Seleccionar]
#include<18F45k80.h>

#byte LatD = 0xf8c

void main(void){   

    set_tris_d(0x0) ;
       
    bit_set(LatD,4);
    bit_set(LatD,5);
    bit_set(LatD,6);
    bit_set(LatD,7);
           
    while(1);
}


Desconectado dogflu66

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3549
Re:Port D con 18f45k80 no funcionan como salidas RD4 a RD7
« Respuesta #16 en: 02 de Abril de 2022, 15:56:10 »
Lo siento pero no uso esas sentencias.

Si quiere probar lo siguiente:

#Byte ANCON0 = 0xF5D
#Byte ANCON1 = 0xF5C
#Byte TRISD = 0xF95
#Byte PORTD = 0xF83
#Byte LATD = 0xF8C
#BIT LATD_0 = LATD.0
#BIT LATD_1 = LATD.1
#BIT LATD_2 = LATD.2
#BIT LATD_3 = LATD.3
#BIT LATD_4 = LATD.4
#BIT LATD_5 = LATD.5
#BIT LATD_6 = LATD.6
#BIT LATD_7 = LATD.7

//NO ANALOGICAS
ANCON0 = 0;
AMCON1 = 0;
//PORTD SALIDAS
TRISD = 0;
//PIN D6 Y D7 A 1
LATD_6 = 1;
LATD_7 = 1;

PD: por supuesto D6 y D7 no deben de estar asignados a un modulo usart.
« Última modificación: 02 de Abril de 2022, 16:00:55 por dogflu66 »
Saludos desde Granada, España.

Desconectado GusTor

  • PIC10
  • *
  • Mensajes: 10
Re:Port D con 18f45k80 no funcionan como salidas RD4 a RD7
« Respuesta #17 en: 04 de Abril de 2022, 10:48:34 »
Buenas, queria decirles que acabo de crear un proyecto de cero solo con esto y funciona bien el portD como salida, vere porque no me funciona en el proyecto que usaba el 18f4620, pero me quedo tranquilo que si pueden funcionar como salidas, quizas siga consultando por el proyecto que no me funciona a ver porque es, uso timers y entrada AD pero estan deshabilitadas, desde que no me funciono deshabilite todo

Esto si funciono...

#include <18f45k80.h>


#include "def18f.h"
el def18.h :

//Puertos
#byte porta = 0xf80
#byte trisa = 0xf92
#byte portb = 0xf81
#byte trisb = 0xf93
#byte portc = 0xf82
#byte trisc = 0xf94
#byte portd = 0xf83
#byte trisd = 0xf95
#byte porte = 0xf84
#byte trise = 0xf96

#byte LatD = 0xf8c

#byte ANCON0 = 0xf5d
#byte ANCON1 = 0xf5c

hasta aca el def


Aca el .c :

#device ADC=8,HIGH_INTS=TRUE //Conversion AD de 8 bits, prioridad de ints habilitada
#FUSES PLLEN,INTRC_HP,INTRC_IO,NOIESO,CANC,NOWRTC,NOWRTB,NOEBTR,NOEBTRB
#FUSES NOWDT,NOFCMEN //2
#FUSES NOMCLR //3
//#FUSES NOSTVREN,BBSIZ2K,NODEBUG //4
#FUSES PROTECT//,NOCPB,NOCPD //5
//#FUSES NOWRT,NOWRTC,NOWRTB,NOWRTD,  //6
//#FUSES NOEBTR,NOEBTRB //7
#use delay(clock=64000000)




void main(void){
   
   
    setup_oscillator(OSC_16MHZ|OSC_PLL_ON);
   
    set_tris_d(0x0) ;
       
   
    do{
        bit_set(LatD,0);
        bit_set(LatD,1);
        bit_set(LatD,2);
        bit_set(LatD,3);
        bit_set(LatD,4);
        bit_set(LatD,5);
        bit_set(LatD,6);
        bit_set(LatD,7);
       
        delay_ms(100);
       
        bit_clear(LatD,0);
        bit_clear(LatD,1);
        bit_clear(LatD,2);
        bit_clear(LatD,3);
        bit_clear(LatD,4);
        bit_clear(LatD,5);
        bit_clear(LatD,6);
        bit_clear(LatD,7);
        delay_ms(100);
       
    }while(1);
   

Desconectado GusTor

  • PIC10
  • *
  • Mensajes: 10
Re:Port D con 18f45k80 no funcionan como salidas RD4 a RD7
« Respuesta #18 en: 04 de Abril de 2022, 12:26:33 »
Ya descubri porque no funcionan los pines RD4 a RD7, usando la funcion output_high(Port.Pin) para configurar como salida, no funcionan pero solo los pines RD4 a RD7
Usando la funcion set_tris_d(0) ahi si, a mi no me funciono porque hice el tris antes de que tenia hecho el output_high y otuput_low

Si bien las funciones output_high y output_low se supone que configuran como salidas al pin pasado como parametro, se ve que el asembler generado por el CCS no funciona bien en todos los casos

Asi que queria agradecerles por las sugerencias a quienes se molestaron en investigar, fueron de ayuda



Desconectado DominusDRR

  • PIC24H
  • ******
  • Mensajes: 1982
    • Sicoy
Re:Port D con 18f45k80 no funcionan como salidas RD4 a RD7
« Respuesta #19 en: 04 de Abril de 2022, 12:28:13 »

...o, se ve que el asembler generado por el CCS no funciona bien en todos los casos


No me sorprende...
Tengo una idea algo difusa sobre MPLAB Harmony, XC32 con PIC32

Desconectado dogflu66

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3549
Re:Port D con 18f45k80 no funcionan como salidas RD4 a RD7
« Respuesta #20 en: 06 de Abril de 2022, 08:39:05 »
Me alegro que te funcione, llevo muchos años usando el CCS y una vez que te adaptas a el va bien.
Saludos desde Granada, España.