Using an RS232 port, we can generate square wave oscillation when transmitting data, and this can be “misused” as signal generator (square wave generator). This is a PC Signal generator produce a square wave in audible frequency range. This circuit utilize a transmission of a “U” character from ASCII character set. This character has binary value of 01010101, making it suitable for square wave generation. Based on RS232 protocol, this circuit transmit any data (ASCII character in this case) starting from least to most significant bits, and then add start bit 0 (zero) then followed by stop bit 1, producing the final result 1010101010. This pattern will generate square wave, with frequency of half the baud rate. The frequency that can be delivered by computer are 4800, 2400, 1200, 600, 300, 150, and 55 Hz.
The circuit is very simple, it has a resistor R1 for loading the source, followed by a DC blocking capacitor C1, and a limiter R2, and a volume control 10 K potentiometer (audio taper). The limiter resistor convert 24 V peak-to-peak range into to 2V peak-to-peak before further adjusted by the potentiometer. Please note that the square wave is filtered by a capacitor, means that the shape of the waveform will turn into a ramped slope, not really a square anymore.
Another variation is that you can produce several different frequency tone with the same baud rate setting. If a ‘character’ of ‘01010101’ becomes ‘1010101010’ after adding with start bit and stop bit, then we can send other character to produce other pattern. A pattern of repeated ‘1111100000’ will produce a tone with a frequency of 0.2 baud rate, and it can be produced by sending character ‘11110000’. Other variation, A pattern of ‘1000111000’ will produce some like a tone with the prominent frequency of 0.33 baud rate with a mix of weak 0.1 and 0.9 baud rate tones, and it can be produced by sending a ‘00011100’ repeatedly.