AV16-32 Board Projects
Here is a series of new projects above and beyond what you have found in the book.They build on what you have learned in the book adding a little bit of fun thanks to the AV16/32 Audio and Video board ...
1- Animated 2D graphics demo
Description:This demo is basically the 2D graphic project (developed in Chapter 13) with additional "animation" features. Double buffered graphics is used to make the animation smooth and glitch-less.
When started, a simple 2D grid is shown, but using the S4 and S5 buttons it is possible to increase/decrease the "gain" of the "wave". Press S4 to increase / press S5 to decrease.
Also S3 and S6 control the x axis offset, moving the "wave" left and right.
Requirements:
- Explorer16 board (if using the PIC32 I/O expansion board you will have to modify the button inputs)
- AV16/32 board (only the composite video portion of the board needs to be completed)
- explore.c must be available
- graphics.c must be configured for the selected video output (PAL or NTSC)
Download:
Animated Graph 2D
2- Advanced Mandelbrot Set Viewer
Description:This is an enhanced version of the Mandelbrot project presented in Chapter 13 with added options to:
- save the current display content in a "screenshot" (SVR) file
- perform self timing for (math) performance comparisons
Additional navigation features include:
- buttons 1, 2, 3 and 4 (from left) zoom in the corresponding quadrant
- buttons 1 + 2 zoom in center
- buttons 1 + 4 save screenshot to .SVR file
- button 1 (press and keep pressing for >2s) re-start from original cardiod
Requirements:
- Explorer16 board (if using the PIC32 I/O expansion board you will have to modify the button inputs)
- AV16/32 board (only the composite video and SD/MMC portions of the board need to be completed)
- explore.c must be available
- graphics.c must be configured for the selected video output (PAL or NTSC)
- fileio.c and sdmmc.c modules must be available
Download:
Mandelbrot Set Viewer
3- More Cubes
Description:This demo uses integer math to perform 3D drawing and animation with Isometric perspective. There are truly 3 demos, depending on which button is pressed on the Explorer16 board after start up:
1- leftmosts button shows a single cube spinning
2- second from left, shows 38 cubes forming the digits "32"
3- third button from left, show 100+ cubes forming the string: "I (love) PIC32"
- press once more (any) button to start (scramble)
- press and keep pressed (any) button to have message gravitate back in place
Requirements:
- Explorer16 board (if using the PIC32 I/O expansion board you will have to modify the button inputs)
- AV16/32 board (only the composite video portion of the board need to be completed)
- explore.c must be available
- graphics.c must be configured for the selected video output (PAL or NTSC)
Download:
Cubes
4- More WAVES
Description:This demo combines the best of chapters 13/14/15 and 16 in a single application performing WAV files playback.
It demonstrates:
- Use of PWM for stereo sound reproduction
- Fast fileio from SD/MMC card
- Wave file decoding
- Basic DSP operation (FFT)
- Real time graphics animated (single buffered)
After start up will prompt the user to insert a (SD/MMC) card then will create a list of ".WAV" files present (in root) and sorts them alphabetically
Four commands are available for playback:
- button 1 (leftmost): play previous in list
- button 2 : play next in list
- button 3 : play all sequentially (alphabetically)
- button 4 : play all in random order (shuffle)
- press any button during playback to interrupt.
(Note that the list is artificially limited to 40 items, you can easily change this parameter)
Requirements:
- Explorer16 board (if using the PIC32 I/O expansion board you will have to modify the button inputs)
- AV16/32 board (the entire board needs to be completed)
- all lib and include files developed in chapters 13-16 must be available
- graphics.c must be configured for the selected video output (PAL or NTSC)
Download:
Advanced WAV Player
5- Slideshow
Description:This demo allows to display sequentially (or randomly) a series of images (screenshots .SCN files) previously saved on the SD/MMC card using the Advanced Mandelbrot demo.
After start up will prompt the user to insert a card, then it will create a list of .SVR files present (in root) up to 40 files, and sorts them alphabetically
Four commands are available for slideshow playback:
- button 1 (leftmost): play previous in list
- button 2 : play next in list
- button 3 : play all sequentially (alphabetically)
- button 4 : play all in random order (shuffle)
- press any button during playback to interrupt.
Requirements:
- Explorer16 board (if using the PIC32 I/O expansion board you will have to modify the button inputs)
- AV16/32 board (only the composite video and SD/MMC card portions need to be completed)
- graphics.c must be configured for the selected video output (PAL or NTSC)
Download:
Slideshow
6- Monochrome VGA Graphics
Description:This projects makes use of the capability offered by the AV16/32 demo board, when built in the VGA option (R1 and R2 are mounted, R4 is replaced by a 1N4148 diode, R3 and R32 are not required) to drive directly a VGA display.
Notice that the RAM memory available in the current MX3 and MX4 series of PIC32 processors limits the resolution to a 480x480 monochrome image.
To demonstration is based on the Advanced Mandelbrot viewer project, taking advantage of the increased image size and resolution.
Requirements:
- Explorer16 board (if using the PIC32 I/O expansion board you will have to modify the button inputs)
- AV16/32 board (only the VGA video portion needs to be completed)
Download:
VGA Graphics