/*--------------------------------------------------------------------------------
'Nom du projet : Oscilloscope
'Outil : Visual C++ 6
'Nom du fichier: Port.cpp
'Realisation:Mathieu Texier et Emmanuel Traineau
'Date: Juin 2003
'Responsable: Eric Meleiro
'--------------------------------------------------------------------------------
Explications : Fichier sur lequel sont réunis la plupart des fonctions permettant l'affichage et la gestion des dialogues de l'application.
*/
#include "stdafx.h"
#include "Port.h"
#include <stdio.h> // fopen( ); , fwrite( ); , fclose( ); .
#include <fstream.h> //fstream();
#include <conio.h> //_outp( ); , _inp();
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif
char transfert[] = "tranfert.bin";
int CompteurTemps = 1;
int SeuilDivMax = 50;
BYTE PlageCourante = 04;
BYTE PlageMax = 07;
BYTE SeuilMin = 5;
unsigned char BufferEntree[BUFFER_LENGHT];
BYTE* pbufferEntree;
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
CPort::CPort()
{
// Port.cpp: implementation of the CPort class.
//
//////////////////////////////////////////////////////////////////////
// Lecture port du port parrallele
HandlePort();
Exporter();
}
CPort::~CPort()
{
}
void CPort::Exporter()
{
// création du fichier de sortie en mode binaire
ofstream FichierSortie(transfert);
int setmode(filebuf::binary);
char ErreurFichier[100];
if (!FichierSortie)
{ // contruction du méssage d'érreur
strcpy(ErreurFichier,"\0");
strcat(ErreurFichier,"impossible d'ouvrir le fichier");
strcat(ErreurFichier,transfert);
strcat(ErreurFichier,"en écriture");
// MessageBox (ErreurFichier, "Erreur");
}
/*
* écriture dans le le fichier de sortie ("transfert.bin")
* du buffer pointé par pbufferEntree
*/
FichierSortie << pbufferEntree;
FichierSortie.close();
}
/*
// * genère le signal d'horloge */
void CPort::BiteHorloge()
{
/*
// * Fonction non implanté
// * genère le signal d'horloge
BrocheSTROBE = 1;
_outp(0x378,BrocheSTROBE);
BrocheSTROBE = 0;
_outp(0x378,BrocheSTROBE);
*/
}
char CPort::LecturePort()
{
/*
BiteHorloge();
if (EndOfConvertion == 1)
{
*/
PortDonne = _inp(0x378);
return PortDonne;
/*
}
*/
}
void CPort::HandlePort()
{
int i;
for (i=0;i<BUFFER_LENGHT;i++)
{
BufferEntree[i] = LecturePort(); // lecture mot Adc;
}
// pointeur BufferEntree
pbufferEntree = (BYTE *)BufferEntree;
}