분류 전체보기

직렬(Serial)통신 이란? 직렬 통신은 순차적으로 데이터를 한번에 하나의 비트만을 전송합니다. 양단간 통신 거리가 먼 경우에도 사용하기 용이 USB, RS232 등이 사용하는 방식 송신과 수신 라인이 다름. 두 장치가 동시에 데이터 전송 가능 병렬(Parallel)통신 이란? 여러 개의 병렬 위로 동시에 여러 개의 데이터 신호를 보내는 방식 양단간 통신 거리가 먼 경우에는 사용하기 어려움 한번에 여러 비트가 전송되는 경우 각 비트는 하나의 와이어를 사용하여 전송에 포함됩니다. 예를 들어, 32비트 통신에서는 데이터를 전송하기 위해 32개의 와이어가 필요합니다. 32개의 와이어를 정확히 동일한 길이로 만드는 것은 거의 불가능합니다. 더 높은 클럭 속도에서 더 짧은 와이어를 통해 전송 된 데이터는 더 긴..
폴링(Polling) 이란? CPU가 작업을 진행하다 입출력 명령을 만나면 직접 입출력 장치에서 데이터를 가져오는 방식이다. 특정 주기마다 스레드를 돌면서 시그널이 들어왔는지 확인하는 방식입니다. 소프트웨어적으로 시그널을 확인하는 것입니다. 예를 들면 while문에 250ms flag(특정 동작을 수행할지 말지 결정하는 변수(1bit) )가 set듸엇을 때 if문을 통해 특정 시그널이 set되었는지 확인하는 것이입니다. 이렇게 주기마다 계속 확인해야 하기 때문에 시스템의 리소스를 많이 먹고 반응속도가 느리다는 단점이 있습니다. 이는 CPU가 직접 일을 하기 때문에 입출력을 하는 동안 다른 일을 못한다. 따라서 입출력이 처리되는 동안 기다려야 되는데 시간이 오래 걸리며 작업 효율이 떨어진다. 또한 특정 주..
· Qt Creator
step1. stm32와 dht11 연결 확인 step2. QT ui만들기 step3. Serialport 연결하기 libqt5serialport5-dev가 설치 되어 있어야 합니다. pro파일에 serialport를 연결합니다. serialport를 연결하기 위한 헤더파일을 추가합니다. step4. ttyACM0의 mode를 아래와 같이 변경합니다. 코드 GitHub - kyw6416/Qt_STM32_Interface Contribute to kyw6416/Qt_STM32_Interface development by creating an account on GitHub. github.com 작동영상
· Qt Creator
코드 #ifndef MAINWINDOW_H #define MAINWINDOW_H #include QT_BEGIN_NAMESPACE namespace Ui { class MainWindow; } QT_END_NAMESPACE class MainWindow : public QMainWindow { Q_OBJECT public: MainWindow(QWidget *parent = nullptr); ~MainWindow(); private slots: void on_pushButton_1_clicked(); void on_pushButton_3_clicked(); void on_pushButton_7_clicked(); void on_pushButton_2_clicked(); void on_pushButton_..
· Qt Creator
timer를 사용 ProgressBar 증가 시키기 step1. UI 디자인 step2. 타이머 라이브러리 추가 mainwindow.cpp 파일에 타이머 라이브러리를 추가 해줍니다. #include step3. 헤더파일에 변수와 함수 추가 #ifndef MAINWINDOW_H #define MAINWINDOW_H #include QT_BEGIN_NAMESPACE namespace Ui { class MainWindow; } QT_END_NAMESPACE class MainWindow : public QMainWindow { Q_OBJECT public: MainWindow(QWidget *parent = nullptr); ~MainWindow(); private: Ui::MainWindow *ui; QT..
· Qt Creator
Slider랑 progressBar 연결 1. Edit Signals/Slots 사용 step1. Edit Signals/Slots 클릭 step2. 원하는 입력을 클릭 후 원하는 출력으로 연결 step3. 입력값, 출력값 선택 2. mainwindow.cpp 파일에서 connect 함수사용 connect(ui -> horizontalSlider_2, SIGNAL(valueChanged(int)),ui -> progressBar_2, SLOT(setValue(int))); connect(ui -> verticalSlider_2, SIGNAL(valueChanged(int)),ui -> lcdNumber_2, SLOT(display(int))); connect(ui -> dial_2, SIGNAL(valu..
kyw6416
'분류 전체보기' 카테고리의 글 목록 (11 Page)