estoy diseñando a ciegas
No entiendo como es que la gente intenta que alguien pueda diseñar algo asi. Encima ocurre y bastante
PD:
Suponiendo que: 2.1V y 300mA sean el MAXIMO.
La pregunta es ... Por que usar un MOSFET? y no un BJT para esta aplicacion? Me refiero a que es una aplicacion Lineal. Y para mi con:
Una resistencia de sensado de corriente que se realimente al OPAMP que maneja el transistor. Y terminas alimentandolo en la terminal de referencia con un ADC o usas un pote digital con un divisor de tension. Tendrias tu circuito.
Algo como esto, que encontre por internet pero no es el circuito "perfecto" ni adecuado al mismo, pero una aproximacion.
Donte Rf = 0 y R1 = inf
La idea es que en un pin del OpAmp tengas la tension de feedback que es la igual a corriente que atraviesa la carga * Rsensado.
Y en el otro pin, tenes la tension de referencia la cual vas a poder modificar con tu pot. digital.
Siempre y cuando la tension de alimentacion no sea extremadamente alta. Supongamos 5V, y no existe ninguna resistencia entre medio, ni sensando ni nada. En el transistor caerian 2.9V * 0.3A ( 0.87W) maximo.
Poniendo una resistencia de 3.3ohms , tendrias 1V ( 0.99V) con 300mA, la resistencia deberia disipar 0.3W y tu transistor ahora tendria casi 1V menos de que preocuparse. Por lo cual su potencia seria menor. Usar una menor resistencia implica que vas a tener menor tension de feedback al menos para este circuito.
Finalmente en el pin de referencia cuando tengas 1V saldrian tus 300mA. Si quisieras menos entonces bajas la tension, ejemplo si quisiera 200mA, deberia tener una tension de 200mA * 3.3 = 0.66V, El OpAMP haria su trabajo regulando todo gracias a la realimentacion.
PD2: Se podria usar un Darlington tambien ahi, asi el beta es mayor.