Digital outputs PA6 and PA7 dont work

Fully featured PIC compilers available on Windows, Linux, and macOS.
Post Reply
Author
Message
programer
Posts: 1
Joined: 16 Nov 2013 17:04

Digital outputs PA6 and PA7 dont work

#1 Post by programer » 03 Aug 2023 09:02

I send the code for PIC 18F97L94 on Fusion PIC Board v8

Digital outputs PA6 and PA7 dont work. I aks kindly for help.

I turned of WDT.

Code: Select all

/**
 * @file main.c
 * @brief Main function for Projekat_LED_Blink application.
 */



#include "MikroSDK.Driver.GPIO.In"
#include "MikroSDK.Driver.GPIO.Out"
#include "MikroSDK.Driver"
#include "MikroSDK.Board"
#include "Click.Watchdog"

// static digital_in_t input_pin;

static digital_out_t output_pin_PA0;
static digital_out_t output_pin_PA1;
static digital_out_t output_pin_PA2;
static digital_out_t output_pin_PA3;
static digital_out_t output_pin_PA4;
static digital_out_t output_pin_PA5;
static digital_out_t output_pin_PA6;
static digital_out_t output_pin_PA7;


//static digital_out_t pin[8] = {
    
    //output_pin_PA0,
    //output_pin_PA1,
    //output_pin_PA2,
    //output_pin_PA3,
    //output_pin_PA4,
    //output_pin_PA5,
    //output_pin_PA6,
    //output_pin_PA7
        
    
//};





void application_init ( void )
{
    //digital_in_init( &input_pin, PA1 ); /* Initialize digital input driver
    //context structure and individual GPIO pin as digital input. */
    
    digital_out_init( &output_pin_PA0, PA0 ); 
    digital_out_init( &output_pin_PA1, PA1 );
    digital_out_init( &output_pin_PA2, PA2 ); 
    digital_out_init( &output_pin_PA3, PA3 );
    digital_out_init( &output_pin_PA4, PA4 ); 
    digital_out_init( &output_pin_PA5, PA5 );
    digital_out_init( &output_pin_PA6, PA6 ); 
    digital_out_init( &output_pin_PA7, PA7 );
    
    //digital_out_write( , 0 );
    
    digital_out_write( &output_pin_PA0, 0 );
    digital_out_write( &output_pin_PA1, 0 );
    digital_out_write( &output_pin_PA2, 0 );
    digital_out_write( &output_pin_PA3, 0 );
    digital_out_write( &output_pin_PA4, 0 );
    digital_out_write( &output_pin_PA5, 0 );
    digital_out_write( &output_pin_PA6, 0 );
    digital_out_write( &output_pin_PA7, 0 );
    
   
   /* context structure and individual GPIO pin as digital output. */
}

void application_task ( void )
{
    //uint8_t value;

    //value = digital_in_read( &input_pin );   // Read digital input value.
    //digital_out_write( &output_pin0, 1 ); /* Write read value to the
                                                //output pin */
   
}

int main(void)
{
    /* Replace with your application code */
    
    // OSCCON.B1 = 1;
    
    const int time = 100;
    
    //SWDTEN_bit = 0;
    
    //COSC0_bit = 1; 
    //COSC1_bit = 0;
    //COSC2_bit = 1;
    
    application_init(); 
    
    
    
    while (1)
    {
       
       //application_task();   
        
        /*
        digital_out_write( &output_pin_PA0, 1 );
        Delay_ms(time);
        digital_out_write( &output_pin_PA0, 0 );
        Delay_ms(time);
        digital_out_write( &output_pin_PA1, 1 );
        Delay_ms(time);
        digital_out_write( &output_pin_PA1, 0 );
        Delay_ms(time);
        digital_out_write( &output_pin_PA2, 1 );
        Delay_ms(time);
        digital_out_write( &output_pin_PA2, 0 );
        Delay_ms(time);
        digital_out_write( &output_pin_PA3, 1 );
        Delay_ms(time);
        digital_out_write( &output_pin_PA3, 0 );
        Delay_ms(time);
        
        digital_out_write( &output_pin_PA4, 1 );
        Delay_ms(time);
        digital_out_write( &output_pin_PA4, 0 );
        Delay_ms(time);
        digital_out_write( &output_pin_PA5, 1 );
        Delay_ms(time);
        digital_out_write( &output_pin_PA5, 0 );
        Delay_ms(time);
        digital_out_write( &output_pin_PA6, 1 );
        Delay_ms(time);
        digital_out_write( &output_pin_PA6, 0 );
        Delay_ms(time);
        digital_out_write( &output_pin_PA7, 1 );
        Delay_ms(time);
        digital_out_write( &output_pin_PA7, 0 );
        Delay_ms(time);
     */
        
        digital_out_write( &output_pin_PA6, 1 );
        Delay_ms(time);
        digital_out_write( &output_pin_PA6, 0 );
        Delay_ms(time);
        digital_out_write( &output_pin_PA7, 1 );
        Delay_ms(time);
        digital_out_write( &output_pin_PA7, 0 );
        Delay_ms(time);
        
    }

    return 0;
}



User avatar
filip
mikroElektronika team
Posts: 11874
Joined: 25 Jan 2008 09:56

Re: Digital outputs PA6 and PA7 dont work

#2 Post by filip » 03 Aug 2023 13:56

Hi,

Both RA6 and RA7 are used for the external crystal oscillator, this is why you cannot use in your project.

If you want to use these pins, you can set the internal oscillator as clock source in the project settings thus freeing the RA6/7 pins.

Regards,
Filip.

Post Reply

Return to “PIC AI compilers”