<< Chapter < Page Chapter >> Page >

Line 8 sets AR3 to point to the location hold so that READSER will store serial data there. On Line 9 , READSER 1 reads one serial byte into hold ; the byte is placed in the low-order bits of the word, and thehigh-order bits are zeroed. If a byte was read, AR1 will be set to 1. AR1 is checked in Line 12 ; Line 13 branches back to the top if no byte was read. Otherwise, AR3 is reset to hold (since READSER moved it), then on Line 16 , WRITSER sends the word received. Finally, Line 18 branches back to the start to receive another character.

Using matlab to control the dsp

MATLAB allows you to create a visual interface with standard graphical user-interface ( GUI ) controls such as sliders, checkboxes, and radio buttons to call MATLAB scripts. The following scripts can be used tocreate a sample interface:

  • ser_set.m : Initializes the serial port and user interface
  • wrt_slid.m : Called when sliders are moved to send new data

Creating a matlab user interface

The following code ( ser_set.m ) initializes the serial port COM2, then creates a minimaluser interface consisting of three sliders.

1 % ser_set: Initialize serial port and create three sliders 2 3 % Set serial port mode 4 !mode com2:38400,n,8,1 5 6 % open a blank figure for the slider 7 Fig = figure(1); 8 9 % open sliders 10 11 % first slider 12 sld1 = uicontrol(Fig,'units','normal','pos',[.2,.7,.5,.05],... 13 'style','slider','value',4,'max',254,'min',0,'callback','wrt_slid'); 14 15 % second slider 16 sld2 = uicontrol(Fig,'units','normal','pos',[.2,.5,.5,.05],... 17 'style','slider','value',4,'max',254,'min',0,'callback','wrt_slid'); 18 19 % third slider 20 sld3 = uicontrol(Fig,'units','normal','pos',[.2,.3,.5,.05],... 21 'style','slider','value',4,'max',254,'min',0,'callback','wrt_slid');

Line 4 of this code uses the Windows mode command to set up serial port COM2 (which is connected to the DSP) to match the serial port settingson the DSP evaluation board: 38,400 bps, no parity, eight data bits, and one stop bit. Line 7 then creates a new MATLAB figure for the controls; this preventsthe controls from being overlaid on any graph you may have already created.

Lines 12 through the end create the three sliders for the user interface. Several parameters are usedto specify the behavior of each slider. The first parameter, Fig , tells the slider to create itself in the window we created in Line 7 . The rest of the parameters are property/value pairs:

  • Units

    normal tells MATLAB to use positioning relative to the window boundaries.
  • Pos

    Tells MATLAB where to place the control.
  • Style

    Tells MATLAB what type of control toplace. slider creates a slider control.
  • Value

    Tells MATLAB the default value for the control.
  • Max

    Tells MATLAB the maximum value for the control.
  • Min

    Tells MATLAB the minimum value for the control.
  • Callback

    Tells MATLAB what script to call when the control is manipulated. wrt_slid.m is a MATLAB file that reads the values of the sliders and sends them to the DSP via the serial port.

User-interface callback function

Every time a slider is moved, the file wrt_slid.m is called:

1 % wrt_slid: write values of sliders out to com port 2 3 % open com port for data transfer 4 fid = fopen('com2:','w'); 5 6 % send data from each slider 7 v = round(get(sld1,'value')); 8 fwrite(fid,v,'uint8'); 9 10 v = round(get(sld2,'value')); 11 fwrite(fid,v,'uint8'); 12 13 v = round(get(sld3,'value')); 14 fwrite(fid,v,'uint8'); 15 16 % send reset pulse 17 fwrite(fid,255,'uint8'); 18 19 % close com port connection 20 fclose(fid);

Line 4 of wrt_slid.m opens COM2 for writing. (It has already been initialized by ser_set.m .) Then Line 7 reads the value of the first slider using MATLAB's get function to retrieve the value property. The value is then rounded off to create an integer, and the integer issent as an 8-bit quantity to the DSP in Line 8 . (The number that is sent at this step will appear when the serial port is read with READSER in your code.) Then the other two sliders are sent in the same way.

Line 17 sends 0xFF (255) to the DSP, which can be used to indicate that the threepreviously-transmitted values represent a complete set of data points. Your code can check for the value 255 todetect and correct synchronization errors.

Line 20 closes the serial port. Note that MATLAB buffers the data being transmitted, and data isoften not sent until the serial port is closed. Make sure you close the port after writing a data block to theserial port.

Questions & Answers

A golfer on a fairway is 70 m away from the green, which sits below the level of the fairway by 20 m. If the golfer hits the ball at an angle of 40° with an initial speed of 20 m/s, how close to the green does she come?
Aislinn Reply
cm
tijani
what is titration
John Reply
what is physics
Siyaka Reply
A mouse of mass 200 g falls 100 m down a vertical mine shaft and lands at the bottom with a speed of 8.0 m/s. During its fall, how much work is done on the mouse by air resistance
Jude Reply
Can you compute that for me. Ty
Jude
what is the dimension formula of energy?
David Reply
what is viscosity?
David
what is inorganic
emma Reply
what is chemistry
Youesf Reply
what is inorganic
emma
Chemistry is a branch of science that deals with the study of matter,it composition,it structure and the changes it undergoes
Adjei
please, I'm a physics student and I need help in physics
Adjanou
chemistry could also be understood like the sexual attraction/repulsion of the male and female elements. the reaction varies depending on the energy differences of each given gender. + masculine -female.
Pedro
A ball is thrown straight up.it passes a 2.0m high window 7.50 m off the ground on it path up and takes 1.30 s to go past the window.what was the ball initial velocity
Krampah Reply
2. A sled plus passenger with total mass 50 kg is pulled 20 m across the snow (0.20) at constant velocity by a force directed 25° above the horizontal. Calculate (a) the work of the applied force, (b) the work of friction, and (c) the total work.
Sahid Reply
you have been hired as an espert witness in a court case involving an automobile accident. the accident involved car A of mass 1500kg which crashed into stationary car B of mass 1100kg. the driver of car A applied his brakes 15 m before he skidded and crashed into car B. after the collision, car A s
Samuel Reply
can someone explain to me, an ignorant high school student, why the trend of the graph doesn't follow the fact that the higher frequency a sound wave is, the more power it is, hence, making me think the phons output would follow this general trend?
Joseph Reply
Nevermind i just realied that the graph is the phons output for a person with normal hearing and not just the phons output of the sound waves power, I should read the entire thing next time
Joseph
Follow up question, does anyone know where I can find a graph that accuretly depicts the actual relative "power" output of sound over its frequency instead of just humans hearing
Joseph
"Generation of electrical energy from sound energy | IEEE Conference Publication | IEEE Xplore" ***ieeexplore.ieee.org/document/7150687?reload=true
Ryan
what's motion
Maurice Reply
what are the types of wave
Maurice
answer
Magreth
progressive wave
Magreth
hello friend how are you
Muhammad Reply
fine, how about you?
Mohammed
hi
Mujahid
A string is 3.00 m long with a mass of 5.00 g. The string is held taut with a tension of 500.00 N applied to the string. A pulse is sent down the string. How long does it take the pulse to travel the 3.00 m of the string?
yasuo Reply
Who can show me the full solution in this problem?
Reofrir Reply
Got questions? Join the online conversation and get instant answers!
Jobilize.com Reply

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Ece 320 - spring 2003. OpenStax CNX. Jan 22, 2004 Download for free at http://cnx.org/content/col10096/1.2
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Ece 320 - spring 2003' conversation and receive update notifications?

Ask