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

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
09/19/06 18:16
Read: times


 
#124600 - Ah, slightly different
Responding to: ???'s previous message
"the issue here is that any '51 input that float (in your case no key) will be high, thus you can not see "which one restores the row to a high""
But I CAN see which one restores it to a high, because my fat finger is still connecting the column (which is low) to the row (thus making the row low) when my code tells the columns to go high in turn. After column is set high, it checks P1 (which contains all the inputs). If P1 matches the snapshot I took when the row initially went low, then we know that setting this particular column high had no effect, and try the next column. When it finally gets to the right column, the row which was pulled low when I pressed (and am still pressing, because this is obviously happening pretty quick here) will be restored to a high, because the column I'm still connecting it to just went high. This time when checking P1 we see that all rows are high, and we know that I'm still pressing a button, therefore we know we've found the right column.
This is all working when outputs (columns) are Push-Pull.
Decoding breaks down when I make the columns open-drain. From reading your post about speed though, and doing some additional reading, I think this may be due to the rise time of the pullup.
I think I see how your slightly different column scanning method may offer some advantages. I think some experimentation is in order.
I really appreciate your taking the time to help me with this. I'm learning a lot.

List of 60 messages in thread
TopicAuthorDate
AND gate, INT0            01/01/70 00:00      
   Some thoughts            01/01/70 00:00      
      Should have stated..            01/01/70 00:00      
         Pullups            01/01/70 00:00      
            I'm a DUMMY            01/01/70 00:00      
   Port modes            01/01/70 00:00      
      Thanks, Kai            01/01/70 00:00      
      I was wrong again            01/01/70 00:00      
         are you too fast?            01/01/70 00:00      
            OK            01/01/70 00:00      
            does this look too fast?            01/01/70 00:00      
               depends on            01/01/70 00:00      
                  idea            01/01/70 00:00      
                     no            01/01/70 00:00      
                        but            01/01/70 00:00      
                           are you looking for \'pressed key high\'?            01/01/70 00:00      
                              Detecting            01/01/70 00:00      
                                 yes            01/01/70 00:00      
                                    Ah, slightly different            01/01/70 00:00      
                                       I tried to read what you posted            01/01/70 00:00      
                                          to clarify            01/01/70 00:00      
                                             overly complicated KISS            01/01/70 00:00      
                                                when..            01/01/70 00:00      
                                             that will be all rows OR all columns plus one of t            01/01/70 00:00      
                                                I'll try again            01/01/70 00:00      
                                                   got it, but            01/01/70 00:00      
                                                   Heavily unsuited!            01/01/70 00:00      
                                                      Well            01/01/70 00:00      
                                                      OR            01/01/70 00:00      
                                                         Still unsuited...            01/01/70 00:00      
                                                            I Think....            01/01/70 00:00      
                                                               and now you will make a better one and ....            01/01/70 00:00      
                                                                  If it's bad, toss it!            01/01/70 00:00      
                                                               No shame at all!            01/01/70 00:00      
                                                            well, any decent code will do the two steps            01/01/70 00:00      
               too fast?            01/01/70 00:00      
   why to the hell ?            01/01/70 00:00      
      Before sending somebody to hell, read carefully!            01/01/70 00:00      
         leave idle by timer            01/01/70 00:00      
            debounce            01/01/70 00:00      
   Other method            01/01/70 00:00      
      Oh            01/01/70 00:00      
   a language lesson and some general co0mments            01/01/70 00:00      
      Don't be silly...            01/01/70 00:00      
         as I said            01/01/70 00:00      
            Erik, please!            01/01/70 00:00      
               I said nothing about an AND gate            01/01/70 00:00      
                  Have fun...            01/01/70 00:00      
                  well,            01/01/70 00:00      
                     No, it does not            01/01/70 00:00      
                     You are right, Mark            01/01/70 00:00      
                        if so, wht are there two symbols ?            01/01/70 00:00      
                           So what?            01/01/70 00:00      
                              because some of us want to show the intention            01/01/70 00:00      
                                 Intentions            01/01/70 00:00      
                                    chip and function            01/01/70 00:00      
                                       Sorry, but this becomes more and more ridiculous            01/01/70 00:00      
                                          that a correct description makes the function            01/01/70 00:00      
      wait a minute...            01/01/70 00:00      
   I just recall            01/01/70 00:00      

Back to Subject List