learnig interrupt; need help! - Page 4


+ Reply to Thread
Page 4 of 4 FirstFirst ... 234
Results 46 to 58 of 58

Thread: learnig interrupt; need help!4198 days old

  1. #46
    leisryan
    Guest leisryan's Avatar

    0 Not allowed!

    Default interrupt

    Quote Originally Posted by Tim View Post
    Short answer YES you have that right.



    I would use the built in interrupt handler implemented in the latest version.

    HTH
    Thanks for speedily answer do I still need your BISVS though on the latest version?

Attention

This valuable resource relies upon the very small amount of revenue generated by displaying online advertisements to our visitors.

The advertisements we display are relevant to this web site and your browsing history

Please consider supporting us by disabling your ad blocker.


Note: Some users have reported issues related to ad-blockers rendering parts of this wesite unusable,
where possible we will rectify the issues to enable you to use this resource with adblocking enabled.

If you can, please report issues in the forum area WebSite / Forum Issues


Thank you for your attention.

  • #47
    Fanatical Contributor Tim's Avatar
    Join Date
    Jan 2003
    Posts
    7,676
    Thumbs Up
    Received: 47
    Given: 95
    Total Downloaded
    1.32 GB

    0 Not allowed!

    Default

    I recommend that you do not use BISVS as its out of date now.

    The latest compiler version is an official version of BISVS
    Tim

  • Attention

    This valuable resource relies upon the very small amount of revenue generated by displaying online advertisements to our visitors.

    The advertisements we display are relevant to this web site and your browsing history

    Please consider supporting us by disabling your ad blocker.


    Note: Some users have reported issues related to ad-blockers rendering parts of this wesite unusable,
    where possible we will rectify the issues to enable you to use this resource with adblocking enabled.

    If you can, please report issues in the forum area WebSite / Forum Issues


    Thank you for your attention.

  • #48
    leisryan
    Guest leisryan's Avatar

    0 Not allowed!

    Default multiple interrupts

    Quote Originally Posted by Tim View Post
    I recommend that you do not use BISVS as its out of date now.

    The latest compiler version is an official version of BISVS
    Sir:
    If I'd like to implement multiple interrupts in my code without low priorities how will i do that? Is it possible to declare all interrupts as high priorities?

  • Attention

    This valuable resource relies upon the very small amount of revenue generated by displaying online advertisements to our visitors.

    The advertisements we display are relevant to this web site and your browsing history

    Please consider supporting us by disabling your ad blocker.


    Note: Some users have reported issues related to ad-blockers rendering parts of this wesite unusable,
    where possible we will rectify the issues to enable you to use this resource with adblocking enabled.

    If you can, please report issues in the forum area WebSite / Forum Issues


    Thank you for your attention.

  • #49
    Fanatical Contributor Tim's Avatar
    Join Date
    Jan 2003
    Posts
    7,676
    Thumbs Up
    Received: 47
    Given: 95
    Total Downloaded
    1.32 GB

    0 Not allowed!

    Default

    You have not said what type of interrupts? Before you answer I would recommend you read up on interrupts. All the answers are to be found in the Pic datasheet
    Tim

  • Attention

    This valuable resource relies upon the very small amount of revenue generated by displaying online advertisements to our visitors.

    The advertisements we display are relevant to this web site and your browsing history

    Please consider supporting us by disabling your ad blocker.


    Note: Some users have reported issues related to ad-blockers rendering parts of this wesite unusable,
    where possible we will rectify the issues to enable you to use this resource with adblocking enabled.

    If you can, please report issues in the forum area WebSite / Forum Issues


    Thank you for your attention.

  • #50
    leisryan
    Guest leisryan's Avatar

    0 Not allowed!

    Default

    Quote Originally Posted by Tim View Post
    You have not said what type of interrupts? Before you answer I would recommend you read up on interrupts. All the answers are to be found in the Pic datasheet
    Sir:
    Thanks for the advice I've read the datasheets and I've learned I was actually referring to "First come First serve interrupt" if hi and low priorities are turned off by simply disabling interrupt during servicing it,

  • Attention

    This valuable resource relies upon the very small amount of revenue generated by displaying online advertisements to our visitors.

    The advertisements we display are relevant to this web site and your browsing history

    Please consider supporting us by disabling your ad blocker.


    Note: Some users have reported issues related to ad-blockers rendering parts of this wesite unusable,
    where possible we will rectify the issues to enable you to use this resource with adblocking enabled.

    If you can, please report issues in the forum area WebSite / Forum Issues


    Thank you for your attention.

  • #51
    leisryan
    Guest leisryan's Avatar

    0 Not allowed!

    Default weird interrupt

    I just got a working USART interrupt but when I tried to add a second interrupt which in this case TIMER0 interrupt my interrupt handler ignores the routine written for TIMER0 but my USART interrupt still is working fine! what could cause this?

  • Attention

    This valuable resource relies upon the very small amount of revenue generated by displaying online advertisements to our visitors.

    The advertisements we display are relevant to this web site and your browsing history

    Please consider supporting us by disabling your ad blocker.


    Note: Some users have reported issues related to ad-blockers rendering parts of this wesite unusable,
    where possible we will rectify the issues to enable you to use this resource with adblocking enabled.

    If you can, please report issues in the forum area WebSite / Forum Issues


    Thank you for your attention.

  • #52
    Fanatical Contributor Tim's Avatar
    Join Date
    Jan 2003
    Posts
    7,676
    Thumbs Up
    Received: 47
    Given: 95
    Total Downloaded
    1.32 GB

    0 Not allowed!

    Default

    Ok post your interrupt and setup code so we can look.

    Not easy with out something to go on
    Tim

  • Attention

    This valuable resource relies upon the very small amount of revenue generated by displaying online advertisements to our visitors.

    The advertisements we display are relevant to this web site and your browsing history

    Please consider supporting us by disabling your ad blocker.


    Note: Some users have reported issues related to ad-blockers rendering parts of this wesite unusable,
    where possible we will rectify the issues to enable you to use this resource with adblocking enabled.

    If you can, please report issues in the forum area WebSite / Forum Issues


    Thank you for your attention.

  • #53
    leisryan
    Guest leisryan's Avatar

    0 Not allowed!

    Default rgb led matrix code with TMR0 & USART interrupts

    Here's my code its an RGB led matrix display everything is working I even post my project in Youtube just really having trouble with multiple interrupt
    USART interrupt is worrking flawlessly!!! thank you so so much for replying
    speedily!!!

    <object width="425" height="344"><param name="movie" value="http://www.youtube.com/v/F_70xnp6Igo&hl=en&fs=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/F_70xnp6Igo&hl=en&fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed></object>

    Code:
    '****************************************************************
    '*  Name    : RGB_LED_MTRIX.BAS                                      *
    '*  Author  : Ryan S. Leis                                      *
    '*  Notice  : Copyright (c) 2008 Strategic Instruments          *
    '*          : All Rights Reserved                               *
    '*  Date    : 11/26/2008                                        *
    '*  Version : 1.0                                               *
    '*  Notes   : Sourcecode to test DM135 shift-registers          *
    '*          :                                                   *
    '****************************************************************
    
    Device = 18F4550
    
    'Declare XTAL 20
    
    CONFIG_START
      	PLLDIV = 5 '5    	' prescale (Divide by 5 (20 MHz oscillator input) 
                            ' default 4mhz result in 48mhz with PLL enabled other osc input needs to be prescaled
                            ' or divided to have a reult of 4mhz example 20/5 = 4 always should be 4!!!
    	CPUDIV = OSC1_PLL2	' postscale [OSC1/OSC2 Src: /1][96 MHz PLL Src: /2]
    	USBDIV = 2			' USB clock source comes from the 96 MHz PLL divided by 2
    	FOSC = HSPLL_HS     'HS    'HS oscillator, PLL enabled, HS used by USB
    	FCMEN = OFF			' Fail-Safe Clock Monitor disabled
    	IESO = OFF			' Oscillator Switchover mode disabled
    	PWRT = On			' PWRT enabled
    	BOR = On			' Brown-out Reset enabled in hardware only (SBOREN is disabled)
    	BORV = 3			' Minimum setting
    	VREGEN = OFF		' USB voltage regulator disabled
    	WDT = OFF			' HW Disabled - SW Controlled
    	WDTPS = 1024		' 1:1024
    	MCLRE = On			' MCLR pin Disabled' RE3 input pin enabled
    	LPT1OSC = On		' Timer1 configured for low-power operation
    	PBADEN = OFF		' PORTB<4:0> pins are configured as digital I/O on Reset
    	CCP2MX = On			' CCP2 input/output is multiplexed with RC1
    	STVREN = OFF		' Stack full/underflow will not cause Reset
    	LVP = OFF			' Single-Supply ICSP disabled
    	ICPRT = OFF			' ICPORT disabled
    	XINST = OFF			' Instruction set extension and Indexed Addressing mode disabled
    	Debug = OFF			' Background debugger disabled, RB6 and RB7 configured as general purpose I/O pins
    	CP0 = OFF			' Block 0 (000800-001FFFh) not code-protected
    	CP1 = OFF			' Block 1 (002000-003FFFh) not code-protected
    	CP2 = OFF			' Block 2 (004000-005FFFh) not code-protected
    	CP3 = OFF			' Block 3 (006000-007FFFh) not code-protected
    	CPB = OFF			' Boot block (000000-0007FFh) not code-protected
    	CPD = OFF			' Data EEPROM not code-protected
    	WRT0 = OFF			' Block 0 (000800-001FFFh) not write-protected
    	WRT1 = OFF			' Block 1 (002000-003FFFh) not write-protected
    	WRT2 = OFF			' Block 2 (004000-005FFFh) not write-protected
    	WRT3 = OFF			' Block 3 (006000-007FFFh) not write-protected
    	WRTB = OFF			' Boot block (000000-0007FFh) not write-protected
    	WRTC = OFF			' Configuration registers (300000-3000FFh) not write-protected
    	WRTD = OFF			' Data EEPROM not write-protected
    	EBTR0 = OFF			' Block 0 (000800-001FFFh) not protected from table reads executed in other blocks
    	EBTR1 = OFF			' Block 1 (002000-003FFFh) not protected from table reads executed in other blocks
    	EBTR2 = OFF			' Block 2 (004000-005FFFh) not protected from table reads executed in other blocks
    	EBTR3 = OFF			' Block 3 (006000-007FFFh) not protected from table reads executed in other blocks
    	EBTRB = OFF			' Boot block (000000-0007FFh) not protected from table reads executed in other blocks	
    CONFIG_END
    
    '*************************** Variables Allocations ***************************
    Dim CHAR_String[256]    As Byte
    Dim S_Holder As String * 4
    Dim BytesIn[256]        As Byte
    Dim A_Holder[4]         As Byte
    Dim null                As Byte
    Dim CHAR_Column[40]     As Byte
    Dim CHAR_count          As Word
    Dim Matrix_Column       As Word
    Dim Matrix_Column1      As Word
    Dim Matrix_Column2      As Word
    Dim Matrix_Column3      As Word
    Dim Matrix_Column4      As Word
    Dim Matrix_Column5      As Word
    Dim Segment             As Byte
    Dim Segment_holder      As Byte
    Dim Speed               As Byte
    Dim Segment_Count       As Word
    Dim Total_Segment       As Word
    Dim Loop                As Word 
    Dim ind                 As Word 
    Dim Loop_COUNT          As Word
    Dim Ram_LEFT            As Byte
    Dim CHAR_Reload         As Word
    Dim MSSG_END            As Word
    Dim dummy               As Word
    Dim TIMER0              As TMR0L.Word 
    Dim Ph_Val              As Byte
    Dim StrReload_bit       As Bit
    Dim CHANGE_BIT          As Bit
    Dim first_run_bit       As Bit
    Dim Color_Red           As Bit
    Dim Color_Green         As Bit
    Dim Color_Blue          As Bit
    Dim PWM0                As Bit
    Dim PWM1                As Bit
    Dim PWM2                As Bit
    Dim Loop_bit            As Bit
    
    Dim IntCount As Byte
    Dim DutyCycle0 As Byte			    ' Holds duty cycle for PWM channel 0 
    Dim DutyCycle1 As Byte 			    ' Holds duty cycle for PWM channel 1
    Dim DutyCycle2 As Byte			    ' Holds duty cycle for PWM channel 2
    Dim PWMFlags As Byte			    ' Used for software flags
    
    Dim Temp As Byte
    Dim Phase As Word		            ' Holds the sinusoidal pointer location
    Dim BeginPWM As PWMFlags.0
        
    Clear
    
    '***************************  Peripherals Setup    ***************************
    
    OPTIMISER_LEVEL = 3						' Maximum optimiser
    DEAD_CODE_REMOVE = On               ' Remove redundant ASM 
    
    '	   ADCON1=7   	   	  			'set ports to digital
    ALL_DIGITAL = True	
    		
    WARNINGS = OFF
    				  									
    TRISA=%00000000                     'set ports for input or output
    
    TRISB = %00000001		            ' Make the last four bits of PortB Outputs	
    INTCON2.7 = 0			        	' Enable Internal PortB Pullup Resistors
    	
    TRISC=%10000000                     'just make sure the USART RX Port C.7 is an input
    TRISD=%00000000                     'and the LCD ports are set up correctly 
    TRISE=%00000000  
    
    '****************************  USART Interrupt Setup    ***************************
    
    'Declare FSR_CONTEXT_SAVE = off
    'On_Interrupt GoTo USART_Int        ' define interrupt handler
    'INTCON = %11000000
    PIE1.5 = 1 ' enable interrupt on USART receive
    
    'RCSTA = $90   ' Enable serial port & continuous receive
    'TXSTA = $20   ' Enable transmit, BRGH = 0
    'SPBRG = 112   ' 4800 Baud @ 48MHz, 0.0%
    'SPBRGH = 2
    'BAUDCON.3 = 1 ' Enable 16 bit baudrate generator
    
    
    RCSTA = $90   ' Enable serial port & continuous receive
    TXSTA = $24   ' Enable transmit, BRGH = 1
    SPBRG = 225   ' 9600 Baud @ 48MHz, 0.0%
    SPBRGH = 4
    BAUDCON.3 = 1 ' Enable 16 bit baudrate generator
    
    
    '****************************  T0CON: TIMER0 Control Register Interrupt Setup    ***************************
    '
    ' T0CON: TIMER0 Control Register
    '
    	Symbol TMR0ON = T0CON.7 						' TIMER0 On/Off Control bit
    													'	1 = Enables TIMER0
    													'	0 = Stops TIMER0
    	Symbol T08BIT = T0CON.6							' TIMER0 8-bit/16-bit Control bit
    													'	1 = TIMER0 is configured as an 8-bit timer/counter
    													'	0 = TIMER0 is configured as a 16-bit timer/counter
    	Symbol T0CS = T0CON.5							' TIMER0 Clock Source Select bit
    													'	1 = Transition on T0CKI pin
    													'	0 = Internal instruction cycle clock (CLKO)
    	Symbol T0SE = T0CON.4							' TIMER0 Source Edge Select bit
    													'	1 = Increment on high-to-low transition on T0CKI pin
    													'	0 = Increment on low-to-high transition on T0CKI pin
    	Symbol PSA = T0CON.3							' TIMER0 Prescaler Assignment bit
    													'	1 = TIMER0 prescaler is NOT assigned. TIMER0 clock input bypasses prescaler.
    													'	0 = TIMER0 prescaler is assigned. TIMER0 clock input comes from prescaler output.
    	Symbol T0PS2 = T0CON.2							' \
    	Symbol T0PS1 = T0CON.1							'   TIMER0 Prescaler Select bits
    	Symbol T0PS0 = T0CON.0							' /
    													'	111 = 1:256 prescale value
    													'	110 = 1:128 prescale value
    													'	101 = 1:64 prescale value
    													'	100 = 1:32 prescale value
    													'	011 = 1:16 prescale value
    													'	010 = 1:8 prescale value
    													'	001 = 1:4 prescale value
    													'	000 = 1:2 prescale value
    													
    													
    '****************************  Interrupt Priority Setup   ***************************
    
    ' INTCON1: Interrupt Control Register 1
    '
    	Symbol GIE = INTCON.7 							' Global Interrupt Enable bit
    													'	When IPEN (RCON.7) = 0:
    													'		1 = Enables all unmasked interrupts
    													'		0 = Disables all interrupts
    													'	When IPEN (RCON.7) = 1:
    													'		1 = Enables all high priority interrupts
    													'		0 = Disables all interrupts
    	Symbol PEIE = INTCON.6                         ' \
    	Symbol GIEL = INTCON.6 						' / Peripheral Interrupt Enable bit
    													'	When IPEN (RCON.7) = 0:
    													'		1 = Enables all unmasked peripheral interrupts
    													'		0 = Disables all peripheral interrupts
    													'	When IPEN (RCON.7) = 1:
    													'		1 = Enables all low priority peripheral interrupts
    													'		0 = Disables all low priority peripheral interrupts
    	Symbol TMR0IE = INTCON.5						' TIMER0 Overflow Interrupt Enable bit
    		         						  	        '	1 = Enables the TIMER0 overflow interrupt
    													'	0 = Disables the TIMER0 overflow interrupt
    	Symbol TMR0IF = INTCON.2						' TIMER0 Overflow Interrupt Flag bit
    													'	1 = TIMER0 register has overflowed (must be cleared in software)
    													'	0 = TIMER0 register did not overflow
    '
    ' INTCON2: Interrupt Control Register 2
    '
    	Symbol TMR0IP = INTCON2.2						' TIMER0 Overflow Interrupt Priority bit
    													'	1 = High priority
    													'	0 = Low priority
    
    
    ''****************************   PIR1: Peripheral Interrupt Request Register 1 Setup    ***************************
    
    ' RCON: Reset Control Register
    '
    	Symbol IPEN = RCON.7							' Interrupt Priority Enable bit
    													'	1 = Enable priority levels on interrupts
    													'	0 = Disable priority levels on interrupts
    													
    '---------------------------------------------------------------------------
    
    	INTCON =  0										' Disable Interrupts (just in case)
    '
    ' Setup TIMER0
    '
    	T0PS2 = 0										' \
    	T0PS1 = 0                                       '   TIMER0 Prescaler to 1:4
    	T0PS0 =	0                                       ' /
    	PSA = 0											' Assign the prescaler
    	T0CS = 0										' Increment on the internal Clk
    	T0SE = 0                                        ' 0 = Increment On low-to-high transition On T0CKI pin
        T08BIT = 0										' TIMER0 is configured as a 16-bit counter
    	TIMER0 = 0										' Clear TIMER0
    
    	TMR0ON = 1 										' Enable TIMER0  
    	TMR0IE = 1
    	                                                ' Interrrupt Priorities
    	TMR0IP = 0
    	IPEN   = 0
        												
    
    
    '*******************************  Constants ***************************  
    
    IntCount = 32                       ' Initialise IntCount to 32
    DutyCycle0 = 0                      ' \
    DutyCycle1 = 0                      '   Clear the Duty Cycle Variables
    DutyCycle2 = 0                      ' /  
    Symbol True = 1
    Symbol False = 0	
    Symbol DTA PORTB.2
    Symbol CLK PORTB.3
    Symbol Latch_E PORTB.4
    Symbol OE_Red PORTB.5
    Symbol OE_Green PORTB.6
    Symbol OE_Blue PORTB.7
    Symbol OE_Col PORTC.2
    Symbol EOM = 255'"`"
    Symbol Loop_START = 0
    Symbol Loop_END = 39
    
    '*******************************  Initial Values *************************** 
    
    TIMER0 = 65348
    Ph_Val = 255
    Phase = 0                           ' Initialise the sinusoidal pointer to 0  
    first_run_bit = 0
    Loop_bit = 1
    Speed = 3
    Latch_E = 1
    OE_Red = 1
    OE_Green = 1
    OE_Blue = 1
    OE_Col = 1
    Color_Red = 0
    Color_Green = 0
    Color_Blue = 0
    
     
         
    
               
    '------------------------------------------------------------------------------------------------------------------------------------  
    
    '------------------------------------------------------------------------------------------------------------------------------------
    
    '      StrN CHAR_String = "     <<<<<....MAPUATECH BLUETOOTH MOVING MESSAGE DISPLAY >>>>>>"
          StrN CHAR_String = "<<<<<MAPUATECH BLUETOOTH RGB LED MATRIX DISPLAY!!! ABCDEFGHIJKLMNOPQRSTUVWXYZ 1234567890 < > ! ? @ . , _ "
    
    
         ON_HARDWARE_INTERRUPT GoTo Int_Handler
    '     ON_HARDWARE_INTERRUPT GoTo PWM_InterruptHandler
         Declare FSR_CONTEXT_SAVE = Off
        
         GoSub CHANGE_CONTENT
         GoSub STORE_ARRAY
         
         INTCON = %11000000  ' enable interrupts
         
         GoTo Start
    
    ''''' S T O R E    C H A R A C T E R    C O L U M N    S E G M E N T S    I N    A R R A Y ''''''  
    
    STORE_ARRAY:
    
    
         For ind = 0 To CHAR_count                                ' Fill in Character Arrays with Segments 
                                                                           ' 5 characters at a time
             
             If  CHAR_String[ind] >= "A" And CHAR_String[ind] <= "_" Then
                 While Segment_holder <> EOM
                       GoSub UPPERcase
                       If Segment_holder = EOM Then Break
                       
                       If StrReload_bit = 1 Then
                          If CHAR_Reload = Segment_Count Then
                             Segment_Count = 0
                             CHAR_Column[Segment_Count] = Segment_holder
                             StrReload_bit = 0
                          EndIf
                       EndIf
                       If StrReload_bit = 0 Then 
                          If Segment_Count < 40 Then CHAR_Column[Segment_Count] = Segment_holder
                       EndIf       
    
                       Segment_Count = Segment_Count + 1
                       Segment = Segment + 1
                       If first_run_bit = 0 Then Total_Segment = Total_Segment + 1
                 Wend
                 Segment = 0
                 Segment_holder = 0
             EndIf
                
             If  CHAR_String[ind] >= "a" And CHAR_String[ind] <= "z" Then
                 While Segment_holder <> EOM
                       GoSub LOWERcase
                       If Segment_holder = EOM Then Break
                       
                       If StrReload_bit = 1 Then
                          If CHAR_Reload = Segment_Count Then
                             Segment_Count = 0
                             CHAR_Column[Segment_Count] = Segment_holder
                             StrReload_bit = 0
                          EndIf
                       EndIf
                       If StrReload_bit = 0 Then 
                          If Segment_Count < 40 Then CHAR_Column[Segment_Count] = Segment_holder
                       EndIf   
    
                       Segment_Count = Segment_Count + 1
                       Segment = Segment + 1
                       If first_run_bit = 0 Then Total_Segment = Total_Segment + 1
                 Wend
                 Segment = 0
                 Segment_holder = 0
             EndIf 
             
             If  CHAR_String[ind] >= " " And CHAR_String[ind] <= "@" Then
                 While Segment_holder <> EOM
                       GoSub NUMcase
                       If Segment_holder = EOM Then Break
                       
                       If StrReload_bit = 1 Then
                          If CHAR_Reload = Segment_Count Then
                             Segment_Count = 0
                             CHAR_Column[Segment_Count] = Segment_holder
                             StrReload_bit = 0
                          EndIf
                       EndIf
                       If StrReload_bit = 0 Then 
                          If Segment_Count < 40 Then CHAR_Column[Segment_Count] = Segment_holder
                       EndIf   
    
                       Segment_Count = Segment_Count + 1
                       Segment = Segment + 1
                       If first_run_bit = 0 Then Total_Segment = Total_Segment + 1
                 Wend
                 Segment = 0
                 Segment_holder = 0
             EndIf 
    
         Next ind
         
         If first_run_bit = 0 Then
            MSSG_END = Total_Segment 
            first_run_bit = 1
         EndIf
         
    Return
      
    Start: 
    
      
    
    Display_Char:
    
         Matrix_Column = 1
         Matrix_Column1 = 1
         Matrix_Column2 = 1
         Matrix_Column3 = 1
         Matrix_Column4 = 1
    
         For Loop = Loop_START To Loop_END            ' Create a loop of 10
         
             If Matrix_Column.9 <> 1 Then 
                SHOut DTA , CLK , lsbfirst , [ 0, 0, 0 ,0 ,0 ,0 ,0 ]
                SHOut DTA , CLK , lsbfirst , [ Matrix_Column ]
                Matrix_Column = Matrix_Column << 1
             EndIf
            
             If Matrix_Column.9 = 1 Then
                If Matrix_Column1.9 <> 1 Then 
                   SHOut DTA , CLK , lsbfirst , [ 0, 0, 0 ,0 ,0 ,0 ,0 ]
                   SHOut DTA , CLK , lsbfirst , [ Matrix_Column1 ,0 ]
                   Matrix_Column1 = Matrix_Column1 << 1
                EndIf
             EndIf
             
             If Matrix_Column1.9 = 1 Then
                If Matrix_Column2.9 <> 1 Then 
                   SHOut DTA , CLK , lsbfirst , [ 0, 0, 0 ,0 ,0 ,0 ,0 ]
                   SHOut DTA , CLK , lsbfirst , [ Matrix_Column2 ,0 ,0 ]
                   Matrix_Column2 = Matrix_Column2 << 1
                EndIf
             EndIf
             
             If Matrix_Column2.9 = 1 Then
                If Matrix_Column3.9 <> 1 Then 
                   SHOut DTA , CLK , lsbfirst , [ 0, 0, 0 ,0 ,0 ,0 ,0 ]
                   SHOut DTA , CLK , lsbfirst , [ Matrix_Column3 ,0 ,0 ,0 ]
                   Matrix_Column3 = Matrix_Column3 << 1
                EndIf
             EndIf
             
             If Matrix_Column3.9 = 1 Then
                If Matrix_Column4.9 <> 1 Then 
                   SHOut DTA , CLK , lsbfirst , [ 0, 0, 0 ,0 ,0 ,0 ,0 ]
                   SHOut DTA , CLK , lsbfirst , [ Matrix_Column4 ,0 ,0 ,0 ,0 ]
                   Matrix_Column4 = Matrix_Column4 << 1
                EndIf
             EndIf 
    
             If Matrix_Column4.9 = 1 Then
                Matrix_Column = 1 
                Matrix_Column1 = 1
                Matrix_Column2 = 1
                Matrix_Column3 = 1
                Matrix_Column4 = 1
             EndIf
    
             SHOut DTA , CLK , msbfirst , [  0, CHAR_Column[Loop] ]              'Total of 56 shifts using 74HC595 for rows of 40 
             PulsOut Latch_E,1                                                   'And MAX6971 For columns of 8 shifted 8 Bit more than needed 8-bit only
                                                                                 'To compensate For its 16 Bit Output
             OE_Col = 0                       'Turn on Column
             
    
             OE_Red = PWM0                       'Mix Colors
             OE_Green = PWM1
             OE_Blue = PWM2
    '         DelayUS 200
    '         OE_Red = 1
    '         OE_Green = Color_Green
    '         OE_Blue = 1
    '         DelayUS 200
    '         OE_Red = 1
    '         OE_Green = 1
    '         OE_Blue = Color_Blue
    '         DelayUS 200
             DelayUS 1000
             
             OE_Col = 1                               ' Turn off Everything 
             OE_Col = 0
             OE_Red = 1
             OE_Green = 1
             OE_Blue = 1
    '         OE_Col = 0
    
    
            If BeginPWM = True Then
               BeginPWM = False
               Ph_Val = Ph_Val >> 1            ' Make the value 7-bits wide
               Ph_Val = Ph_Val + 1         	' Add the offset
               Phase = Phase + Ph_Val          ' Add this to the Phase variable
        '
        ' To get the three duty cycle values, The upper 7-bits of Phase are used as a lookup index to the sine table.
        ' Offsets of $55 (120 degrees) and $AA (240 degrees) are used for the 2nd and 3rd duty cycles.
        '
        ' Phase 1
               Temp = Phase.HighByte >> 1      ' Make the value 7-bits wide
        	   GoSub GetSin                    ' Sine value returned in Temp
        	   DutyCycle0 = Temp               ' Place the Sine value into DutyCyle0
        '
        ' Phase 2
               Temp = Phase.HighByte >> 1      ' Make the value 7-bits wide
               Temp = Temp + $55               ' Phase2 = Phase1 + $55 for the first phase shift of 120 degree
               GoSub GetSin                    ' Sine value returned in Temp
        	   DutyCycle1 = Temp               ' Place the Sine value into DutyCyle1
        '
        ' Phase 3
               Temp = Phase.HighByte >> 1      ' Make the value 7-bits wide
               Temp = Temp + $AA               ' Phase3 = Phase1 + $AA for the second phase shift of 240 degree
               GoSub GetSin                    ' Sine value returned in Temp
        	   DutyCycle2 = Temp               ' Place the Sine value into DutyCyle2
            EndIf
    
         Next Loop
         
         
         
    '     If Loop_bit = 1 Then Loop_COUNT = Loop_COUNT + 1
                       
         If Loop_COUNT = Speed Then
            Loop_COUNT = 0
            CHAR_Reload = CHAR_Reload + 1
            If CHAR_Reload > MSSG_END Then 
               CHAR_Reload = 0
               CHAR_count = 0                    ' Empty total character holder
               GoSub CHANGE_CONTENT
            EndIf
         EndIf
         
         
         If CHAR_Reload <> dummy Then
            dummy = CHAR_Reload
            StrReload_bit = 1
            Segment_Count = 0
            GoSub STORE_ARRAY
         EndIf
    
    GoTo Start
    
    CHANGE_CONTENT:       ' "                                              "
    
         For ind = 0 To 255
             If CHAR_String[ind] = $00 Or CHAR_String[ind] = $FF Then Break
             CHAR_count = CHAR_count + 1
         Next ind
    
    Return  
    
    
    NUMcase:
            Select Case CHAR_String[ind]  
                Case " " 
                    LookUp Segment,[$00,$00,$00,$00,$00,EOM],Segment_holder	
                Case "1" 
                    LookUp Segment,[$00, $42, $7F, $40, $00, $00, EOM],Segment_holder			
                Case "2" 
                    LookUp Segment,[$42, $61, $51, $49, $46, $00, EOM],Segment_holder  	
                Case "3" 
                    LookUp Segment,[$21, $41, $45, $4B, $31, $00, EOM],Segment_holder 
                Case "4" 
                    LookUp Segment,[$18, $14, $12, $7F, $10, $00, EOM],Segment_holder  
                Case "5" 
                    LookUp Segment,[$27, $45, $45, $45, $39, $00, EOM],Segment_holder
                Case "6" 
                    LookUp Segment,[$3C, $4A, $49, $49, $30, $00, EOM],Segment_holder 
                Case "7"
                    LookUp Segment,[$01, $71, $09, $05, $03, $00, EOM],Segment_holder
                Case "8" 
                    LookUp Segment,[$36, $49, $49, $49, $36, $00, EOM],Segment_holder 
                Case "9" 
                    LookUp Segment,[$06, $49, $49, $29, $1E, $00, EOM],Segment_holder   
                Case "0" 
                    LookUp Segment,[$3E, $51, $49, $45, $3E, $00, EOM],Segment_holder  
                Case ":" 
                    LookUp Segment,[$00, $36, $36, $00, EOM],Segment_holder 
                Case "<" 
                    LookUp Segment,[$00, $08, $14, $22, $41, $00, EOM],Segment_holder   
                Case ">" 
                    LookUp Segment,[$41, $22, $14, $08, $00, $00, EOM],Segment_holder
                Case "?" 
                    LookUp Segment,[$02, $01, $51, $09, $06, $00, EOM],Segment_holder 
                Case "!" 							
                    LookUp Segment,[$5F,$00,EOM],Segment_holder
                Case "."							
                    LookUp Segment,[$60,$60,$00,EOM],Segment_holder
                Case ","							
                    LookUp Segment,[$80,$E0,$60,$00,EOM],Segment_holder
                Case "@" 
                    LookUp Segment,[$32, $49, $79, $41, $3E, $00, EOM],Segment_holder 
                Case Else						
                    LookUp Segment,[$00,EOM],Segment_holder 					
            End Select
    Return
    
    
    UPPERcase:
            Select Case CHAR_String[ind]               
                Case "A" 
                    Segment_holder = LookUp Segment,[$7E, $11, $11, $11, $7E, $00, EOM]			
                Case "B" 
                    Segment_holder = LookUp Segment,[$7F, $49, $49, $49, $36, $00, EOM]  	
                Case "C" 
                    Segment_holder = LookUp Segment,[$3E, $41, $41, $41, $22, $00, EOM] 'same as the other syntax below!!! 
                Case "D" 
                    LookUp Segment,[$7F, $41, $41, $22, $1C, $00, EOM],Segment_holder  
                Case "E" 
                    LookUp Segment,[$7F, $49, $49, $49, $41, $00, EOM],Segment_holder
                Case "F" 
                    LookUp Segment,[$7F, $09, $09, $01, $01, $00, EOM],Segment_holder 
                Case "G"
                    LookUp Segment,[$3E, $41, $41, $51, $32, $00, EOM],Segment_holder
                Case "H" 
                    LookUp Segment,[$7F, $08, $08, $08, $7F, $00, EOM],Segment_holder 
                Case "I" 
                    LookUp Segment,[$41, $7F, $41, $00, EOM],Segment_holder   
                Case "J" 
                    LookUp Segment,[$20, $40, $41, $3F, $01, $00, EOM],Segment_holder  
                Case "K" 
                    LookUp Segment,[$7F, $08, $14, $22, $41, $00, EOM],Segment_holder 
                Case "L" 
                    LookUp Segment,[$7F, $40, $40, $40, $40, $00, EOM],Segment_holder   
                Case "M" 
                    LookUp Segment,[$7F, $02, $04, $02, $7F, $00, EOM],Segment_holder
                Case "N" 
                    LookUp Segment,[$7F, $04, $08, $10, $7F, $00, EOM],Segment_holder 
                Case "O" 
                    LookUp Segment,[$3E, $41, $41, $41, $3E, $00, EOM],Segment_holder 
                Case "P" 
                    LookUp Segment,[$7F, $09, $09, $09, $06, $00, EOM],Segment_holder 
                Case "Q" 
                    LookUp Segment,[$3E, $41, $51, $21, $5E, $00, EOM],Segment_holder  
                Case "R" 
                    LookUp Segment,[$7F, $09, $19, $29, $46, $00, EOM],Segment_holder 
                Case "S" 
                    LookUp Segment,[$46, $49, $49, $49, $31, $00, EOM],Segment_holder
                Case "T" 
                    LookUp Segment,[$01, $01, $7F, $01, $01, $00, EOM],Segment_holder   
                Case "U" 
                    LookUp Segment,[$3F, $40, $40, $40, $3F, $00, EOM],Segment_holder  
                Case "V"              
                    LookUp Segment,[$1F, $20, $40, $20, $1F, $00, EOM],Segment_holder 
                Case "W" 
                    LookUp Segment,[$7F, $20, $18, $20, $7F, $00, EOM],Segment_holder  
                Case "X" 
                    LookUp Segment,[$63, $14, $08, $14, $63, $00, EOM],Segment_holder 
                Case "Y" 
                    LookUp Segment,[$03, $04, $78, $04, $03, $00, EOM],Segment_holder 
                Case "Z" 
                    LookUp Segment,[$61, $51, $49, $45, $43, $00, EOM],Segment_holder 
                Case "_" 
                    LookUp Segment,[$80, $80, $80, $80, $80, $00, EOM],Segment_holder 
                Case Else						                                       
                    LookUp Segment,[$00,EOM],Segment_holder 				
            End Select
    Return
            
            
    LOWERcase:
            Select Case CHAR_String[ind]               
                Case "a" 
                    Segment_holder = LookUp Segment,[$7E, $11, $11, $11, $7E, $00, EOM]			
                Case "b" 
                    Segment_holder = LookUp Segment,[$7F, $49, $49, $49, $36, $00, EOM]  	
                Case "c" 
                    Segment_holder = LookUp Segment,[$3E, $41, $41, $41, $22, $00, EOM] 'same as the other syntax below!!! 
                Case "d" 
                    LookUp Segment,[$7F, $41, $41, $22, $1C, $00, EOM],Segment_holder  
                Case "e" 
                    LookUp Segment,[$7F, $49, $49, $49, $41, $00, EOM],Segment_holder
                Case "f" 
                    LookUp Segment,[$7F, $09, $09, $01, $01, $00, EOM],Segment_holder 
                Case "g"
                    LookUp Segment,[$3E, $41, $41, $51, $32, $00, EOM],Segment_holder
                Case "h" 
                    LookUp Segment,[$7F, $08, $08, $08, $7F, $00, EOM],Segment_holder 
                Case "i" 
                    LookUp Segment,[$41, $7F, $41, $00, EOM],Segment_holder   
                Case "j" 
                    LookUp Segment,[$20, $40, $41, $3F, $01, $00, EOM],Segment_holder  
                Case "k" 
                    LookUp Segment,[$7F, $08, $14, $22, $41, $00, EOM],Segment_holder 
                Case "l" 
                    LookUp Segment,[$7F, $40, $40, $40, $40, $00, EOM],Segment_holder   
                Case "m" 
                    LookUp Segment,[$7F, $02, $04, $02, $7F, $00, EOM],Segment_holder
                Case "n" 
                    LookUp Segment,[$7F, $04, $08, $10, $7F, $00, EOM],Segment_holder 
                Case "o" 
                    LookUp Segment,[$3E, $41, $41, $41, $3E, $00, EOM],Segment_holder 
                Case "p" 
                    LookUp Segment,[$7F, $09, $09, $09, $06, $00, EOM],Segment_holder 
                Case "q" 
                    LookUp Segment,[$3E, $41, $51, $21, $5E, $00, EOM],Segment_holder  
                Case "r" 
                    LookUp Segment,[$7F, $09, $19, $29, $46, $00, EOM],Segment_holder 
                Case "s" 
                    LookUp Segment,[$46, $49, $49, $49, $31, $00, EOM],Segment_holder
                Case "t" 
                    LookUp Segment,[$01, $01, $7F, $01, $01, $00, EOM],Segment_holder   
                Case "u" 
                    LookUp Segment,[$3F, $40, $40, $40, $3F, $00, EOM],Segment_holder  
                Case "v"              
                    LookUp Segment,[$1F, $20, $40, $20, $1F, $00, EOM],Segment_holder 
                Case "w" 
                    LookUp Segment,[$7F, $20, $18, $20, $7F, $00, EOM],Segment_holder  
                Case "x" 
                    LookUp Segment,[$63, $14, $08, $14, $63, $00, EOM],Segment_holder 
                Case "y" 
                    LookUp Segment,[$03, $04, $78, $04, $03, $00, EOM],Segment_holder 
                Case "z" 
                    LookUp Segment,[$61, $51, $49, $45, $43, $00, EOM],Segment_holder 
                Case Else						
                    LookUp Segment,[$00,EOM],Segment_holder 				
            End Select
    Return
    
    
    GetSin:
    	Temp = Temp & %01111111             ' Make sure only 7-bits are present
        Temp = LookUp Temp,[16,17,17,18,19,20,20,21,22,22,23,24,24,25,26,26,27,27,28,28,28,29,29,_
    	        30,30,30,30,31,31,31,31,31,31,31,31,31,31,31,30,30,30,30,29,29,28,28,_
    	        28,27,27,26,26,25,24,24,23,22,22,21,20,20,19,18,17,17,16,15,15,14,13,_
    	        12,12,11,10,10,09,08,08,07,06,06,05,05,04,04,04,03,03,02,02,02,02,01,_
    	        01,01,01,01,01,01,01,01,01,01,02,02,02,02,03,03,04,04,04,05,05,06,06,_
    	        07,08,08,09,10,10,11,12,12,13,14,15,15]
    Return
            
            
            
            
    ' -----[ Interrupt Handler ]-------------------------------------------------------------
    
    Int_Handler:
    'HIGH_INT_SUB_start
    USART_Int: 
        INTCON = %00000000 
        If PIR1.5 = 1 Then  
           If TMR0IF = 1 Then PWM0 = 1 ' this test if my TMR0IF flag is setting off and and it sets!!!
           PIE1.5 = 0
           Context SAVE
        
                If RCSTA.1 = 1 Then
                    WREG = RCREG
                    RCSTA.4 = 0
                    RCSTA.4 = 1
                    GoTo USART_RECEIVE_EXIT
                EndIf
        
                
        '        HSerIn 250,USART_RECEIVE_EXIT, [ Wait("@msg "), Str BytesIn ] 
                HSerIn 10000,Just_Rx,[ Wait("@"), Str BytesIn ]
        '        HSerIn [ Str BytesIn ]
         
        Just_Rx:               
                
                For ind = 0 To 3 
                    A_Holder [ind] = BytesIn [ind]
                Next ind
                
                A_Holder [3] = " "
                S_Holder = Str A_Holder
                
                
        '        HSerOut [str BytesIn]
                
                If S_Holder = "msg " Then GoTo MSSG_RECEIVE
                
                If S_Holder = "ryt " Then Color_Red = Color_Red ^ 1
                      
                If S_Holder = "lft " Then Color_Green = Color_Green ^ 1
                   
                If S_Holder = "fwd " Then Color_Blue = Color_Blue ^ 1
                
                If S_Holder = "bck " Then Loop_bit = Loop_bit ^ 1
        
                GoTo USART_RECEIVE_EXIT
                   
              
        MSSG_RECEIVE:
    
                For ind = 0 To 255
                    CHAR_String[ind] = BytesIn[ind+5]' + NULL_String'Str$ (Dec null)
                Next ind
                        
                For ind = 0 To 255
                    BytesIn[ind] = $00
                Next ind   
        
        '        DelayMS 1000
        '        HSerOut [ Str CHAR_String ]
        '        hserout [S_Holder]
                
                first_run_bit = 0
                StrReload_bit = 0
                Segment_Count = 0
                Total_Segment = 0
                CHAR_Reload = 0
                Loop_COUNT = 0
                
                GoSub CHANGE_CONTENT
                GoSub STORE_ARRAY
                
                For ind = 0 To 3 
                    A_Holder [ind] = $00
                Next ind
        
        USART_RECEIVE_EXIT:
                
                While PIR1.5 = 1                                        ' Keep reading until RCIF is clear to flush buffer
                      null = RCREG                                       ' after EOM is received
                Wend
                
                PIE1.5 = 1
                INTCON = %11000000
        Context Restore 
        
        Else
        
        EndIf
            
            
        
    'HIGH_INT_SUB_END
            
    '--------------------------------------------------------------------------------------------
    
    'low_INT_SUB_START
    PWM_InterruptHandler:
    'Int_Handler:
    
    
        If TMR0IF = 1 Then
           INTCON = %00000000
           PWM0 = 1
           TMR0ON = 0
           Context SAVE
        
            '--------------------------------------------------------------------------------------------
            ' Interrupt Handler for three software PWM signals using the Timer0 interrupt. 
            ' The resolution is 6 bits per channel (0 to 31)
            '
            ' Input     : DutyCycle0, DutyCycle1, and DutyCycle1 hold the 6-bit Duty Cycles for channels 1 to 3
            '           : BeginPWM is true when the interrupt is able to have it's duty cycle variables altered
            '
    'PWM_InterruptHandler:   
            	TIMER0 = 65348 '35537                           ' Write TIMER0 to setup next interrupt interval 
            '
            'State Machine for PWM starts from here
            '
                Dec IntCount                        ' Decrement the IntCount variable
                If IntCount = 0 Then                ' If IntCount is 0, then it is time to start a new PWM signal period
                    PWM0 = 1				        ' \
            	    PWM1 = 0                        '   Set all PWM output pins low
            	    PWM2= 0                        ' / 
            	    IntCount = 32					' Initialise IntCount to 32
            	    BeginPWM = True			        ' Set flag for main software loop
                Else                                ' Otherwise.. if IntCount is not zero then check the DutyCycle of the signal
                    '
                    ' If it's not the beginning of the PWM period, we need to compare each DutyCycle to the value of IntCount.
                    ' This is done by performing a subtraction and checking to see whether the result is 0.  
                    ' When a match occurs, the output pin for the PWM channel is set to 0.
                    '
            	    movf DutyCycle0,W
            	    subwf IntCount,W
            	    btfsc STATUS,Z                  ' Is IntCount - DutyCycle0 = 0?
                    PWM0 = 1				        ' Yes so set output pin to 1.
            
            	    movf DutyCycle1,W		
            	    subwf IntCount,W			
            	    btfsc STATUS,Z                  ' Is IntCount - DutyCycle1 = 0?
                    PWM1 = 1				        ' Yes so set output pin to 1
            
            	    movf DutyCycle2,W			
            	    subwf IntCount,W			
            	    btfsc STATUS,Z                  ' Is IntCount - DutyCycle2 = 0?
            	    PWM2 = 1				        ' Yes so set output pin to 1
                EndIf
        '        TIMER0 = 99                           ' Write TIMER0 to setup next interrupt interval
            	TMR0IF = 0			                ' Clear the T0IF bit in the INTCON register
            	TMR0ON = 1
                INTCON = %11000000
        Context Restore     	                    ' Context restore and exit the interrupt
       	
        EndIf
                        
    'low_INT_SUB_END
    
    End

  • Attention

    This valuable resource relies upon the very small amount of revenue generated by displaying online advertisements to our visitors.

    The advertisements we display are relevant to this web site and your browsing history

    Please consider supporting us by disabling your ad blocker.


    Note: Some users have reported issues related to ad-blockers rendering parts of this wesite unusable,
    where possible we will rectify the issues to enable you to use this resource with adblocking enabled.

    If you can, please report issues in the forum area WebSite / Forum Issues


    Thank you for your attention.

  • #54
    leisryan
    Guest leisryan's Avatar

    0 Not allowed!

    Default RGB_LED TMR0-driven PWM from Les's example

    I did use some RGB_PWM routines from Les's TMR0 interrupt driven PWM sample I tried putting TMR0IF flag in my USART ISR to see if the TMR0IF flag is toggling and I found that it is very well setting whenever an overflow occurs, just really confused why it's not pointing to my TMR0 ISR.....

    By the way I'm using the latest Beta version 3.3.4.8

  • Attention

    This valuable resource relies upon the very small amount of revenue generated by displaying online advertisements to our visitors.

    The advertisements we display are relevant to this web site and your browsing history

    Please consider supporting us by disabling your ad blocker.


    Note: Some users have reported issues related to ad-blockers rendering parts of this wesite unusable,
    where possible we will rectify the issues to enable you to use this resource with adblocking enabled.

    If you can, please report issues in the forum area WebSite / Forum Issues


    Thank you for your attention.

  • #55
    leisryan
    Guest leisryan's Avatar

    0 Not allowed!

    Default weird PIC18F4550 ram feedback

    and may I add another thingy, PDS reports a total 1k of ram only instead of 2k after compiling with the code

  • Attention

    This valuable resource relies upon the very small amount of revenue generated by displaying online advertisements to our visitors.

    The advertisements we display are relevant to this web site and your browsing history

    Please consider supporting us by disabling your ad blocker.


    Note: Some users have reported issues related to ad-blockers rendering parts of this wesite unusable,
    where possible we will rectify the issues to enable you to use this resource with adblocking enabled.

    If you can, please report issues in the forum area WebSite / Forum Issues


    Thank you for your attention.

  • #56
    leisryan
    Guest leisryan's Avatar

    0 Not allowed!

    Default

    anyone got a working TIMER0 and USART interrupt at the same time please help me out I appreciate it!!!

  • Attention

    This valuable resource relies upon the very small amount of revenue generated by displaying online advertisements to our visitors.

    The advertisements we display are relevant to this web site and your browsing history

    Please consider supporting us by disabling your ad blocker.


    Note: Some users have reported issues related to ad-blockers rendering parts of this wesite unusable,
    where possible we will rectify the issues to enable you to use this resource with adblocking enabled.

    If you can, please report issues in the forum area WebSite / Forum Issues


    Thank you for your attention.

  • #57
    galeforce9
    Guest galeforce9's Avatar

    0 Not allowed!

    Default

    Hi,

    I'm in a rush but one thing i noticed at the start of the first int routine

    INTCON = %00000000
    If PIR1.5 = 1 Then
    If TMR0IF = 1 Then PWM0 = 1 ' this test if my TMR0IF flag is setting off and and it sets!!!

    you are reseting intcon to 0 and then 2 lines down you test tmr0if to see if its a 1. You have declared tmr0if to be a part of intcon so could therefore never be valid.

    hope that helps a little.

    Ian D

  • Attention

    This valuable resource relies upon the very small amount of revenue generated by displaying online advertisements to our visitors.

    The advertisements we display are relevant to this web site and your browsing history

    Please consider supporting us by disabling your ad blocker.


    Note: Some users have reported issues related to ad-blockers rendering parts of this wesite unusable,
    where possible we will rectify the issues to enable you to use this resource with adblocking enabled.

    If you can, please report issues in the forum area WebSite / Forum Issues


    Thank you for your attention.

  • #58
    leisryan
    Guest leisryan's Avatar

    0 Not allowed!

    Default Ouch!!!!

    Ahhhhhhhhhh Owsss must I get some more sleep!!! Thank you so so so so so so much!!!!!

  • Attention

    This valuable resource relies upon the very small amount of revenue generated by displaying online advertisements to our visitors.

    The advertisements we display are relevant to this web site and your browsing history

    Please consider supporting us by disabling your ad blocker.


    Note: Some users have reported issues related to ad-blockers rendering parts of this wesite unusable,
    where possible we will rectify the issues to enable you to use this resource with adblocking enabled.

    If you can, please report issues in the forum area WebSite / Forum Issues


    Thank you for your attention.

    Thread Information

    Users Browsing this Thread

    There are currently 1 users browsing this thread. (0 members and 1 guests)

       

    Similar Threads

    1. [SOLVED !] capture interrupt during a Timer1 (overflow) interrupt
      By Joerideman in forum Proton Plus Compiler v3
      Replies: 4
      Last Post: 20th May 2012, 13:44
    2. Interrupt help
      By chuckieboy in forum Proton Plus Compiler v3
      Replies: 3
      Last Post: 4th May 2010, 06:13
    3. Replies: 12
      Last Post: 18th January 2009, 22:59
    4. Interrupt
      By dolci in forum In Circuit Debugger
      Replies: 2
      Last Post: 9th September 2006, 14:57
    5. [SOLVED !] Sorry to Interrupt
      By NewBoy in forum Pre-Sales and Upgrade Questions
      Replies: 10
      Last Post: 19th January 2006, 22:06

    Members who have read this thread since 31st October 2019, 17:01 : 0

    Actions :  (Set Date)  (Clear Date)

    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