Jump to content

    

ft245 bitbang

Прошу помощи разобраться с двумя устройствами на ft245

Цель, по команде с ПК устанавливать 1 на определенный пин, с 1го по 4ый.

Устройства два, куплены на собранной плате. Ошибок в монтаже нет.

Насколько корректно подключаться к каждому устройству по индексу (OpenByIndex(fo,0) ли (OpenByIndex(fo,1)?

Периодически микросхема уходит в себя и без снятия питания не откликается.

Или не устанавливаться 1 определенном выводе. При этом функции возвращают FT_OK

код матлаб такой

 

function [ output_args ] = FT_245_SWITCHES( nbr_chanel )

f = NET.addAssembly('C:\FTD2XX_NET.dll');

% посмотреть возможные методы

%methodsview( 'FTD2XX_NET.FTDI');

 

% открываем доступ к первому комутатору

fo=FTD2XX_NET.FTDI;

 

allBitsOutputMask = uint8(255); % '1' bit is output

bitBangMode = uint8(1); % '1' mode is async bitbang

x(1) = uint8(nbr_chanel);% 1 2 4 8

 

r = OpenByIndex(fo,0);

r = SetBitMode( fo, allBitsOutputMask, bitBangMode);

r = Write( fo, x, 1, 0);

pause(0.5);

r = Close(fo);

pause(0.1);

 

r = OpenByIndex(fo,1);

r = SetBitMode( fo, allBitsOutputMask, bitBangMode);

r = Write( fo, x, 1, 0);

pause(0.5);

r = Close(fo);

 

на данный момент, на 1 ом устройстве не устанавливается 1 пин, а на втором 4 ый

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this