MATLAB постави светодиод към сериен порт

Работя върху MATLAB, искам да свържа само светодиод и резистор към сериен порт.

Когато се случи конкретно действие в моята програма, светодиодът трябва да светне.

Какво направих, но нищо не се случи:

S   = serial( 'com1' );
fid = fopen( s );                         # ... 've checked the s vs. S ?

person Hasan Haj    schedule 17.05.2015    source източник
comment
Това не може да работи, трябва ви устройство, което може да говори с компютъра, за да установи серийна връзка. Можете да потърсите например arduino платки, но има много други опции.   -  person Ratbert    schedule 17.05.2015
comment
Това не е програмен въпрос, тъй като по същество е проблем с липсата на хардуер.   -  person Ratbert    schedule 17.05.2015
comment
Благодаря, но имам нужда от проста платка, която се състои само от резистор и светодиод, след което ще ги свържа към компютъра през серийния порт. Моля за всяка помощ как да го кодирам   -  person Hasan Haj    schedule 17.05.2015
comment
Отново, това просто не е възможно. Така не стават нещата.   -  person Ratbert    schedule 17.05.2015
comment
Какво мога да направя в тази ситуация, ако имате някакво решение.   -  person Hasan Haj    schedule 17.05.2015
comment
@Ratbert: не е необходим специален хардуер. On може да свързва светодиоди с резистори директно към сериен порт без допълнителен хардуер (вижте тук например). Това обаче не означава, че е добра или стабилна идея. И класът serial на Matlab е малко вероятно да работи за това. Ще са необходими средства от по-ниско ниво за изпращане на данни към серийния порт.   -  person horchler    schedule 17.05.2015
comment
@horchler Добре, не знаех за това, благодаря или връзката.   -  person Ratbert    schedule 17.05.2015
comment
Трябва да работи... серийният порт не изисква проверка на импеданса или съобщения за потвърждение за събуждане преди изпращане на байтове... Предлагам ви да опитате с инструмент на трета страна - Hyperterminal :) - и с тестер върху щифтове 2 и 3 и да видите какво случва се.....   -  person Brethlosze    schedule 31.05.2015


Отговори (1)


Трябва да можете да управлявате линиите DTR и RTS (съответно на DB-9 конектори на пинове 4 и 7) от MATLAB. Според препратката обектите на серийния порт имат свойствата DataTerminalReady и RequestToSend, които могат да се превключват. Например,

S = serial('com1');
for ii = 1:5
    set(S, 'RequestToSend', 'on');
    pause(1)
    set(S, 'RequestToSend', 'off');
    pause(1)
end

ще мига светодиод, свързан към щифта RTS пет пъти.

person zeeMonkeez    schedule 22.02.2016