12F675 - How to configure the INTCON command to activate the various interrupts?


Closed Thread
Results 1 to 14 of 14

Hybrid View

  1. #1
    Join Date
    Feb 2022
    Posts
    51

    Default 12F675 - How to configure the INTCON command to activate the various interrupts?

    Good morning
    As I am new to understanding and using Interrupts, could you explain to me the configuration of the INTCON command for a small PIC12F675?
    The PBP manual gives as an example:
    INTCON = %10010000 ' Enable RB0 interrupt
    But I don't know for which PIC this command is valid (because I imagine it varies depending on the PIC used?).

    Unless I am mistaken, the 6 ports of the PIC12F675 would make it possible to cause interrupts.
    What would then be the commands to activate the various interrupts on GP0,1,2,3,4 and5 ?

    Thanks all.

  2. #2
    Join Date
    May 2013
    Location
    australia
    Posts
    2,392


    Did you find this post helpful? Yes | No

    Default Re: 12F675 - How to configure the INTCON command to activate the various interrupts?

    But I don't know for which PIC this command is valid (because I imagine it varies depending on the PIC used?)
    intcon is not a command, its a special function register
    while the intcon reg is fairly similar in operation across the pic spectrum you need to always consult the data sheet for your chip
    to ensure correct usage for the type/s of interrupt in question

    the data sheet also has a section on interrupt types and how to configure them
    the data sheet also will spell out how to save and restore mcu context to incorporate in your isr [interrupt service routine]code
    the data sheet also has a section on ioc [int on change] for the gpio on that chip


    What would then be the commands to activate the various interrupts on GP0,1,2,3,4 and5
    there is no pbp command for that you need to set the appropriate registers yourself , properly of course

    trisio,ioc, intcon
    Warning I'm not a teacher

  3. #3
    Join Date
    Feb 2022
    Posts
    51


    Did you find this post helpful? Yes | No

    Default Re: 12F675 - How to configure the INTCON command to activate the various interrupts?

    Indeed, INTCON is not strictly speaking a "command" but a configuration of the bits of the INTCON register obtained by a "line of code" of the style INTCON = 10010000.

    I obviously consulted the datasheet of the PIC12F675 on the page relating to the INTCON register. (see attached jpg)
    However, I do not see how to configure the six available ports.
    At first, I would already be well advanced for my project if I could define an interrupt on the GP0 port.

    For the others, we will see later with the assistance of the available specialists of this forum whom I already thank in advance.

    Name:  12F675 INTCON Register .jpg
Views: 1699
Size:  157.8 KB
    Name:  12F675 INTCON pin functions.jpg
Views: 1587
Size:  204.2 KB
    Last edited by zorgloub; - 21st April 2023 at 17:34.

  4. #4
    Join Date
    May 2013
    Location
    australia
    Posts
    2,392


    1 out of 1 members found this post helpful. Did you find this post helpful? Yes | No

    Default Re: 12F675 - How to configure the INTCON command to activate the various interrupts?

    REGISTER 3-4: IOC: INTERRUPT-ON-CHANGE GPIO REGISTER (ADDRESS: 96h)
    Warning I'm not a teacher

  5. #5
    Join Date
    Feb 2022
    Posts
    51


    Did you find this post helpful? Yes | No

    Default Re: 12F675 - How to configure the INTCON command to activate the various interrupts?

    Hi,
    In fact, I'm more of a PICAXE user and I transform my "simple" codes with PBP to program small PICs.
    I was trying to use interrupts...
    The subtleties of the PICs are therefore quite nebulous for me and my English is not flexible and subtle enough to understand the mysteries of the data sheets.
    In fact what I wanted to do initially seemed easy to me... but it doesn't seem to be the case

    I just want to vary a variable named MODE from 0 to 3, 0 to 3, ..., when port GP0 (which has a pull-up resistor to Vcc) goes to zero state.

    If someone could help me out with just this little routine, that would be great.
    Thanks in advance.

  6. #6
    Join Date
    May 2013
    Location
    australia
    Posts
    2,392


    1 out of 1 members found this post helpful. Did you find this post helpful? Yes | No

    Default Re: 12F675 - How to configure the INTCON command to activate the various interrupts?

    Code:
    '****************************************************************
    '*  Name    : ioc-demo-12f675.BAS                               *
    '*  Author  : richard                                           *
    '*  Notice  : Copyright (c) 2023 caveat emptor                  *
    '*          : All Rights Reserved                               *
    '*  Date    : 22/04/2023                                        *
    '*  Version : 1.0                                               *
    '*  Notes   : 12f675 ioc gpio.0                                 *
    '*          :                                                   *
    '****************************************************************
    #CONFIG
    cfg = _INTRC_OSC_NOCLKOUT
    cfg&= _WDT_ON
    cfg&= _PWRTE_OFF
    cfg&= _MCLRE_ON
    cfg&= _BODEN_ON
    cfg&= _CP_OFF
    cfg&= _CPD_OFF
      __CONFIG cfg
    #ENDCONFIG
    DEFINE INTHAND    poll
    wsave VAR BYTE    $20     SYSTEM      
    ssave VAR BYTE    BANK0   SYSTEM     
    
    
    mode  var byte
    DUMMY VAR BYTE
    
    
    INPT  VAR GPIO.0
    LED   VAR GPIO.1
    
    
    cmcon = 7
    ANSEL = 0
    TRISIO.0 = 1
    TRISIO.1 = 0
    IOC.0 = 1
    
    
    
    
    MODE = 3      
    DUMMY = GPIO
    INTCON = 001000
    LED = 1
    
    
    MAIN:
        IF  ! MODE THEN
            LED = 0
            pause 1000
            LED = 1
            mode = 3
            DUMMY = GPIO
            INTCON = 001000
        endif 
        PAUSE 10
    GOTO MAIN
    
    
    
    
    asm
    poll
        MOVWF wsave 
        SWAPF STATUS,W 
        BCF STATUS,RP0 
        MOVWF ssave 
        
        BANKSEL _mode
        clrf _mode    
        
        SWAPF ssave,W
        MOVWF STATUS 
        SWAPF wsave,F 
        SWAPF wsave,W 
    ENDASM

    Name:  zorb.jpg
Views: 1244
Size:  146.1 KB
    Last edited by richard; - 22nd April 2023 at 11:19.
    Warning I'm not a teacher

  7. #7
    Join Date
    Feb 2022
    Posts
    51


    Did you find this post helpful? Yes | No

    Default Re: 12F675 - How to configure the INTCON command to activate the various interrupts?

    Thank you all.
    I will try to assimilate all these notions.
    Have a good day.

Similar Threads

  1. Basic problem with interrupts and sleep command
    By Davidmarks in forum mel PIC BASIC Pro
    Replies: 6
    Last Post: - 21st February 2012, 01:21
  2. CONFIGURE & OSCCON & meProg configure
    By SUNFLOWER in forum mel PIC BASIC Pro
    Replies: 2
    Last Post: - 19th February 2011, 21:25
  3. How to activate ccp3 on portB.5 of 16f777 ?
    By abdullahsavas in forum mel PIC BASIC Pro
    Replies: 0
    Last Post: - 16th June 2010, 08:17
  4. EEPROM Write command with interrupts??
    By Elnino in forum General
    Replies: 4
    Last Post: - 23rd November 2009, 06:44
  5. intcon?
    By jonas2 in forum mel PIC BASIC Pro
    Replies: 1
    Last Post: - 23rd September 2009, 11:07

Members who have read this thread : 3

You do not have permission to view the list of names.

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts