Hola..
En un anterior proyecto que realice, por medio del modulo CCP del PIC genero una señal cuadrada de aproximadamente 425Hz, y a través de un filtro RC la inyecto a la "línea", para obtener los 48V utilizo PWM (tambien del PIC) y un circuito Boost, hay información de este circuito boost en notas de aplicación de texas instruments, creo que es algo como "understanding buck and boost power stages in switchmode power supplies".
Al configurar el modulo CCP del pic, solo basta activarlo, con esto se genera el tono de invitación a marcar, o si quieres tono de ocupado solo lo activas (500ms) y desactivas (500ms), tambien se puede hacer con interrupcion de tiempo, o bien con un simple 555, el pin de reset del 555 sirve para activarlo y desactivarlo, la idea es que lo actives solo cuando la bocina sea descolgada, para lo que necesitarás algún circuito que te monitoreé el estado del auricular.
El filtro RC es de tipo pasabajos, este tambien elimina la componente DC de la señal generada, no tiene nada en especial, y funciona fácil, para esa frecuencia utilicé valores en R = 2200 ohm y C = 1uF.
Si necesitas tonos dtmf, puedes usar el MT8870, por ahi ya habia publicado unas librerias en C, estan en este mismo subforo.
Espero sea de ayuda.
Saludos.
Pd. La señal no tiene que ser senosoidal y menos de 12V, sino te dejaria sordo, al pasar por el filtro la señal se atenua y viene del pic, osea que no alcanza a ser ni de 5Vpp, si te llega molestar al oido, simplemente aumenta la R del filtro.