Esa solución la testeé en el pasado. No es buena idea adaptar niveles con divisores resistivos ya que la impedancia de entrada de los pines de un micro es bastante alta y varía dependiendo del micro por lo que "toca" hacerlo "a ojo"; además si pones un divisor con resistencias de valor muy alto corres el riesgo de que no llegue la corriente necesaria.
La velocidad del bus Can no es alta. Como máximo 1 MHz.
Los divisores resistivos no deberían dar problemas en este caso.
Utilizando un divisor con una resistencia de 1K8 en serie con otra de 3K3, bajará la tensión de 5V a 3.24 Voltios
La corriente absorbida por el divisor es de 1mA (relativamente bajo)
La impedancia de salida (en el lado de 3.3V) será de 1.16K.
Con una capacidad de entrada en el lado de 3.3V de 200pF (mayor de lo habitual) la constante de tiempo es de 233ns
El tiempo de subida desde cero hasta el nivel alto de 2.8 voltios será de 460ns.
El tiempo de bajada desde 3.24V hasta el nivel bajo de 0.44V será de 460ns
Esto es suficiente para trabajar a 1MHz.
Para frecuencias mayores, este divisor te dará problemas de velocidad. Tendrías que reducir la impedancia.
Por ejemplo para 20MHz y capacitancia de entrada de 200pF, las resistencias deberían ser de 90 y 165 ohmios y la corriente absorbida 20mA, que está fuera del rango de muchas salidas de microcontrolador
Depende por lo tanto de la velocidad y de la capacitancia de entrada.
Saludos.