Hi All, I am running into problem, where I could not pass sbit variables to a function. Here's an example: My SBIT definitions: sbit OLD_JTAG_TCK = 0xB0+3; sbit NEW_JTAG_TCK = 0x80+7; My Function: void Pulse_TCK(bit sbJTAG_TCK) { sbJTAG_TCK = 1; } My Main code: if (old_hardware) { Pulse_TCK(OLD_JTAG_TCK) } else { Pulse_TCK(NEW_JTAG_TCK) } For some reason, the above code does not work as I dont see any activity on the TCK pins. Can anyone please help me how to resolve this issue?. Note that I had used the type bit in my function parameter instead of sbit as the later gives syntax error.
If you are extremely tight for memory you may need to do something a little less "pretty" You can make two versions based on a flag
#define NEW_HW // comment this out if compiling for old hardware #ifdef NEW_HW shift_data_into_FPGA_new_hardware(); #else shift_data_into_FPGA_old_hardware(); #endif
#ifdef NEW_HW