• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Obsługa portu COM - code::blocks

Object Storage Arubacloud
0 głosów
372 wizyt
pytanie zadane 27 października 2018 w C i C++ przez Badzonor Obywatel (1,410 p.)

Witam, chcę napisać program który będzie działał na podobnej zasadzie jak Serial monitor w Arduino IDE.

Wiem już że do tego celu można użyć funkcji CreateFile(), WriteFile(), ReadFile() ale jak na razie jedyne co udało mi się zrobić to program który mówi mi czy można otworzyć port COM1 (to jest port na którym mam podłączone Arduino UNO) a wygląda on tak:

#include <iostream>
#include <windows.h>
#include <stdio.h>

using namespace std;

int main()
{
    HANDLE hComm = CreateFile( "COM1",
                               GENERIC_READ | GENERIC_WRITE,
                               0,
                               0,
                               OPEN_EXISTING,
                               FILE_FLAG_OVERLAPPED,
                               0);
    if (hComm == INVALID_HANDLE_VALUE)
    {
        DWORD lastError = GetLastError();
        cout<<"ERROR = "<<lastError<<endl;
    }
    else cout<<"COM1 open!"<<endl;
    CloseHandle(hComm);
}

A gdy próbowałem z funkcją ReadFile() to nie potrafię odczytać tego co nadaje Arduino.

Kod Arduino:

void setup() {
  // put your setup code here, to run once:
  Serial.begin(9600);
}

void loop() {
  // put your main code here, to run repeatedly:
  Serial.println("Test");
  delay(100);
}

Uprzedzam pytanie: jeżeli włączam Serial Monitor to wszystko działa tak jak powinno (co 100ms dostaje wiadomość "Test") więc nie jest problem z Arduino. 

Z góry dzięki za odpowiedzi :)

komentarz 27 października 2018 przez j23 Mędrzec (194,920 p.)
Pokaż kod, w którym czytasz z portu.

1 odpowiedź

0 głosów
odpowiedź 28 października 2018 przez profesorek96 Szeryf (91,420 p.)

Podobne pytania

0 głosów
0 odpowiedzi 500 wizyt
0 głosów
0 odpowiedzi 492 wizyt
0 głosów
0 odpowiedzi 181 wizyt
pytanie zadane 16 marca 2023 w C i C++ przez piotr_domanski Bywalec (2,080 p.)

92,565 zapytań

141,418 odpowiedzi

319,604 komentarzy

61,951 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...