Mega8 hat einen Universellen Synchronen/Asynchronen Seriellen Transceiver (USART).

Du brauchst also nicht selber mit den Pins rumwackeln, das kannst du die Mega8 Hardware machen lassen. Wenn man der UART aktiviert, dann geht das aber nur über die Pins PD0 (RxD) und PD1 (TxD).

An PortB liegt nur das SPI (Serial Peripheral Interface), über den man ihn via ISP proggen kann. Dieses Interface kann man aber auch benutzen, um seriell Daten zu übertragen (zB MMC-Card).

Die dritte Hardwareunterstützung für serielle Übertragung ist das TWI aka I2C an PortC.5 (SCL) und PortC.4 (SDA).