If you look at the code at all, you can see that the Arduino is transferring across RS232 at 9600 baud. The code uses two bytes per sample to carry the 10 bits of A/D precision. RS232 (typically) takes 10 bits on the wire to transmit 8 bits of data.
9600/10 gives us the byte rate of the serial channel: 960 bytes per second
960/2 gives us the sample rate: 480 samples per second
480/2 gives us the absolute maximum bandwidth of the system, or 240Hz. (This also assumes that the peaks of the measured signal align nicely with the sample rate.)
The ATmega chips have rather limited sample rates as well. They're not designed for this sort of work. They use a "successive approximation" type A/D that samples one bit at a time. At 10 bits of resolution, ATmel lists 15k samples per second as the maximum sample rate. This gives an absolute upper limit of 7.5kHz bandwidth at that resolution. That sample rate doesn't actually appear to allow time for actual code to run to DO anything with that data. A more realistic limit for the is about 3.8kHz.
The A/D converters onboard the ATmega chips are designed for low rate sampling, such as a few samples per second of a given voltage or temperature.
Low Sample Rate
If you look at the code at all, you can see that the Arduino is transferring across RS232 at 9600 baud. The code uses two bytes per sample to carry the 10 bits of A/D precision. RS232 (typically) takes 10 bits on the wire to transmit 8 bits of data.
9600/10 gives us the byte rate of the serial channel: 960 bytes per second
960/2 gives us the sample rate: 480 samples per second
480/2 gives us the absolute maximum bandwidth of the system, or 240Hz. (This also assumes that the peaks of the measured signal align nicely with the sample rate.)
The ATmega chips have rather limited sample rates as well. They're not designed for this sort of work. They use a "successive approximation" type A/D that samples one bit at a time. At 10 bits of resolution, ATmel lists 15k samples per second as the maximum sample rate. This gives an absolute upper limit of 7.5kHz bandwidth at that resolution. That sample rate doesn't actually appear to allow time for actual code to run to DO anything with that data. A more realistic limit for the is about 3.8kHz.
The A/D converters onboard the ATmega chips are designed for low rate sampling, such as a few samples per second of a given voltage or temperature.