You are here

PSoC 5LP - Signal Generator | Cypress Semiconductor

PSoC 5LP - Signal Generator

Summary: 6 Replies, Latest post by Cyperion on 21 Nov 2016 10:41 AM PST
Verified Answers: 2
Last post
Log in to post new comments.
AvethoPlays_2007616's picture
User
9 posts

I am making a signal generator for a school summative project, due in January, but I need it done by the 21st of December as I will be away with family on vacation for 3 weeks.

My plan for this is to have a menu system on a 16x4 HD44780 display, and digital control of external wave-dacs to generate either a sine wave, triangle wave, sawtooth wave, ramp wave, or possibly a custom waveform from an external storage device. There will also be a separate terminal for the square wave that has variables tied to the other waves, but also will have a duty cycle, and pulse setting.

In the menu you will be able to change the frequency, amplitude, voltage offset, duty cycle, table steps, pulse, and be able to reset the settings to default. It will save values on power down. Also in the menu, you can change how much you change values by, in powers of 10: 1, 10, 100, 1K, 10K, 100K, and 1M. There will also be a power on/off switch, and it will likely be a soft power-on button of sorts.

On screen, it will always display the current settings position at the bottom of the display, and will always display frequency as F###, amplitude as A###, offset as V+-#.#, and table step as TS###. Frequency and amplitude will have either nothing, a K, or an M depending on if it is 1000 or above, or 1000000 or above.

The table will have maximum either 256 or 512 steps to still attain a high enough frequency, and I will likely be using a 10mhz wave-dac, as the internal wave-dacs can only reach 1Mhz and no more.

If you have any suggestions, feel free to say. I will try to keep this thread updated as much as I can, whenever I do something on this project.

user_342122993's picture
User
582 posts

Lock the door and start typing - you will need all days remaining :)

You may check older projects of similar kind, e.g.:
http://www.cypress.com/forum/psoc-5-device-programming/wavedac8-amplitud...

Read Application Note for DDS (DDS-WDAC)
http://www.cypress.com/forum/psoc-community-components/dds24-24-bit-dds-...

Check example by 'pavloven' here:
http://www.cypress.com/forum/psoc-5-architecture/generating-multiple-wav...

Component to save/restore settings:

http://www.cypress.com/forum/psoc-community-components/myeeprom-componen...

AvethoPlays_2007616's picture
User
9 posts

I would like to do that, but I need to balance the work on it with two other classes that have finals as well. One is a computer game, the other is a house design with wiring specs :/

Thanks for the help though odissey, I will take a look at these ASAP :)

user_342122993's picture
User
582 posts

Limitation is not DAC update rate, but rather DMA transfer rate. With 256 points/waveform max attainable wave frequency is about 17kHz. Also, VDAC8 gets distorted at update frequencies >400kHz. I had better experience with self-made R2R DAC.

I believe that since it is a 'school project', it should look impressive and be inexpensive, while the specs are not important. You should plan ahead and manage your time to be able finish it by the due date. Get realistic and triage your specs.

AvethoPlays_2007616's picture
User
9 posts

Thanks for the advice :) I feel as if you did this before ;)

user_342122993's picture
User
582 posts

you feeling is right, we all did it. From my experience you only have time to slap it together in a  'quicky' way, nothing else. Basically: 4 line LCD (frequency, amplitude, phase, wave type), 1 rotary encoder to change settings, and re-use any project of your choice for output generation.

AvethoPlays_2007616's picture
User
9 posts

Thanks for the help. You likely saved me a whole week :D

I do pretty well in code when I'm happy about it, but the hardware and ideas bog me down :/

Log in to post new comments.