Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
05/30/10 12:07
Read: times


 
#176321 - ES1 is non-standard
Responding to: ???'s previous message
The .LST file shows:
  578: 1  0234	D2 AE		        setb  ES1  ; Enable port  1  interrupts.
  579: 1  0236	D2 AF			setb EA ; Global interrupt enable.
 
This looks correct to me.

I wonder whether this is a priority problem. My program never writes to the IP register or any of its bits. This register is supposed to be initialised to zero on reset, which means that interrupts will use their "natural priority". Is this correct?

If so this means that serial port 0 can interrupt the serial port 1 interrupt handler but not the reverse. This should not make any difference in my case since I've only got the serial port 1 interrupt enabled.

From reading the User Guide I conclude that the programmer has no direct control over the priority level that the processor is running at. It will automatically change to the priority level of the interrupt when it vectors to the handler (meaning that it can only be interrupted by a higher priority interrupt), and it will automatically return to the previous priority level when the RETI is executed. Is this correct?

If it is, I can't see anything wrong with the priority scheme I'm using. When running the main loop, the processor should be at the lowest priority. Therefore the RI1 or TI1 bits ought to be able to interrupt it, whatever state the PS1 bit is in.

What am I missing?

Thanks - Rowan


List of 38 messages in thread
TopicAuthorDate
Trouble with interrupt driven comms on 80C320 serial port 1            01/01/70 00:00      
   CLR ES1?            01/01/70 00:00      
      Good idea but not the solution            01/01/70 00:00      
         As Erik posted, may be the etc. part            01/01/70 00:00      
   I cant' tell if there is a problem in ...            01/01/70 00:00      
      Which ... are you worrying about?            01/01/70 00:00      
         How about commenting "etc"            01/01/70 00:00      
         please post as is, not all the ...            01/01/70 00:00      
            Again without the conditionals            01/01/70 00:00      
               this is NOT an ISR            01/01/70 00:00      
                  Why will jnb RI,$ screw up?            01/01/70 00:00      
                     stick a state machine in the ISR            01/01/70 00:00      
                        To interrupt or not...            01/01/70 00:00      
                           an example            01/01/70 00:00      
                              Avoid infinite loops like the plague            01/01/70 00:00      
                                 Back to the subject - why won't it interrupt?            01/01/70 00:00      
                                    Serial Port Interrupts            01/01/70 00:00      
                                       Yes, I think I've done this correctly            01/01/70 00:00      
                                          Vector Address...            01/01/70 00:00      
                                             I think I've done this correctly...            01/01/70 00:00      
                                                you had me there            01/01/70 00:00      
                                                   Serial port, not port            01/01/70 00:00      
                                          maybe not            01/01/70 00:00      
                                             ES1 is non-standard            01/01/70 00:00      
                                                probably the most common misumderstanding            01/01/70 00:00      
                                                   Thanks for clarification...            01/01/70 00:00      
                                             It works without interrupts...            01/01/70 00:00      
                                                then ...            01/01/70 00:00      
                                                   Even Better ...            01/01/70 00:00      
                                    maybe it does            01/01/70 00:00      
                                       Two things argue against this...            01/01/70 00:00      
   Dunno, but that's a very useful instruction            01/01/70 00:00      
   Dunno..            01/01/70 00:00      
      I have problem with serial port 1 on ds89c450 (www.maxim-ic            01/01/70 00:00      
         MUCH better description needed            01/01/70 00:00      
            not it is not language            01/01/70 00:00      
               Which register bank are you using?            01/01/70 00:00      
                  yes it works now            01/01/70 00:00      

Back to Subject List