Check out this cool laser projector using AVR. WOw.
Motor spins drum with 16 mirrors around at about 20-30 rev/second. The mirrors are tilted differently, so that they draw one line each on the screen. Rotation time is measured by the reading fork and divided by 16*32=512. This is the pixel clock. When the reading fork senses that the wire attached to the mirror drum passes, a new frame starts, and the pixel clock starts. For each pixel, the laser is turned on or off. Simple as that! Each line contains 32 pixels, but only 16 are used. The remaining 16 pixels on a line do either represent the gap between mirrors, or, they are used for calibration. Oh, yes. The calibration. I won’t be attempting that again any day soon. Each mirror is calibrated in the Y-direction by tediously moving them physically. T-e-d-i-o-u-s-l-y. Did I mention that? The X-direction calibration is done with a lookup-table in software. Ahhh… software… 🙂 And there’s your picture. Making video is the easy part. That’s just a matter of changing the picture every 4 or 5 frames or so.