Answer
The desire for different classes of macronutrients is mediated through the action of different hormones.
Thus norepinephrine triggers appetite for more carbohydrates and the hormone galanin stimulates the desire for fats. In the case of the craving for proteins, this is promoted by the action of endorphins.
Work Step by Step
Other hormones like peptide YY (PYY) and leptin, and Cholecystokinin (CKK) induce satiety and terminate the desire to take in more food.