Uno: Used resources for communication with PC and Init routine

Hi developers,

Since I have not found it in the documentation I would like to ask here:

  1. Is there a list of ATMega resources used to communicate with the PC (and the standard IDE)?
    I think there should be one Timer(0, 1, 2?) used and the USART0. Does anybody know more and
    where it ist documented?
  2. Is there a documentation of the details of the Init-Routine that is alsways used in the Arduino
    programs? I guess a lot of the modules is just deactivated as usual at boot?

The meaning of my questions is: I would like to try some C-programs read in a good book to try out
several hardware modules.

Thank you for your help!

You have all the source.

If all you want to do is talk to your PC, just plug a usb cable into the Arduino and connect the other end to your usb port on your computer. And to communicate, just use hardware serial

void setup(){
  Serial.begin(115200); //initialize serial

void loop(){
  Serial.println("Hello World!"); //send "Hello World!\n" to your computer
  delay(1000); //add some delay

Now you just need something to read your message.
You can use the arduino serial monitor built into the IDE
You can use another serial monitor from a different program
You can use Processing (a program) to really interact with your messages

The Arduino core initializes all three timers (for use by "analogWrite()", and the millis() clock) and the A2D converter.
The UART isn't actually touched unless you use it in your sketch.
Nothing is particularly "deactivated", but a lot of things are not initialized at all.

I don't know of any particular documentation for this other than the source code.
There may be occasional forum messages, like,5680.0.html