We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
I have several identical devices which I want to connect to differing port pins. I want to pass to my function, which device, and then have the function perform a switch statement dynamically assigning clock, oe, strobe, data lines to the port pins for that device. For example, function(int ic) sbit CLOCK; sbit DATA_OUT; sbit OE; sbit STROBE; switch(chip){ case 0: CLOCK = P1^0; DATA_OUT = P1^2; OE = P1^7; STROBE = P3^4; break; case 1: sbit CLOCK = P1^0; sbit DATA_OUT = P1^2; sbit OE = P1^7; sbit STROBE = P3^4; break; } but the compiler pukes on this--giving syntax error near each 'sbit' declaration and use. However, if I declare the sbit's fixed at the top of the file, the compiler is happy-- but then I would have to duplicate the function with multiple copies referencing the port pins in question for that device. Any ideas on how to make this work? THanks!
Andrew, Sorry about the illegible post.. I didn't see the instructions until you pointed them out. My apology.. It looks as if what I am trying to do can simply not be done in the 8051 architecture. I guess I'll re-arange the HW configuration or have a LOT of duplicate functions to handle the pins to use. Regards, Paul