Witam,
szukam jakiejś dobrej literatury na temat portów(Wujaszek Google wypluwa same nonsensy)jeżeli ktoś ma coś naprawdę godnego uwagi to proszę o podzielenie się(-:
Pozdro.
Witam,
szukam jakiejś dobrej literatury na temat portów(Wujaszek Google wypluwa same nonsensy)jeżeli ktoś ma coś naprawdę godnego uwagi to proszę o podzielenie się(-:
Pozdro.
Architektura PC - dość droga książka, ale masz dobry opis i nawet elektroniczny.
Nie mam teraz dostepu, ale wydaje mi się, że powinny być przerwania na to - bo takie rzeczy najprzejrzysćiej pisze się w asmie.
poprzeglądaj sobie ten kod ↓ może coś Ci pomoże:
include <windows.h>
#include <stdio.h>
int main(int argc, char** argv)
{
HANDLE hCom; //uchwyt portu
DCB dcb; //konfiguracja portu
BOOL fSuccess; //flaga pomocnicza
BYTE RS_buf; //bufor danej
DWORD RS_ile; //ilosc bitow wyslanych
//otwarcie portu COM1 z prawami RW
hCom = CreateFile( TEXT("COM1"), GENERIC_READ | GENERIC_WRITE,
0, // exclusive access
NULL, // default security attributes
OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
if (hCom == INVALID_HANDLE_VALUE)
{
printf("CreateFile failed with error %d.\n", GetLastError());
return 1;
}
//pobranie aktualnych ustawien portu
fSuccess = GetCommState(hCom, &dcb);
if (!fSuccess)
{
printf ("GetCommState failed with error %d.\n", GetLastError());
return 2;
}
//ustawienie naszej konfiguracji
dcb.BaudRate = CBR_19200; // predkosc transmisji
dcb.ByteSize = 8; // ilosc bitow danych
dcb.Parity = NOPARITY; // brak bitu parzystosci
dcb.StopBits = TWOSTOPBITS; // dwa bity stopu
fSuccess = SetCommState(hCom, &dcb);
if (!fSuccess)
{
printf ("SetCommState failed with error %d.\n", GetLastError());
return 3;
}
//wyslanie 1 bajta przez RS
RS_buf='a';
fSuccess = WriteFile( hCom, &RS_buf, 1, &RS_ile, 0);
if (!fSuccess)
{
printf ("WriteFile failed with error %d.\n", GetLastError());
return 4;
}
while(1)
{
fSuccess = ReadFile( hCom, &RS_buf, 1, &RS_ile, 0);
if (!fSuccess)
{
printf ("ReadFile failed with error %d.\n", GetLastError());
return 5;
}
if(RS_ile==1)
{
if(RS_buf == 1) break;
printf("%c", RS_buf);
}
}
return 0;
}
Mam ebooka "Urządzenia techniki komputerowej cz. 1", gdzie takie sprawy mogą być opisane (nie wiem , nie sprawdzałem).
"a imię jego będzie czterdzieści i cztery"
A. Mickiewicz Dziady cz. III