Virtual variable pool between microcontroller and PC over serial USB
Create a packed structure which holds your variables in your controller side. Calculate the size of the structure and give the pointer of the structure into your usb_tx function. Once you get a receive interrupt in your application , parse the incoming data into a same ordered structure. I have used this method and it is quite effective.