| ??? 04/07/03 07:19 Read: times |
#42998 - RE: how to swap the bit,,,urgent - Hans Responding to: ???'s previous message |
The need for a FLIP ACC capability comes up more often than one would think !!!
I had a PC board design I did for an industrial controller about 10 years ago. It was an ISA board and I had the schematics drawn and the PC board layout done by another engineer. This board had 3 each Intel 82C54 timer chips in PLCC packages. Intel, in their wonderful wisdom, assigned the pin numbers for the data bus on this part as follows: 1 = DB7 2 = DB6 3 = DB5 4 = DB4 5 = DB3 6 = DB2 7 = DB1 8 = DB0 Unfortunately my engineer friend made the PC board with the bus on the board wired as: D0 -> Pin 1 of 82C54 D1 -> Pin 2 of 82C54 D2 -> Pin 3 of 82C54 D3 -> Pin 4 of 82C54 D4 -> Pin 5 of 82C54 D5 -> Pin 6 of 82C54 D6 -> Pin 7 of 82C54 D7 -> Pin 8 of 82C54 One long ago night in trying to make the first boards work I was having a dickens of a time trying to get the 82C54s to make the correct waveforms. I could write a register in the part and then read it back and it looked fine. So for a while I was quite baffled till I finally discovered the twisted data bus connections. Rather than scrap the first run of PC boards I instead used the byte flip table like shown in my first post to this thread to swap all bytes to and from the timer chips. Once I did that the timers worked as expected !! The amazing thing is that Domino Lasers still uses that board in products today, shipped all over the world, each with software that still uses the byte flip table. Michael Karas |



