outport() w C++ i opóźnienia

0

Witam!

Piszę programik do obsługi LCD (winxp z odblokowanymi portami) i korzystam z Buildera 6 i DEV-CPP w których nie ma standardowo funkcji outport() i inport(). Po kilkudniowych poszukiwaniach znalazałem takie rozwiązanie problemu:

void outport (unsigned short iPort , unsigned short iDatum)
{
  _DX = iPort;
  _AX = iDatum;
  __emit__ (0xEE);  // opcode of intruction OUT
}

unsigned int inport (unsigned short iPort)
{
  _DX = iPort;
  __emit__ (0xEC);  // opcode of intruction IN
  return (_AL);
}

Stosuje jednynie outport i niestety funkcja ta (bo chyba to jej wina) wnosi straszne opóźnienia Sad Transmisja jest na tyle spowoniona, że na wyświetlaczu znaki pojawiają się z efektem "maszyny do pisania" Sad Tekst nie wyświetla się od razu tylko literka po literce Sad

Znalazłem też ciekawy programik w c++ obsługujący wyświetlacz, też się sporo naszukałem Wink (program w załączniku) . Wersja skompilowana przez autora działa normalnie jednak ten sam kod kompilowany przeze mnie również wyświetla z opóźnieniem Sad

Czy ktoś z Was ma pomysł jak pozbyć się tego strasznego efektu?

0

do pracy z portami polecam http://www.logix4u.net/inpout32.htm

0

ok dzięki :) spróbuje... może sie uda :)

0

problem rozwiązany :D funkcje są ok :) tylko miałem źle dobrane opóźnienia :/ dzięki za wskazówki! temat uważam za zamknięty!

1 użytkowników online, w tym zalogowanych: 0, gości: 1