Event triggered square-wave

3 views (last 30 days)
Yigit
Yigit on 22 Nov 2011
hi,
I generate square wave signal with this ;
freq_Hz = 30;
t = 0:0.0001:10;
y = square(2*pi*freq_Hz*t);
plot(t,y);
axis([0 10 -1.5 1.5]);
xlabel('Seconds');
ylabel('Amplitude');
But I want to trigger each duty cycle with an external event. Like this in pseudo ;
for i:1:100
if event1=1
pwm(i) = high
if event2=0
pwm(i) = low
plot(i,pwm)i)
but can't interfere to square function.
I am sure experienced users will provide some insight.

Answers (1)

Walter Roberson
Walter Roberson on 22 Nov 2011
I just wrote several paragraphs with specific references to why it cannot be done. You deleted the question out from underneath me, so my write-up was lost. This is frustrating to say the least. So you can dig the reasoning out yourself, and you are lucky I still had the documents in my cache.
  4 Comments
Yigit
Yigit on 23 Nov 2011
PC (laptop);
Intel Core2Duo 2.6 Ghz
4GB OCZ Ram (2x2GB)
Nvidia 9300M GS Graphics Acc (CUDA)
Data Acqusition ;
Arduino uno board interfaced with LTC2485CDD via SPI(24bit ADC). Running at 115200 as serial object.
Environment ;
Matlab 2011a 32bit, Slackware Linux 13.37. System is multilib but I prefer 32bit version.
I can't get data acquisition working through the DATA AQ toolbox, I read data the conventional way (m-file).
I use Psychtoolbox (PTB3) to blink the screen (visual stimulus) at a determined frequency and correlate the results obtained from data acquisition. Is there a way to blink the screen flash (fullscreen) at a determined frequency without using a toolbox ? I am sure matlab is capable of doing this, I just couldn't figure out how to. PTB3 introduces too much delay between functions and I just use it to blink the screen.
I need max of 300samples/sec (300Hz), it shouldn't be that hard I suppose ?
Walter Roberson
Walter Roberson on 23 Nov 2011
The LTC2485CDD normally runs at a maximum of 60 Hz, though there seems to be a "2x speedup mode" possible with it. You will not be able to obtain 300 Hz with it.
MATLAB has no facilities to blink the screen.
PTB3 claims up to 2 KHz sample rate (12 bit) sample rate with a Measurement Computing USB-based interface; see http://docs.psychtoolbox.org/Daq
What is the maximum frame rate for your display? It was never very common to find a CRT with higher than 85 Hz (except for the 120 Hz stereo modes), and most LCD are 60 Hz or lower. CRT often require a notable time to reconfigure to different frame rates (which often require resolution changes), and on most monitors the workable frame rates are a fairly small list. If you have an especially forgiving monitor sometimes you can design custom front porch timings and the like to fine-tune frame rates; Linux does seem to be the OS to use for that kind of work, but it can be tricky work and risks monitor damage if you get it wrong; a high level of attention to detail is necessary. Custom video formats pretty much have to be designed in advance.
Switching video formats using the official mechanisms is not a light-weight change, as the X11 driver has to be notified of the changes and reconfigures its ideas of your screen sizes, perhaps repositions your icons, etc.

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!