Ahoj potřeboval bych napsat program pro otevření supliku který vyšle signál na jeden pin a počká na odpověď která přijde po druhém pinu. Napsal jsem to kdysi pro windows a teď bych to potřeboval pod Linuxem.
Tady je výpis toho programu pro windows .
//PortCom.h
#ifndef header_PortCom
#define header_PortCom
#include <windows.h>
#include <mmsystem.h>
#include <iostream>
#include <stdio.h>
#include <ctime>
//--------------------------------------------------------------------------//
bool OpenCom(int CisloComu);
void CloseCom(void);
void Wait_us(unsigned __int64 prodleva);
void CloseI2C(void);
void SetDTR(bool x);
void SetRTS(bool x);
void SetTX(bool x);
bool GetCTS(void);
bool GetDSR(void);
bool GetRing(void);
bool GetRLSD(void);
void Wait_us(unsigned __int64 prodleva);
void Wait_s(int prodleva);
#endif
#include "PortCom.h"
int main(int argc, char* argv[])
{
	OpenCom(1);
	std::cout << "Otviram suplik.";
	SetTX(true);
	while(GetCTS() == false);
	SetTX(false);
  std::cout << "\a\rOK koncim.";
  Wait_s(1);
	return 0;
}Tohle se mi podařilo sesmolit pro linux ale nemůžu přijít na to jak vyslat signál na určitý pin konektoru. 
#include <sys/ioctl.h>
#include <fcntl.h>
#include <unistd.h> 
#include <stdio.h>
#define SERPORT "/dev/ttyS0"
//---------------------------------------------------------------------------
	int fd;
	int status;
int main(int argc, char **argv)
{
	fd = open(SERPORT, O_RDWR);
		printf	("Otviram suplik.\n");
		do{
		ioctl(fd, TIOCMGET, &status); /* Nacte stav */
		status |= TIOCM_ST;	//pin 2 ST		
		ioctl(fd, TIOCMSET, &status); /* Nastavi bit */
		ioctl(fd, TIOCMGET, &status); /* Nacte stav */
		status |= TIOCM_CTS;	//pin 8 ST	
		}while((status &TIOCM_CTS) != 0);//Stoji dokud je 0
		ioctl(fd, TIOCMGET, &status); /* Nacte stav */
		status |= TIOCM_ST;	//pin 2 ST
		ioctl(fd, TIOCMBIC, & status); /* Vynuluje bit */		
		printf	("OK koncim.\n");	
	close(fd);
	return 0;
}