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

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
03/17/09 00:38
Modified:
  03/17/09 01:40

Read: times


 
#163513 - Try this, Aamir...
Responding to: ???'s previous message
I have thought about your application a bit and wrote a piece of code.

But first some basic questions:

How to fabricate the pixel matrix?

A text containing 50 characters yields a 50 x 6 = 300 bit =38 bytes wide pixel pattern per pixel row, if each character is displayed by the help of 5 x 7 matrix and a 6. pixel column is used to separate consecutive characters from another. The 8. pixel row can be used to underline certain characters.

You have additionally to think about how to separate the end of text from the begin when scrolling. So, additional bytes should be added to the above pixel pattern. To allow the display to become entirely empty after the text has been fully scrolled, at least 80 bit = 10 bytes should be added to the pattern. These bytes need not to contain "blanks", but can also show dashes, dots or something similar. By this your pixel matrix contains two consecutive blocks of pixels patterns, the "blank" pixel pattern and the "text" pixel pattern. In the following assume, that the pixel matrix starts with the blank pixel pattern.


How to store the pixel matrix in code memory?

So, you end up with a pixel matrix of 8 pixel rows each containing 48 bytes. This pixel matrix, Aamir, you want to store in the code memory. This is a good idea, as the 8 x 48 byte = 384 byte wide pixel matrix cannot reside in a standard 8052's RAM anyway. The disadvantage is that only a finite set of messages can be displayed with a programmed micro.

As you intend to use shift registers for displaying entire rows, the pixel pattern must be stored in a manner that each byte represents a sequence of consecutive pixels of a pixel row. Then the shiftings can be done very easily. Storing bytes containing pixel columns, on the other hand, would only be wise, if you intend to drive pixel columns instead of pixel rows.

It's a good idea to store the pixel pattern in the code memory in the following manner. At the first memory location you store the left-most byte of uppermost pixel row of pixel pattern. Second memory location contains the consecutive byte of uppermost pixel row. The 48. memory location contains the right-most byte of uppermost pixel row. The 49. memory location will have the left-most byte of second pixel row. And so on. Don't forget, that the left-most 10 bytes of each row represent the blank pixel pattern.


How to do the shiftings?

The idea is, not to shift the whole pixel matrix of 48 bytes = 384 bits into the pixel row shift register, but to take only those bytes that actually appear on the 10 byte = 80 bit wide display. Then, only 80...87 shiftings have to be accomplished instead of up to 384, which would take way too much time!

To find out which bytes have to be taken out of the pixel matrix for the shiftings and to find out how many shiftings have actually to be carried you must first define the shifting "Index". This index can be in the range 0...383, corresponding to the 384 bits of each pixel row.

Index = 0 means that the whole blank pixel pattern has been shifted into the display and that the text pattern is just not yet displayed. (One shifting more and the first text pixel column could be seen.) For the shifting the first 11 bytes of row have to be taken and 80 shiftings have to be done. (Actually, for Index = 0 you only need to take the first 10 bytes. But for most other Index you need to take 11 bytes, so you take 11 bytes for all Index.)

If Index = 1, then the first 11 bytes have to be taken and 81 shiftings have to be done. If Index = 2, again the first 11 bytes have to be taken but 82 shiftings have to be done. If Index = 3, again the first 11 bytes have to be taken but 83 shiftings have to be done.

The same procedure until Index = 7. But if Index = 8, then the 2. to the 12. bytes of pixel row have to be taken and 80 shiftings have to be done.

So, you see, if Index equals multiples of 8, then the 11 bytes wide pixel block for the shiftings wanders to the right by a step of one byte. You also see, that the shiftings count up from 80 to 87 all the time: If Index equals multiples of 8, then always 80 shiftings have to be done.

If the pixel block for the shiftings has reached the right end of pixel matrix, which happens for the first time when Index = 384 - 80 = 304, pixels from the begin of pixel row have to be taken again.

The code's task is now to get the right 11 pixel bytes into the RAM of micro and to feed the pixel row shift register (BU4094s). Everything with repect to this index.


How to do the scrolling?

By a simple timer controlled incrementing of Index.

Well, in the following code not everything is derived from Index actually, but some counters are running in parallel to the Index counter. You will find them very quickly when having a look at the code (I hope).

The code corresponds to your scheme with the BDX54C anode drivers, which I assume are driven by the Port0 lines. The 4094 shift register is fed by the micro via P1.0 (Data), P1.1 (Clock) and P1.2 (Strobe) lines.

The code feeds the AT89S52's internal watchdog and allows a display refresh rate of 130Hz.

Take care, the code isn't tested at all. Experiment with it and have fun!

;Scrolling software idea for a 8 x 80bit LED matrix. Through this LED
;matrix a much bigger pixel matrix is scrolled. 

;The pixel matrix contains 8 rows, each 48 bytes wide. The first 10 bytes
;represent the blank information, the remaining 38 bytes represent the
;text to be scrolled.

;From the pixel matrix, stored at address 7168, an 11 byte wide block is
;selected. The first 10 bytes of this block are fully shifted into the
;4096. From the 11th byte only a certain number (represented by "SHIFT"
;(=0..7)) is shifted into the 4094.

;The start address of this block depends on STRT_BYTE (=0..47),ROW_OFS_L,
;ROW_OFS_H (=0,48,96,144...336, by other words =ROW * 48) and the start
;address of pixel matrix (MATRX_STRT_L, MATRX_STRT_H).
;ROW (=0..7) defines the row to be shifted and displayed.

;The actual scroll position is represented by INDEX_L,INDEX_H (=0..383).
;This INDEX is "0", when the blank block is fully shifted into the 4094
;and the text is just not yet visible.

;REFRESH is incremented when a full set of 8 rows has been displayed.
;When REFRESH equals SCRL-RATE, then the display is scrolled by one
;pixel column. This is every 16 * 8 * 950µsec = 0.12sec here, assuming
;11.0592MHz clock speed. Adjust SCRL_RATE to change the scroll speed.




                $NOMOD51
                $INCLUDE (89s52.mcu)


                DATA_OUT        BIT     P1.0
                CLOCK           BIT     P1.1
                STROBE          BIT     P1.2

                ANODE_DRIV      DATA    30H
                INDEX_L         DATA    31H
                INDEX_H         DATA    32H
                REFRESH         DATA    33H
                ROW             DATA    34H
                ROW_OFS_L       DATA    35H
                ROW_OFS_H       DATA    36H
                SHIFT           DATA    37H
                STRT_BYTE       DATA    38H

                SCRL_RATE       EQU      16
                MATRX_STRT_L    EQU     00H 
                MATRX_STRT_H    EQU     1CH


                ORG 0
            
                SJMP Start

                ORG 002BH

Start:          MOV AUXR,#00011001B   ;AT89S52 specific status byte           
                MOV TMOD,#00000001B   ;Configure Timer 0 (Mode 1)
                MOV TH0,#252          ;Set 950µsec
                MOV TL0,#148   
                SETB TR0              ;Start Timer 0
                CLR CLOCK             ;Prepare the first shifting

Initialize:     CLR A                 ;Set registers to "0"    
                MOV STRT_BYTE,A       
                MOV ROW,A
                MOV ROW_OFS_L,A
                MOV ROW_OFS_H,A
                MOV INDEX_L,A
                MOV INDEX_H,A
                MOV REFRESH,A
                MOV SHIFT,A
                MOV ANODE_DRIV,#11111110B   ;Prepare ANODE_DRIV for first
                                            ;row.

Main_loop:      MOV WDTRST,#01EH      ;Feed the watchdog
                MOV WDTRST,#0E1H
                MOV R6,#10            ;10 pixel bytes to be selected and
                                      ;shifted.
                MOV R7,STRT_BYTE      ;Copy STRT_BYTE into R7
                MOV A,MATRX_STRT_L    ;Fabricate the start address of 11
                ADD A,ROW_OFS_L       ;bytes wide block.
                MOV DP0L,A            ;Feed the DPTR with the base address
                MOV A,MATRX_STRT_H    ;and use R7 as a "looping" address
                ADDC A,ROW_OFS_H      ;offset.
                MOV DP0H,A

Get_bytes:      MOV A,R7              ;R7 contains the address offset
                MOV AUXR1,#0          ;89S52 needs DPTR to be defined
                MOVC A,@A+DPTR        ;Fetch the pixel byte

                MOV R5,#8             ;All 8 bits of pixel byte
Shift_loop1:    RLC A                 ;Shift the pixel byte fully into
                MOV DATA_OUT,C        ;the 4094.    
                SETB CLOCK
                CLR CLOCK
                DJNZ R5,Shift_loop1   ;All 8 bits shifted?

                INC R7                ;Address the next pixel byte
                CJNE R7,#48,Repeat    ;If end of pixel matrix is reached,
                MOV R7,#0             ;fetch it from the begin again.

Repeat:         DJNZ R6,Get_bytes     ;First 10 pixel bytes shifted?

                MOV R5,SHIFT          ;Copy SHIFT into R5
                CJNE R5,#0,Last_byte  ;11th pixel byte to be shifted?
                SJMP Wait             ;11th pixel byte need not to be
                                      ;shifted into the 4094.                 
Last_byte:      MOV A,R7              ;R7 addresses the 11th pixel byte
                MOV AUXR1,#0          ;89S52 needs DPTR to be defined
                MOVC A,@A+DPTR        ;Fetch the 11th pixel byte

Shift_loop2:    RLC A                 ;11.pixel byte is partially shifted
                MOV DATA_OUT,C        ;into the 4094. SHIFT represents
                SETB CLOCK            ;the number of bits to be shifted.
                CLR CLOCK              
                DJNZ R5,Shift_loop2    

Wait:           JNB TF0,Wait          ;Timer 0 overrun?
                MOV P0,#255           ;Turn-off the anode drivers
                CLR TR0               ;Stop Timer 0
                CLR TF0               ;Reset timer flag bit (TF0)
                MOV TMOD,#00000001B   ;Configure Timer 0 (Mode 1)
                MOV TH0,#252          ;Set 950µsec
                MOV TL0,#148   
                SETB TR0              ;Start Timer 0
                SETB STROBE           ;Latch the new column data in 
                CLR STROBE            ;the 4094s.
                MOV A,ANODE_DRIV      ;Copy ANODE_DRIV into A
                MOV P0,A              ;Turn-on selected anode driver
                RL A                  ;Prepare ANODE_DRIV for next row
                MOV ANODE_DRIV,A
                INC ROW               ;Prepare next row
                MOV A,ROW_OFS_L       ;Fabricate next ROW_OFS_L/H address
                ADD A,#48
                MOV ROW_OFS_L,A
                MOV A,ROW_OFS_H
                ADDC A,#0
                MOV ROW_OFS_H,A
                MOV A,ROW
                CJNE A,#8,Go_back     ;All 8 rows shifted?
                CLR A                 ;8 rows shifted, so reset ROW
                MOV ROW,A             ;and ROW_OFS_L/H
                MOV ROW_OFS_L,A
                MOV ROW_OFS_H,A
                INC REFRESH           ;and increment REFRESH.
                MOV A,REFRESH
                CJNE A,SCRL_RATE,Go_back    ;Time to scroll?
                SJMP Prepare_scroll

Go_back:        LJMP Main_loop        ;Jump back and shift the next row

Prepare_scroll: MOV REFRESH,#0        ;Reset REFRESH
                MOV A,INDEX_L         ;Increment INDEX_L/H
                ADD A,#1
                MOV INDEX_L,A
                MOV A,INDEX_H
                ADDC A,#0
                MOV INDEX_H,A
                INC SHIFT             ;Increment SHIFT
                MOV A,SHIFT
                CJNE A,#8,Go_back     ;SHIFT to be reseted?
                MOV SHIFT,#0          ;Reset SHIFT and
                INC STRT_BYTE         ;increment STRT_BYTE.
                MOV A,INDEX_L         ;INDEX_L/H = 384?
                CJNE A,#128,Go_back   ;No,so go back and shift next row
                MOV A,INDEX_H
                CJNE A,#1,Go_back
                LJMP Initialize       ;INDEX_L/H = 384,so initialize and
                                      ;start all over again.


                org 7168

                DB 0,0,0,0,0,0,0,0,0,0   ;Uppermost row of pixel matrix
                DB 255,255,255,255,255   ;"0" represents the blank pixels,
                DB 255,255,255,255,255   ;"255" the character pixels.
                DB 255,255,255,255,255
                DB 255,255,255,255,255   ;Each row contains 48 bytes
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255
                DB 0,0,0,0,0,0,0,0,0,0   ;2.row of pixel matrix
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255
                DB 0,0,0,0,0,0,0,0,0,0   ;3.row of pixel matrix
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255
                DB 0,0,0,0,0,0,0,0,0,0   ;4.row of pixel matrix
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255
                DB 0,0,0,0,0,0,0,0,0,0   ;5.row of pixel matrix
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255
                DB 0,0,0,0,0,0,0,0,0,0   ;6.row of pixel matrix
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255
                DB 0,0,0,0,0,0,0,0,0,0   ;7.row of pixel matrix
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255
                DB 0,0,0,0,0,0,0,0,0,0   ;8.row of pixel matrix
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255,255,255
                DB 255,255,255


                end



Kai


List of 307 messages in thread
TopicAuthorDate
Scrolling Message in LED Display with 8051??            01/01/70 00:00      
   2 separate problems            01/01/70 00:00      
   the simple way            01/01/70 00:00      
      didnot get you            01/01/70 00:00      
         Standard circular buffer            01/01/70 00:00      
            Thanks            01/01/70 00:00      
               Flickering in scrolling            01/01/70 00:00      
                  Clip to viewport            01/01/70 00:00      
                     Testing on 8x8 display.            01/01/70 00:00      
                        Write fastest loop and count instructions            01/01/70 00:00      
                           Any other suggestions            01/01/70 00:00      
                              yes and no            01/01/70 00:00      
                                 Frankly speaking            01/01/70 00:00      
                                    time, time, time            01/01/70 00:00      
                              You should investigate old-style monochrome video adapters            01/01/70 00:00      
                                 but pretty close            01/01/70 00:00      
                                    not wishing to start a debate ...            01/01/70 00:00      
                                       pixel rate            01/01/70 00:00      
                                          Yes, that's true, but it's irrelevant            01/01/70 00:00      
                                             Persistence matters, and algorithm            01/01/70 00:00      
                                                I believe there's a difference in approach here            01/01/70 00:00      
                                                   Shift registers to drive rows, not columns.            01/01/70 00:00      
                                                      ...which is why they don'tfit this sort of application            01/01/70 00:00      
                                                         Think about pulse quota when multiplexing            01/01/70 00:00      
                                                            Yes, the multiplexing affects ultimate brightness ...            01/01/70 00:00      
                                                               never heard of 2 lines???            01/01/70 00:00      
                                                                  Yes, but most people can only read one at a time            01/01/70 00:00      
                                                                     16 pix            01/01/70 00:00      
                                                                        It's news to me ...            01/01/70 00:00      
                                                                           Good with forums            01/01/70 00:00      
                                                      Do you mean a REGISTERED shift register?            01/01/70 00:00      
                                                         Yes            01/01/70 00:00      
                                                            Absolutely!            01/01/70 00:00      
                                                         never seen one            01/01/70 00:00      
                                                      That's the answer i was looking for...            01/01/70 00:00      
                                       one can change the colour on an LED            01/01/70 00:00      
                                       a monochrome display has one LED per pixel            01/01/70 00:00      
                                          It is seldom so simple as one would like            01/01/70 00:00      
                                             I too read 8x8 as pixels/LEDs. However, probelm with scroll            01/01/70 00:00      
                                                Please leave that CRT            01/01/70 00:00      
                                                   But we area focused            01/01/70 00:00      
                                                   Chequebook time!            01/01/70 00:00      
                                                   You haven't told us anything useable!            01/01/70 00:00      
                                                      The Information            01/01/70 00:00      
                                                      The Information            01/01/70 00:00      
                                                         Mr. amir            01/01/70 00:00      
                                                      The Information            01/01/70 00:00      
                                                      The Information            01/01/70 00:00      
                                                      The Information            01/01/70 00:00      
                                                         Quoting Andy on this            01/01/70 00:00      
                                                            re the rating of "Quoting Andy on this"            01/01/70 00:00      
                                                               LOL            01/01/70 00:00      
                                                                  It was me, Per...            01/01/70 00:00      
                                                                     Feedback            01/01/70 00:00      
                                                                        I agree with you in all points, but...            01/01/70 00:00      
                                                                           I agree, Kai --- in most cases ...            01/01/70 00:00      
                                                                              Kick-starting threads do require some form of pushing            01/01/70 00:00      
                                                         That will be UGLY            01/01/70 00:00      
                                                            Not necessarily...            01/01/70 00:00      
                                                         That is not ALL the information.            01/01/70 00:00      
            Looked at circular buffer yet?            01/01/70 00:00      
   Has anyone looked at Allegro?            01/01/70 00:00      
      A specific chip for the shift-register solution            01/01/70 00:00      
         Think about total power loss            01/01/70 00:00      
            you tell me            01/01/70 00:00      
      the A6833 and similar offerings            01/01/70 00:00      
   Code, problem, information and schematic.            01/01/70 00:00      
      BU4094 is fast enough, but...            01/01/70 00:00      
         look at 74HC595            01/01/70 00:00      
            Yes, and not to forget the 74HC4094...            01/01/70 00:00      
               and 80 resistors            01/01/70 00:00      
                  Mickey Mousing?? Availibility!            01/01/70 00:00      
                     my absolute impression ...            01/01/70 00:00      
                        Almost total silence            01/01/70 00:00      
                           ??            01/01/70 00:00      
                              How to activate Aamir?            01/01/70 00:00      
                                 I don't want to activate Aamir!            01/01/70 00:00      
                                    Yes, most comments here are free-running without the OP            01/01/70 00:00      
                                       Maybe the wrong sorts of questions were asked            01/01/70 00:00      
                        Let's see what the O/P wants to do            01/01/70 00:00      
                           with the amount of effort the OP shows ....            01/01/70 00:00      
                              What you have failed to consider ...            01/01/70 00:00      
                                 did you read            01/01/70 00:00      
                                    Yes, I did!            01/01/70 00:00      
                        And my absolute impression is...            01/01/70 00:00      
                           why should I do that?            01/01/70 00:00      
                              I have to agree            01/01/70 00:00      
                  What does it cost? How many would be needed?            01/01/70 00:00      
                     Exactly!            01/01/70 00:00      
                     ST2221 EQUIVALENT            01/01/70 00:00      
                        It's not widely available in the developing world            01/01/70 00:00      
                           Max power loss at high ambient temperatures            01/01/70 00:00      
                              Interesting point ... but ...            01/01/70 00:00      
                                 8- or 16-bit drivers for different applications            01/01/70 00:00      
                           because            01/01/70 00:00      
                              Is this a chicken and egg sort of question?            01/01/70 00:00      
                                 Different chips for different problems            01/01/70 00:00      
                                 no, applea and oranges            01/01/70 00:00      
                                    Isn't that a design parameter?            01/01/70 00:00      
                                       Physics and practical realities            01/01/70 00:00      
                                          In some cases, perhaps LED's are not the right technology            01/01/70 00:00      
                                       and what does all that to do with ....            01/01/70 00:00      
                                          They have to remain within specified limits.            01/01/70 00:00      
                                             Still missing muxed concept            01/01/70 00:00      
                                                No ... I'm not missing the concept ...            01/01/70 00:00      
                                                   yes you are            01/01/70 00:00      
                                                      You're thinking too narrowly, methinks.            01/01/70 00:00      
                                                         no, you are muddling            01/01/70 00:00      
                                                            It's just another way to manage a big sign            01/01/70 00:00      
                                                               not so, back at ya            01/01/70 00:00      
                                                                  PWM or shorter on times.            01/01/70 00:00      
                                                                  There's more than one way to skin a cat            01/01/70 00:00      
                                                                     Start producing signs.            01/01/70 00:00      
                                                                        Those arguments are weak!            01/01/70 00:00      
                                                                           not for those that have an inkling of understanding            01/01/70 00:00      
                                                                              So ... how fast can you clock 'em?            01/01/70 00:00      
                                                                                 if you had read and not muddled....            01/01/70 00:00      
                                                                                    Not Bad ! That IS a lot more reasonable!            01/01/70 00:00      
                                                                                       why on earth would you want to do that            01/01/70 00:00      
                                                                                          If a little bit is good, sometimes more is better ...            01/01/70 00:00      
                                                                                             you might, I wouldn't            01/01/70 00:00      
                                                                                                I can envision such a thing ... but I don't build signs            01/01/70 00:00      
                                                                                                   I feel the need to SHOUT            01/01/70 00:00      
                                                                                                      Time to get back to scrolling            01/01/70 00:00      
                                                                                                         as long as the CC drives one pixel            01/01/70 00:00      
                                                                                                            Don't everyone love a DC-driven sign?            01/01/70 00:00      
                                                                                                               In the interest of discussion ...            01/01/70 00:00      
                                                                                                                  get your head out of your ....            01/01/70 00:00      
                                                                                                                     consider ALL the alternatives ...            01/01/70 00:00      
                                                                                                                        Inkling?            01/01/70 00:00      
                                                                                                                           It comes down to why this is being discussed            01/01/70 00:00      
                                                                                                                              Where is the progress?            01/01/70 00:00      
                                                                                                                                 Robert Erlacher ??            01/01/70 00:00      
                                                                                                                                    Oops            01/01/70 00:00      
                                                                                                                                 Let's leave irrelevant issues out ... for now            01/01/70 00:00      
                                                                                                                                    Quote examples            01/01/70 00:00      
                                                                                                                                       No citation needed!            01/01/70 00:00      
                                                                                                            ... about that schematic ...            01/01/70 00:00      
                                                                                                               Still thinking single diode            01/01/70 00:00      
                                                                                                                  It doesn't HAVE to be done in a conventional granularity            01/01/70 00:00      
                                                                                                               I do not think so            01/01/70 00:00      
                                                                        One other thing ...            01/01/70 00:00      
                                                                     THAT IS what PWM does            01/01/70 00:00      
                                                                        For that, you don't need dedicated hardware            01/01/70 00:00      
                                                                           never said so            01/01/70 00:00      
                                                                              Give the customer value while making money            01/01/70 00:00      
                                                                                 A lot of intersting issues have been forced to the surface            01/01/70 00:00      
                                                                                    Go for KISS            01/01/70 00:00      
                                             fruit salad            01/01/70 00:00      
                                                Not exactly ... I think you're ignoring the point            01/01/70 00:00      
                                                   this is where you are confoosed            01/01/70 00:00      
                                                      There's nothing confusing about the procedure            01/01/70 00:00      
                                                         NO, NO, NO            01/01/70 00:00      
                                                            Yes, non-mpx is probably easier ...            01/01/70 00:00      
                                                         Resistor on varying-current side? Hot, hot, hot            01/01/70 00:00      
                                                   Please forget CRT            01/01/70 00:00      
      why this complex, why so enamored by darlingtons?            01/01/70 00:00      
         Of course, your Allegro thingis would perfectly fit...            01/01/70 00:00      
            not the transistors, the ULN in the columns            01/01/70 00:00      
      Back to square one. First experiment with fast output            01/01/70 00:00      
      Power is not Sufficient            01/01/70 00:00      
         Semi-correct            01/01/70 00:00      
      Sorry guys            01/01/70 00:00      
   Switch statement            01/01/70 00:00      
      ULN2803 ????            01/01/70 00:00      
         WHY?????            01/01/70 00:00      
         The 2803's OK ... with a current source Anode driver            01/01/70 00:00      
            Yes, unless high cathode currents...            01/01/70 00:00      
               If he's sinking current from, at most, 16 cathodes ...            01/01/70 00:00      
                  Not 16 at a time. 0 or 1 for column. 0..80 for row            01/01/70 00:00      
                     I got it from the O/P's first post            01/01/70 00:00      
                        But you don't do 80:1            01/01/70 00:00      
                           I couldn't have said it better myself!            01/01/70 00:00      
                     Code hang-ups...            01/01/70 00:00      
                        Watchdog is nice            01/01/70 00:00      
                        not a 'bright' idea            01/01/70 00:00      
                           Yes, muxed displays requires high currents to not be dim            01/01/70 00:00      
            which varies by a factor of 1:80            01/01/70 00:00      
               It's not dirt-simple, but it's not rocket-science, either            01/01/70 00:00      
                  first/second????            01/01/70 00:00      
                  evidently it is            01/01/70 00:00      
                     I just came to think of this quiz            01/01/70 00:00      
   Happy three months            01/01/70 00:00      
      It didnot work for me again.....            01/01/70 00:00      
         are you familiar with Ohms law            01/01/70 00:00      
         Write test-code for driving the diodes            01/01/70 00:00      
         I'm afraid to tell you,...            01/01/70 00:00      
            Don't shift so much            01/01/70 00:00      
               Yes, he must shift byte-wise...            01/01/70 00:00      
                  The alternative...            01/01/70 00:00      
                     Try this, Aamir...            01/01/70 00:00      
                        Thanks Sir.......            01/01/70 00:00      
                        I knew someone would do his work for him!            01/01/70 00:00      
                           Yes, and it was fun!            01/01/70 00:00      
                              Yes, of course ... but they were far too complex            01/01/70 00:00      
                                 I'm really sorry that they were "far too complex"...            01/01/70 00:00      
                                    one step at a time            01/01/70 00:00      
                                       All many of these guys want is someone to do their work            01/01/70 00:00      
                                       Big-bang            01/01/70 00:00      
                                          Lessons learned            01/01/70 00:00      
                                             Lessons...            01/01/70 00:00      
                                                the difference            01/01/70 00:00      
                                                   He learns and learns and learns...            01/01/70 00:00      
                                                      that would be true            01/01/70 00:00      
                                                         That's the point...            01/01/70 00:00      
                                                            show me one            01/01/70 00:00      
                                                      Only feedback tells where the correct level is            01/01/70 00:00      
                                                Knowledge is still the morst valuable gift            01/01/70 00:00      
                                                   You really never had a look at something bigger??            01/01/70 00:00      
                                                      Read what I write, not what you want me to write            01/01/70 00:00      
                                                         Sorry, Per, but...            01/01/70 00:00      
                                                            Atleast give OP some time            01/01/70 00:00      
                                                               male cow manure            01/01/70 00:00      
                                                               This guy is a STUDENT! And probably a lazy one.            01/01/70 00:00      
                                                                  Poor...            01/01/70 00:00      
                                                                     It should be a career-ender            01/01/70 00:00      
                                                               Ignorance is bliss?            01/01/70 00:00      
                                                                  Is this a Social Work forum?            01/01/70 00:00      
                                                                     Is this a Social Work forum? - no            01/01/70 00:00      
                                                                        ethical behaviour            01/01/70 00:00      
                                                                           Good elbows...            01/01/70 00:00      
                                                                              Some people are just lazy, and think they're entitled.            01/01/70 00:00      
                                                                              Robots has no feelings            01/01/70 00:00      
                                                                     Where do you put the limit?            01/01/70 00:00      
                                                                        Its not the point            01/01/70 00:00      
                                                                           Prove your point!            01/01/70 00:00      
                                                                              point of disagreement ?            01/01/70 00:00      
                                                                                 Teflon-avoidance of arguments            01/01/70 00:00      
                                                                                    back to the old one            01/01/70 00:00      
                                                                                 There must be a willingness to do the work!            01/01/70 00:00      
                                                                                    a nasty thought            01/01/70 00:00      
                                          by silence the OP has admitted            01/01/70 00:00      
                                             He has admitted??            01/01/70 00:00      
                                                it is a known fact that            01/01/70 00:00      
                                                   Do you think, that I aggree if I don't reply...            01/01/70 00:00      
                                                      yes, IF            01/01/70 00:00      
                                                It may not have been in this thread            01/01/70 00:00      
                                                   Plain bogus...            01/01/70 00:00      
                                                   School projects always problematic            01/01/70 00:00      
                                                      This is a recurring theme            01/01/70 00:00      
                                                         Regular on Keil too            01/01/70 00:00      
                                    Well, too many components            01/01/70 00:00      
                                    I was looking for a product I could buy, not a work-product.            01/01/70 00:00      
      And still stuck on the basics            01/01/70 00:00      
   This one's not too costly!            01/01/70 00:00      
      Nice one            01/01/70 00:00      
   facts            01/01/70 00:00      
   Silence talks...            01/01/70 00:00      
      It's because the due-date of his assignment has passed            01/01/70 00:00      
         No the OP, but the two drive-by-shooters            01/01/70 00:00      
            For Per Westermark            01/01/70 00:00      
            "Drive-by-shooters"? Are you cuckoo??            01/01/70 00:00      
               I think that was the basic problem            01/01/70 00:00      
                  Yes, and as we do not know the state of knowledge...            01/01/70 00:00      
                     Once more you focus on bowing and other nonsense            01/01/70 00:00      
                        Do you feel better now??            01/01/70 00:00      
                           Why?            01/01/70 00:00      
                              Answers...            01/01/70 00:00      
                                 Try looking from the other direction            01/01/70 00:00      
                                    Forum rules...            01/01/70 00:00      
                                       Constant misunderstandings, or kicking in open doors            01/01/70 00:00      
                                          bow? no, but questions should be answered.            01/01/70 00:00      
                     but we do            01/01/70 00:00      
                        Making mistakes and confusing things...            01/01/70 00:00      
                           Missing help?            01/01/70 00:00      
                              Why do you all the time interfere in...            01/01/70 00:00      
                                 When we ask an O/P a question ...            01/01/70 00:00      
                                    But that's it, Richard!            01/01/70 00:00      
                                       You're right, Kai, but not in the way that you might think            01/01/70 00:00      
                                 Can't see "not helped"            01/01/70 00:00      
                                    I'm tired, Per...            01/01/70 00:00      
                                       Weapons down Kai :)            01/01/70 00:00      
                                       we all are            01/01/70 00:00      
                                          we all are -            01/01/70 00:00      
                                             So enumerate the factual errors then            01/01/70 00:00      
                                                You were wrong            01/01/70 00:00      
                                                   I wish that someday ...            01/01/70 00:00      
                                                      I wish that someday ... Is that so            01/01/70 00:00      
                                                         And your argument was?            01/01/70 00:00      
                                                            Example            01/01/70 00:00      
                                                               Just curious            01/01/70 00:00      
                                                                  No reverse way just wanted to show            01/01/70 00:00      
                                                                     assisted != having others to do the job            01/01/70 00:00      
                                                                        From this at least it dosent make            01/01/70 00:00      
                                                                           Come on, now, Ap Charles ...            01/01/70 00:00      
                                                                              Have you read what Aamir wrote?            01/01/70 00:00      
                                                                                 Yes, it looks like part of the assignment spec            01/01/70 00:00      
                                                                                    Assignment specs? Hardly...            01/01/70 00:00      
                                                                                       I guess we see different things in the quoted post            01/01/70 00:00      
                                                                                          These are good arguments...            01/01/70 00:00      
                                                                                             We'll never know for certain            01/01/70 00:00      
                                                                                       switch not the big problem            01/01/70 00:00      
                                                                                          Direct and Indirect calls            01/01/70 00:00      
                                                                                             Size of feet?            01/01/70 00:00      
                                                                                                I can see your point            01/01/70 00:00      
                                                                                                   Probably yet another language problem            01/01/70 00:00      
                                                                                                      The O/P has a part to play, as do we of 8052.COM            01/01/70 00:00      
                                                                                                      Yes            01/01/70 00:00      
                                                                                          Oh dear, Per, please...            01/01/70 00:00      
                                                                                             In the eye of the beholder            01/01/70 00:00      
                                                                                                Sorry, I didn't want to hurt you!            01/01/70 00:00      
                                                                                 again, it is obvious            01/01/70 00:00      
                                                            Not big-bang solution, but snippet of code!            01/01/70 00:00      
                                                I'm not the only one who confuses things...            01/01/70 00:00      
                                                   Yes, language barrier            01/01/70 00:00      
                                                   Yes, it's true ...            01/01/70 00:00      
                           wrong question            01/01/70 00:00      

Back to Subject List