Bonjour j'utilise visual C++ 2008 express.

Ce que je souhaite faire c'est lire une température, un vent fort ou un vent faible que l'on envoie du PIC16F877a par liaison RS232 pour cela on envoie avant une température le nombre 45, avant un vent faible le nombre 96 et avant un vent fort le nombre 20.
Donc à mon avis le programme devrait être comme ca :
-lire
-Si c'est une température
-lire
-écrire dans un fichier text
-lire
-écrire dans un fichier text (si cela est trop dur on peut avoir qu'une donné température mais cela est moins précis)
-retourner au debut
-Si c'est un vent fort
-lire
-écire dans un fichier text
-retourner au debut
-Si c'est un vent faible
-lire
-écire dans un fichier text
-retourner au debut

Ce que j'ai fait :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
DWORD TCommManager::ReadBlock(LPVOID lpBuffer, DWORD dwNbBytesToRead)
{
	// nombres d'octets que l'on peut lire sur le port
	DWORD dwErrorFlags;
	COMSTAT	ComStat;
	m_pComm->ClearError(&dwErrorFlags, &ComStat);
	dwNbBytesToRead = min(dwNbBytesToRead, ComStat.cbInQue);
 
	// si aucune donnée à lire
	if(dwNbBytesToRead == 0)
		return 0;
 
	// lecture
	DWORD dwNbBytesRead;
	OVERLAPPED ov = {0};
	if(!m_pComm->Read(lpBuffer, dwNbBytesToRead, &dwNbBytesRead, &ov))
	{
		// si erreur autre que lecture non terminée
		if(GetLastError() != ERROR_IO_PENDING)
			return 0;
 
		// on attend que la lecture soit finie
		while(!GetOverlappedResult(m_pComm->GetHandle(), &ov, &dwNbBytesRead, TRUE))
		{
			if(GetLastError() != ERROR_IO_INCOMPLETE)
				break;
		}
	}
 
	// on renvoi le nombre d'octets lu
	return dwNbBytesRead;
 
	// Voir si le bytes est égal à 45
	if(lpBuffer = 00101101)
	{		
			int A = 1;
			int B = 0;
			int C = 0;
	}
 
	// Voir si le bytes est égal à 20
	if(lpBuffer = 00010100)
	{ 		
			int A = 0;
			int B = 1;
			int C = 0;
	}
 
	// Voir si le bytes est égal à 96
	if( lpBuffer = 01100000)
	{	
			int A = 0;
			int B = 0;
			int C = 1;
	}
 
	//Voir si c'est une température
	if(A = 1)
	{
 
			// ouverture en écriture avec ajout du fichier ouvert
        	ofstream fichier("Donne-meteolorogique.txt", ios::out | ios::app);  
 
			if(fichier)
			{	
				int A = 0;
				int temp =  lpBuffer;
                fichier << "Temperature : " << temp << endl;
 
                fichier.close();
        	}
        	else
                	cerr << "Impossible d'ouvrir le fichier !" << endl;
 
        	return 0;
 
	}
 
	//Voir si c'est un vent faible
	if(B = 1)
	{  
			// ouverture en écriture avec ajout du fichier ouvert
        	ofstream fichier("Donne-meteolorogique.txt", ios::out | ios::app);  
 
        	if(fichier)
        	{	
				int B = 0;
		    	int faible =  lpBuffer;
		    	fichier << "Vent faible : " << faible << endl;
 
                	fichier.close();
        	}
        	else
                	cerr << "Impossible d'ouvrir le fichier !" << endl;
 
        	return 0;
 
	}
 
	//Voir si c'est un vent fort
	if(C = 1)
	{
			// ouverture en écriture avec ajout du fichier ouvert
        	ofstream fichier("Donne-meteolorogique.txt", ios::out | ios::app);  
 
        	if(fichier)
        	{		
				int C = 0;
		    	int fort =  lpBuffer;
		    	fichier << "Vent fort : " << fort << endl;
 
					fichier.close();
        	}
        	else
                	cerr << "Impossible d'ouvrir le fichier !" << endl;
 
        	return 0;
 
	}
}
Voila les erreur que j'obtient maintenant :

1>------ Début de la génération : Projet : Serial, Configuration : Debug Win32 ------
1>Compilation en cours...
1>CommManager.cpp
1>c:\users\luffy44\downloads\serial\serial.h(40) : warning C4005: '_countof' : redéfinition de macro
1> c:\program files\microsoft visual studio 9.0\vc\include\stdlib.h(362) : voir la définition précédente de '_countof'
1>c:\users\luffy44\downloads\serial\commmanager.cpp(611) : error C2440: '=' : impossible de convertir de 'int' en 'LPVOID'
1> La conversion d'un type intégral en type pointeur nécessite reinterpret_cast, un cast de style C ou un cast de style fonction
1>c:\users\luffy44\downloads\serial\commmanager.cpp(619) : error C2440: '=' : impossible de convertir de 'int' en 'LPVOID'
1> La conversion d'un type intégral en type pointeur nécessite reinterpret_cast, un cast de style C ou un cast de style fonction
1>c:\users\luffy44\downloads\serial\commmanager.cpp(627) : error C2440: '=' : impossible de convertir de 'int' en 'LPVOID'
1> La conversion d'un type intégral en type pointeur nécessite reinterpret_cast, un cast de style C ou un cast de style fonction
1>c:\users\luffy44\downloads\serial\commmanager.cpp(635) : error C2065: 'A' : identificateur non déclaré
1>c:\users\luffy44\downloads\serial\commmanager.cpp(644) : error C2440: 'initialisation' : impossible de convertir de 'LPVOID' en 'int'
1> Aucun contexte dans lequel cette conversion est possible
1>c:\users\luffy44\downloads\serial\commmanager.cpp(657) : error C2065: 'B' : identificateur non déclaré
1>c:\users\luffy44\downloads\serial\commmanager.cpp(665) : error C2440: 'initialisation' : impossible de convertir de 'LPVOID' en 'int'
1> Aucun contexte dans lequel cette conversion est possible
1>c:\users\luffy44\downloads\serial\commmanager.cpp(678) : error C2065: 'C' : identificateur non déclaré
1>c:\users\luffy44\downloads\serial\commmanager.cpp(686) : error C2440: 'initialisation' : impossible de convertir de 'LPVOID' en 'int'
1> Aucun contexte dans lequel cette conversion est possible
1>Le journal de génération a été enregistré à l'emplacement "file://c:\Users\Luffy44\Downloads\Serial\Debug\BuildLog.htm"
1>Serial - 9 erreur(s), 1 avertissement(s)
========== Génération : 0 a réussi, 1 a échoué, 0 mis à jour, 0 a été ignoré ==========

Es ce que j'ai bien fait d'enlever int main() avant toute les paragraphe ou il y avait des int cela ne pose pas de soucis? Mais pour les autres erreur je comprend vraiment pas pourquoi seulement certain ipbuffer ou A ne veut-il pas? pourquoi le signe = ne marche pas, comment écire le code alors?

Voila est merci de votre aide, je vais continuer à chercher même si j'ai rien trouver pour l'instant.