In a controller for brushless motor which suppresses the generation of abnormal noise when the motor current is controlled by updating voltages applied to the coils, the present values of the applied voltages to the coils are calculated from the d axis target current, the q axis target current, the d axis actual current, the q axis actual current, and the present value of the detected rotational position of the rotor. The updating period of the applied voltages is set as a period that is shorter than this calculation period. The predicted value of the rotational position at a point in time at which the applied voltages are updated until the next calculation of the present values of the applied voltages is determined in accordance with the present value, a past value of the detected rotational position, and the applied voltage updating period. The predicted values of the applied voltages are calculated from the predicted value of the rotational position, the d axis target current, the q axis target current, the d axis actual current, and the q axis actual current. The applied voltages are updated in accordance with the present values and predicted values of the applied voltages.