assembly error on DT interrupts


+ Reply to Thread
Results 1 to 20 of 20

Hybrid View

  1. #1
    Join Date
    Dec 2021
    Location
    Illinois, USA
    Posts
    11

    Default assembly error on DT interrupts

    When assembling the DT Interrupts for the 18F, I get the following error.
    [ASM ERROR] Symbol not previously defined (INT_ENTRY_H) (0) : Error[113]

    Below is the code from DT's Interrupt code.

    Code:
    
    DEFINE  INTHAND       INT_ENTRY_H  ' Context saving for High Priority Ints
    DEFINE  INTLHAND      INT_ENTRY_L  ' Context saving for Low Priority Ints
    This is being used on a PIC18F46K80. Any idea why the assembler might be complaining? Has anyone else run into this?

    -Thanks

  2. #2
    Join Date
    Jan 2005
    Location
    Montreal, Quebec, Canada
    Posts
    3,154


    Did you find this post helpful? Yes | No

    Default Re: assembly error on DT interrupts

    Quote Originally Posted by Zapman View Post
    ...
    Below is the code from DT's Interrupt code.
    ...
    Do you have a link to DT's code?

    A copy of your code wouldn't hurt either.

    It might help give us a clue to the problem.
    My Creality Ender 3 S1 Plus is a giant paperweight that can't even be used as a boat anchor, cause I'd be fined for polluting our waterways with electronic devices.

    Not as dumb as yesterday, but stupider than tomorrow!

  3. #3
    Join Date
    Apr 2022
    Posts
    14


    Did you find this post helpful? Yes | No

    Default Re: assembly error on DT interrupts

    Hello Demon,

    the two line code snippet is from the interrupt code on this site. Downloads | Book of Interrupts

    I
    t is where the variable is defined and yet the assembler complains about it.

    I was wondering if anyone else had this happen. It also shows up in the error file.

    Thanks,

    Paul

  4. #4
    Join Date
    Jan 2005
    Location
    Montreal, Quebec, Canada
    Posts
    3,154


    Did you find this post helpful? Yes | No

    Default Re: assembly error on DT interrupts

    For one, there's an order to place the DT includes in your program.

    And it would REALLY help to see your complete code.
    My Creality Ender 3 S1 Plus is a giant paperweight that can't even be used as a boat anchor, cause I'd be fined for polluting our waterways with electronic devices.

    Not as dumb as yesterday, but stupider than tomorrow!

  5. #5
    Join Date
    Apr 2022
    Posts
    14


    Did you find this post helpful? Yes | No

    Default Re: assembly error on DT interrupts

    Hello Demon.

    here is the code. It does not show any errors for the main code but the DT interrupts when assembled gives the error code listed above.


    Code:
    CLEAR                       'Clears memoryinclude "codesize.pbp"      'measure the size of the code.
    Define Measure 1
    
    
    '..... If any of these next three lines cause an error 
    '......Comment them out to fix the problem...
    '......which variables are needed, depends on the chip you are using.......
    
    
    wsave1 var byte $A0 system  ;location for W if in bank0
    wsave2 var byte $120 system ;location for W if in bank0                                           
    wsave3 var byte $1A0 system ;location for W if in bank0
    
    
    INCLUDE "DT_INTS-18-k80.bas"; Basic Interrupt System
    INCLUDE "ReEnterPBP-18.bas" ; Include if using PBP interrupts
    'INCLUDE "ReEnterPBP-18LP.bas"  ; Include if using Low Priority. PBP INTS
    INCLUDE "modedefs.bas"      'defines modes for serial in and out
    INCLUDE "ProfileGen3.pbp"   'Motion profile generator for motor move
    INCLUDE "incPIDv1_5.pbp"    'include the PID controller
    INCLUDE "CANBus.pbp"        'CAN bus header file
    
    
    
    
    ' Define clock speed
    DEFINE OSC 20              ' clock frequency
    DEFINE USE_HIGHPRIORITY 1  ' use high priority interrupts
    'define USE_LOWPRIORITY  1 ' not using low priority interrupts
     
    DEFINE WRITE_INT 1
    
    
    '*********************************************************************
    ' have to define this so interrupts are masked when doing EEPROM
    ' writes.  It handles masking and un-masking
    '*********************************************************************
     
    INTCON2.6 = 0           ' Int on falling edge 
                            ' External Interrupt 0 Edge Select bit
    
    
     
                            
    ' Set up data direction registers for all the pins.
    TRISA = 111111       ' Set PORTA RA6 is Osc output to crystal
    TRISB = 101001       ' Set PORTB
    TRISC = 010100       ' Set PORTC
    TRISD = 000011       ' Set PORTD
    TRISE = 111011       ' Set PORTE only lower 4 bits available
    
    
    ;----[High Priority Interrupts]----------------------------------------
    ASM
    INT_LIST  macro    ; IntSource,    Label,      Type, ResetFlag?
            INT_Handler   TMR1_INT,  _ClockCount,   PBP,  yes  ;-- Timer Int.
            INT_Handler   INT0_INT,  _MoveCmd,      PBP,  yes  ;-- Flap Switch
       endm
        INT_CREATE          ; Creates High Priority interrupt processor
    ENDASM
    and this is the Interrupt code from DT's Interrupts.

    Code:
    '****************************************************************'*  Name    : DT_INTS-18-K80.bas                                *
    '*  Author  : Darrel Taylor modified for PIC18F46K80         *
    '*  Notice  : Copyright (c) 2003                                *
    '*  Version : 1.0    MAR 21, 2022                               *
    '*  Date    : MAR 21, 2022                                      *
    '****************************************************************
    '*  Versions:                                                   *
    '*   1.0  : MAR 21, 2022 first version modified for PIC66K80    *
    '*   3.3  : MAR 24, 2008                                        *
    '*           Corrects an initialization problem affecting the   *
    '*           first pass if CLEAR is not used                    *
    '*   3.2  : Aug 26, 2007                                        *
    '*           Update for PBP 2.50 using LONG's with PBPL         *
    '*           Added many new INT sources                         *
    '*   3.1  : JUL 18, 2006                                        *
    '*           Modified to handle smaller BANKA in the newer chips*
    '****************************************************************
    ;DISABLE DEBUG
    
    
    
    
    DEFINE  INTHAND       INT_ENTRY_H  ' Context saving for High Priority Ints
    DEFINE  INTLHAND      INT_ENTRY_L  ' Context saving for Low Priority Ints
    
    
    wsave       var byte  BANKA  SYSTEM   ' location for WREG
    ssave       var byte  BANK0  SYSTEM   ' location for STATUS register
    bsave       var byte  BANK0  SYSTEM   ' location for BSR register
    psaveUH     VAR BYTE  BANK0  SYSTEM   ' PCLATU Hi Pri.
    psaveUL     VAR BYTE  BANK0  SYSTEM   '        Lo Pri.
    psaveH      VAR BYTE  BANK0  SYSTEM   ' PCLATH Hi Pri.
    psaveL      VAR BYTE  BANK0  SYSTEM   '        Lo Pri.
    fsave0H     var WORD  BANK0  SYSTEM   ' locations for FSR registers
    fsave1H     var WORD  BANK0  SYSTEM
    fsave2H     var WORD  BANK0  SYSTEM
    fsave0L     var WORD  BANK0  SYSTEM   ' low priority FSR locations
    fsave1L     var WORD  BANK0  SYSTEM
    fsave2L     var WORD  BANK0  SYSTEM
    RetAddrH    VAR BYTE[3]  BANKA  SYSTEM  ' 21-bit return address Hi Pri.
    RetAddrL    VAR BYTE[3]  BANKA  SYSTEM  '                       Lo Pri.
    INT_Flags   VAR BYTE  BANKA  SYSTEM
      Serviced_H  VAR INT_Flags.0
      Serviced_L  VAR INT_Flags.1
      InHPint     VAR INT_Flags.2
      NoPriority  VAR INT_Flags.3
    
    
    INT_Flags = 0 
    
    
    goto  OVER_DT_INTS_18
    
    
    ASM
    ;____ Check for PBPL (PBP ver. 2.50 and above only)__________________________
    PBPLongs_Used = 0
      if (R1 - R0 == 4)
    PBPLongs_Used = 1
    ;    messg PBPL Used = 1
      endif
    
    
    ;  nolist
    ;____ DEFINE available interrupt sources_____________________________________
    The error is for the INTHAND not being defined but, as you can see it is.

    Thanks,
    Paul

  6. #6
    Join Date
    Nov 2003
    Location
    Greece
    Posts
    4,115


    Did you find this post helpful? Yes | No

    Default Re: assembly error on DT interrupts

    Posting snippets is just a waste of time...

    Ioannis

Similar Threads

  1. Assembly Interrupts for PIC 18F27K42
    By dtbarber in forum Code Examples
    Replies: 3
    Last Post: - 7th January 2021, 00:59
  2. Error using DT's Inst Interrupts and PIC BASIC PRO Long
    By ozarkshermit in forum mel PIC BASIC Pro
    Replies: 6
    Last Post: - 6th December 2014, 18:11
  3. Replies: 1
    Last Post: - 30th March 2012, 04:13
  4. LP Instant Interrupts Error
    By Kamikaze47 in forum mel PIC BASIC Pro
    Replies: 7
    Last Post: - 7th December 2009, 09:13
  5. Replies: 2
    Last Post: - 8th February 2009, 05:10

Members who have read this thread : 19

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

Posting Permissions

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