作者billy00685 (milano)
看板MATLAB
標題[討論] 如何用Matlab-rs232給8051做控制?
時間Fri Nov 22 17:49:07 2013
clear all
clc
x = [3]
%x2 = num2str(x)
a = dec2hex(x)
s = serial('COM1','BaudRate',2400);
fopen(s);
fprintf(s,a);
%data = fscanf (s)
fclose (s)
delete (s)
clear s
以上Matlab程式.我自傳自讀是沒問題..
但送資料給8951後就沒反應= ="
發生了甚麼問題?
是不是matlab傳給8951的數值型態的問題?
但我把x轉字串跟hex也是都沒反應= =
還是甚麼其他問題啊?
我的硬體連接是PC to rs232 to max232 to 89S51,
8951軟體是用keil C,
目前主要是想說收到資料就把P0的LED顯示為11110000,
最終目的是要用LCD顯示matlab的結果,但LED都寫不出來了怎麼寫LCD.
Keil C程式:
#include <regx51.h>
#include <stdio.h>
main()
{
TMOD=0x20;
TH1=0xf3;
TR1=1;
SCON=0x50;
while(1)
{
RI=0;
while(RI==0);
{
P0=0xf0;
}
}
}
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 120.126.8.123
推 okgogogo:TH1確定正確? 與發送端2400 11/23 02:36
→ okgogogo:看似9600的TH1 11/23 02:38
推 x46824682x:tmtool 11/23 21:54
→ billy00685:我是12M震盪.所以SMOD設0.TH1=0xf3..應該沒錯 11/25 13:59