Funcion( (float *)&Variable1);
Castearlo a un puntero float..
no puedo hacer directamente eso por que no se pasa correctamente.
No se que es "no se pasa correctamente" el problema que te va a decir el compilador es que los tipos no son iguales, y es obvio.
Aunque no considero correcto lo que estas intentado realizar, es confuso y poco esclarecedor para aquel que lo programa/lee/revisa.
¿Cual es la idea de pasar un entero sin signo de 32bits como un float? ¿ Cual es el problema que te lleva a utilizar eso?. En resumen, de poder se puede, solo ver si es necesario realizarlo.
PD: Lo peor que te podes encontrar son con funciones que aceptan un puntero a void,, debido a que no tenes NI IDEA de que espera... Eso deberian aprender los de Texas Instrument con sus APIs/Framework. Al menos si es una estructura sabes el formato viendo el fuente, pero cuando esperan un void* .... Suerte.