A software implementation of a digital data stream on a digital I/O line. Bit-banging is opposite to using specialized hardware such as UART, MSSP (in PICs), USCI (in MSP430).
Typically used when there is no hardware resource available to use for the serial protocol, this would involve changing the state of an I/O line with appropriate time delay loops.
This can be any of a variety of protocols, including RS-232 serial, I²C, SPI, etc.