Embedded systems have several key components including microcontrollers, sensors, and actuators. Microcontrollers are integrated circuits that execute programs to send and receive data from other hardware components. They need to be programmed using languages like C. Sensors can provide simple data like temperature or light intensity or more complex data like images. Actuators can cause events like turning on LEDs or moving servos and enable functions like network communication. Together, sensors and actuators allow embedded systems to receive input from and output to the external environment.