<< 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

I'm interested in biological psychology and cognitive psychology
Tanya Reply
what does preconceived mean
sammie Reply
physiological Psychology
Nwosu Reply
How can I develope my cognitive domain
Amanyire Reply
why is communication effective
Dakolo Reply
Communication is effective because it allows individuals to share ideas, thoughts, and information with others.
effective communication can lead to improved outcomes in various settings, including personal relationships, business environments, and educational settings. By communicating effectively, individuals can negotiate effectively, solve problems collaboratively, and work towards common goals.
it starts up serve and return practice/assessments.it helps find voice talking therapy also assessments through relaxed conversation.
miss
Every time someone flushes a toilet in the apartment building, the person begins to jumb back automatically after hearing the flush, before the water temperature changes. Identify the types of learning, if it is classical conditioning identify the NS, UCS, CS and CR. If it is operant conditioning, identify the type of consequence positive reinforcement, negative reinforcement or punishment
Wekolamo Reply
please i need answer
Wekolamo
because it helps many people around the world to understand how to interact with other people and understand them well, for example at work (job).
Manix Reply
Agreed 👍 There are many parts of our brains and behaviors, we really need to get to know. Blessings for everyone and happy Sunday!
ARC
A child is a member of community not society elucidate ?
JESSY Reply
Isn't practices worldwide, be it psychology, be it science. isn't much just a false belief of control over something the mind cannot truly comprehend?
Simon Reply
compare and contrast skinner's perspective on personality development on freud
namakula Reply
Skinner skipped the whole unconscious phenomenon and rather emphasized on classical conditioning
war
explain how nature and nurture affect the development and later the productivity of an individual.
Amesalu Reply
nature is an hereditary factor while nurture is an environmental factor which constitute an individual personality. so if an individual's parent has a deviant behavior and was also brought up in an deviant environment, observation of the behavior and the inborn trait we make the individual deviant.
Samuel
I am taking this course because I am hoping that I could somehow learn more about my chosen field of interest and due to the fact that being a PsyD really ignites my passion as an individual the more I hope to learn about developing and literally explore the complexity of my critical thinking skills
Zyryn Reply
good👍
Jonathan
and having a good philosophy of the world is like a sandwich and a peanut butter 👍
Jonathan
generally amnesi how long yrs memory loss
Kelu Reply
interpersonal relationships
Abdulfatai Reply
What would be the best educational aid(s) for gifted kids/savants?
Heidi Reply
treat them normal, if they want help then give them. that will make everyone happy
Saurabh
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, Dsp laboratory with ti tms320c54x. OpenStax CNX. Jan 22, 2004 Download for free at http://cnx.org/content/col10078/1.2
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Dsp laboratory with ti tms320c54x' conversation and receive update notifications?

Ask