??? 03/14/09 21:55 Read: times |
#163461 - It comes down to why this is being discussed Responding to: ???'s previous message |
Per Westermark said:
Richard Erlacher said:
The SIPO approach is fine if you have only a few pins available for the I/O, but since this involves a dedicated MCU, He can drive the two lines of 8 LEDs at a time each with a buffered parallel port and sink them column by column or in groups of three, seven, ten, or any number of columns at once, or whatever else he likes. But 80x16 = 1280 diodes. If he skips the SIPO and uses his processor pins to drive them, he would need 160 processor output pins to get down to a 8:1 multiplexing ratio. Don't you see the problem. This really is not a CRT. You really do not run the diodes at us timing. The diodes can't run at infinite pulse quotas so you must, must, must run many diodes at a time. And if you do not use external latches to get enough output pins, then you need a processor with a huge number of pins. Well, not exactly ... The option is always available to generate an external bus, which would allow the data to be shipped from P0 to 10 '273 types instead of 10 '595 types. From there it could, in fact proceed as with the SIPO registers. That way he could avoid having to disassemble the bytes in firmware. It would also reduce the load in other respects. In the end, you only have two alternatives:
- Run few diodes at huge multiplexing ratios. After adjusting for max pulse current, this would mean a very dim sign. - Run many diodes at a time - possibly all the way to a fully DC-driven sign. But that requires either a processor with a huge number of output pins, or it requires a bus expansion. The best bus expansion there can ever be when it comes to number of output pins in relation to number of controlling pins is a SIPO. And if you think one SIPO chain gets too long, you may use two. Or tree. Or four. Or 32. Or whatever. But a 32-chain SIPO solution would still only need 32 data lines, one clock line, one latch line and possibly one output-enable line - unless you instead let the row-drive lines handle the output-enable. While it's possible that there might be other tasks for the MCU to accomplish, a self-contained sign wouldn't likely have much to do other than to receive characters and to display them. In any case, the O/P certainly hasn't indicated he had to accomplish anything else. Consequently I wouldn't think this task is particularly taxing for a typical 11.05 MHz 8052. With a character store of 160 bytes and having to store, in a circular buffer up to eight, and at least six bytes of pixel array per character to disassemble if he chooses to use the serial distribution path, I'd guess he already has to have an external memory bus. Further, I'd bet it takes less time and less code to ship them to the 160 external cathode-driver registers over a parallel bus rather than a serial bus. He then can use P1 to control the MOSFETs or BJT's that drive the rows of anodes. I can get an ARM chip with many hundred pins - but would you like to try to create a PCB where you route several hundred signals in through the very regular LED matrix with a minimum distance available between each LED? Yes, but why? The O/P didn't ask how to do this with an ARM. He asked how to do this with an 89S51. Display manufacturers are not incompetent. They have spent time looking at alternatives. They have spent years and years and years considering different alternatives to make the optimum design. You, on the other hand writes answers without even considering earlier posts in this thread which means that you regularly returns to the same direct physical errors. I hope you're right about those manufacturers, and I'm sure that's true of most of them. The rest will go away, a product of natural selection. Yes, running a diode at an almost infinite pulse quota is a physical error. The multiplexing factor is a hard design limitation you can't get past. So don't think display manufacturers are stupid because they realize that they must drive many diodes at a time. That's right! They didn't become clever designers by considering only one approach, though. Further, the purpose of a discussion such as this one is not to demonstrate to the world how clever we are, but, rather, to bring as many considerations to the surface for observation and discussion, both the promising and sensible ones, and also the ones that are less-so. That way those who are interested and possibly learning about something new, will gain some understanding of why some things are summarily rejected while others are not. Simply seeing that they're rejected doesn't always tell the whole story. Yes, heat dissipation in driver chips do represent a physical limitation in a design, so don't think display manufacturers are stupid if they base their designs on limitations specified in the datasheets of the used driver chips.
Yes, physical dimensions of chips together with the minimum required outlines on the PCB for maximum solderability are limitations that a display manufacturer has to think about. They are not stupid for figuring out that some constructs you have suggested to not fit. The O/P's not worried about that ... yet ... A design manufacturer that controls the overall intensity of a huge display with a couple of source code lines instead of having multiple driver outputs for each pixel isn't stupid. He has already noticed that your suggestion would result in a sign he can't sell because it would be too expensive. And he would still need proper intensity control since 0, 1, 2, 3 or 4 diodes in on/off configuration would represent too few intensity steps in relation to the ambient light. Signs and other indicators I see every day use multiple LED's. One local traffic engineer told me that the traffic signals they use, which have LED's rather than incandescent lights, multiplex their 480 or so LED's and have one driver per LED. That may not be true of every such item, but that's interesting just the same. The hardware/firmware tradeoff is an important one. For a volume-manufactured product, it's only necessary to pay, through the nose, perhaps, but still, for the firmware development once, while the hardware has to be shipped in each product. Yes, there's upgrade and maintenance effort that will follow, but the hardware has to be bought for each product that's shipped. And if the CPU is fast enough to build and output bitmaps for four times as many bitmaps, the manufacturer isn't stupid for thinking that maybe he can "over-scan" his display instead if he wants individual intensity in different pixels - still without the extra cost of multiple output lines. "multiple output lines"? ... I'm not sure I understand what you mean here. The problem here is a huge gap between theory and practice. And when practical solutions implementations don't go for your theoretical ideas, you think that the manufacturers are stupid for not considering all alternatives. But don't you think you should consider the alternatives that are actually used in real displays. Possibly consider exactly why the sign manufacturer did choose a specific solution. Maybe the sign manufacturer did see one or more advantages that you still haven't opened your eyes to? First of all, they are stupid for not considering all possible notions. Few of them do because they're busy trying to copy or improve on someone else's design because they know that with a bit of effort, that can be made to work successfully. There's more risk in trying something new. They fact that they, even briefly, consider something ultiately unworthy doesn't mean they're overthinking the matter. It simply means that they reject a concept after giving it some thought rather than simply rejecting it out of hand. Successful designers do what they do because they've thought about it. They also have thought about the things that they don't do and know why they don't do them. Sometimes they choose a given path for expediency's sake, and sometimes for personal preference when there's no overwhelming advantage between multiple choices. They still know why they do what they do and why they don't do something else. Most often manufacturers with a plan to produce a new product hire an engineering team that's done the job before, and let them go when the job's done. That leads to functional products but seldom leads to innovation. In the rare case in which the designers have actually thought over all the available options and tailored their solution to the current requirements, well, there's opportunity for innovation if they work to optimize their design, and not just to meet schedule and get paid. Sadly, the latter is much more common than the former. As for why we bother to discuss this, in light of the fact the O/P hasn't provided enough information to allow any reasonable construct to be developed, well it's to force these issues to the surface for discussion where everyone who's interested can see them. Most people have an approach to this sort of task, but maybe they could benefit from seeing how someone else might attack the problem. RE |