Dvě třídy v jednom projektu používají #include "ftd2xx.h" – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Dvě třídy v jednom projektu používají #include "ftd2xx.h" – C / C++ – Fórum – Programujte.comDvě třídy v jednom projektu používají #include "ftd2xx.h" – C / C++ – Fórum – Programujte.com

 

Toto vlákno bylo označeno za vyřešené — příspěvek s řešením.
6. 8. 2014   #1
-
0
-

Ahoj,

mám v projektu 2 třídy 

#ifndef RS485classH
#define RS485classH

#include "ftd2xx.h"
//---------------------------------------------------------------------------

class RS485
{
private:
	FT_HANDLE RShandle;

public:
	FT_STATUS OpenRS485(char* JmenoPripojovaneho);
};
#endif

určenou pro komunikaci přes RS485 (v podstatě COM) a 

#ifndef DACclassH
#define DACclassH

#include "ftd2xx.h"
#include "FTCSPI.h"


//---------------------------------------------------------------------------

class DACclass
{
  private:
	FTC_HANDLE SPIhandle;           //= NULL;
	FTC_CHIP_SELECT_PINS SelPins;   //= {0,1,1,1,1};    //struktura pro nastaveni Select Pins
	FTC_INPUT_OUTPUT_PINS IOPins;   //= {0,0,1,0,1,0,1,0};    //struktura pro nastaveni I/O Pins
	FTC_LOW_HIGH_PINS vstupy;       //struktura obsahuje stav GPIOH
	FTC_INIT_CONDITION InitCond;    //= {0, 1, 1, ADBUS3ChipSelect};
	FTC_WAIT_DATA_WRITE WriteCompl; //= {0, ADBUS2DataIn, 1, 1};
	FTC_HIGHER_OUTPUT_PINS OutPins; //= {0, 0, 0, 0, 0, 0, 0, 0};
	FTC_HIGHER_OUTPUT_PINS piny;
	WriteDataByteBuffer outADC;      //data do DAC
	WriteControlByteBuffer control;  //data pro Communication Register ADC
	DWORD IDZarizeni;
	DWORD PocetZarizeni;
	char JmenoZarizeni[100];

  public:
	DACclass();
	~DACclass();
	FTC_STATUS PripojDAC(char* JmenoPripojovaneho);  //otevre zarizeni podle nazvu
	FTC_STATUS InicializaceSPI();   //inicializace otevreneho zarizeni
	FTC_STATUS DAC_update(int value);
	FTC_STATUS CtiGPIOL(FT_HANDLE handle, byte* precteno);
	void OdpojDAC();
};
#endif

je určena pro komunikaci s DAC po SPI. Hardware je postaven na FT2232D. Každá jednotlivě funguje. Pokud jsou obě třídy použity v jednom projektu, vznikne problém s opakovaným vložením ftd2xx.h 

hu

Nahlásit jako SPAM
IP: 193.86.81.–
KIIV
~ Moderátor
+43
God of flame
6. 8. 2014   #2
-
0
-

tak to include ftdi obal ifndefem vsude, kde se to vklada.. a bude po problemu

Nahlásit jako SPAM
IP: 94.113.95.–
Program vždy dělá to co naprogramujete, ne to co chcete...
Řešení
6. 8. 2014   #3
-
0
-
Vyřešeno Nejlepší odpověď

Nepomohlo.

Vypadá to, že potřebuje něco z windows.h. Pokud je před ftd2xx.h vždy vložen i windows.h, problém není. 

hu

Nahlásit jako SPAM
IP: 193.86.81.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 83 hostů

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý