Arduino
작성자 임베디드코리아
작성일26-03-03 21:12
조회397회
댓글0건
아두이노 멀티 스레딩 프로그램
라이브러리는 다운로드 하세요!
ArduinoThread-master.zip
---<* Thread_example.ino *>------------------------------------------
#include <Thread.h>
#include <ThreadController.h>
ThreadController controll = ThreadController();
//My simple Thread
Thread myThread = Thread();
Thread myThread2 = Thread();
int m_nCount = 0;
int m_nTCount1 = 0;
int m_nTCount2 = 0;
// callback for myThread
void niceCallback()
{
++m_nTCount1;
Serial.print(" niceCallback : ");
Serial.print(millis());
Serial.print(" , ");
Serial.println(m_nTCount1);
}
void testCallback()
{
++m_nTCount2;
Serial.print(" testCallback : ");
Serial.print(millis());
Serial.print(" , ");
Serial.println(m_nTCount2);
}
void setup() {
Serial.begin(9600);
myThread.onRun(niceCallback);
myThread.setInterval(500);
myThread2.onRun(testCallback);
myThread2.setInterval(800);
controll.add(&myThread);
controll.add(&myThread2);
}
void loop() {
if(Serial.available())
{
int c = Serial.read();
}
// checks if thread should run
/*if(myThread.shouldRun())
myThread.run();
if(myThread2.shouldRun())
myThread2.run();*/
controll.run(); // 등록된 작업들을 주기마다 실행
// Other code...
++m_nCount;
/*
Serial.print("Main Thread : ");
Serial.println(m_nCount);
delay(1000);*/
}
------------------------------------------------------------------------------------------------------------