Matlab code to read data from nexys2 board

조회 수: 1 (최근 30일)
Jim
Jim 2013년 5월 21일
Hi,
I am using matlab to read data from nexys2 board. Actually I am sending the range sensor data from nexys board to matlab through serial communication using the command below.
nexys = serial('COM1', 'BaudRate', 9600, 'Parity', 'odd', 'Terminator', '', 'Timeout', 1);
There are nine bits for representing sensor data. Because the maximum range can be represented using nine bits and the* serial communication I can do only in bytes.*
when I try to concatenating with zeros
The data I am sending is something like this in hexadecimal:
00 0A 00 1A 00 14 (2 BYTES)
But Matlab is unable to receive the data *from board through serial communication. *
Later* I tried to concatenating with ones*. then
The data I am sending is something like this in hexadecimal: FF 0A FF 1A FF 14 (2 BYTES)
*Now Matlab is able to receive this data.
Why the matlab is unable to receive zeros?*
If the data I am sending is more than 1 byte. Then how can I replace the ninth bit of 1(with zero)*bold*
Can anyone suggest something about this?
Thanks in advance
  댓글 수: 2
Walter Roberson
Walter Roberson 2013년 5월 21일
Caution: if you are using odd parity or even parity, then one of your 8 bits will be "stolen" for the parity bits, so you only have 7 usable transmission bits per byte in that case.
Jim
Jim 2013년 5월 22일
편집: Jim 2013년 5월 22일
Hi walter,
Thanks for your reply.
Can you please explain in detail. you mean I should not use even or odd parity. How can I send the data to Matlab without losing information for parity bit.
And why the matlab is unable to receive information starting with all 0's in first byte?
Can you give me the link for document explaining this?
Thanks

댓글을 달려면 로그인하십시오.

답변 (0개)

카테고리

Help CenterFile Exchange에서 MATLAB Coder에 대해 자세히 알아보기

제품

Community Treasure Hunt

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

Start Hunting!

Translated by