Hi!

I'm making D-CLASS amplifier for Linux platform...
I have to connect computer to radio at school, that would play music on
breaks.
The computer would be connected to a radio speakers-network thru a
D-class amplifier
built on few mosfet transistors and output power of few hundred of
watts.
That's my diplom work.

The simplified model of amplifier's work is that we're generating high
frequency 
square signal with controlled pulse width. By controlling width of pulse
we're
controlling average Voltage on speaker - position of membrain.

I made such circuit on AT89C52 microcontroller, but chip is too slow for
that job.
So I've diecided to use PC as a "fast microcontroller".
But why not to write kernel module - the PC would stand on Linux.

So I have to write special driver for this amplifier.
I think that writting it in assembly language would be the fastest
choice.
The speed is critical - I have to generate a signal of frequency more
than 1MHz
(or more - faster output frequency = better sound).
I also, with sampling frequency of 11kHz/22kHz/44kHz, have to take
samples form
/dev/dsp (or some other sound output) and give them to output (serial
port).

As a person, who never wrote a kernel module, or even time sensitive
program for
Linux, I'm asking for help someone that would surely know the solution -
that means YOU :)

I'd like not to invoke any libraries to program (totally platform
independecy).
Few bytes of low-level (kernel) machine code will be enough (I wrote
already the
program, but the microcontroller is too slow).

As for now I have one question - are there some timer functions in
kernel?
The rest afer reading howto about writting modules ;)

If I finish it, lets make it part of ALSA project...?

Thanks!
CeDeROM/KSZAK

_______________________________________________
Alsa-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/alsa-devel

Reply via email to