Quote
int Volume1 = 3;
int Volume2 = 4;
int val1 = 0;
int val2 = 0;
void setup() {
pinMode(0, OUTPUT);
pinMode(1, OUTPUT);
pinMode(3, INPUT);
pinMode(4, INPUT);
}
void loop() {
val1 = map(analogRead(Volume1),0,1023,0,255);
analogWrite(0,val1);
val2 = map(analogRead(Volume2),0,1023,0,255);
analogWrite(1,val2);
}
มันปรับโวลลุ่มได้ PWMออกได้ พอร์ตเดียวอ่ะครับ
อีกพอร์ตไม่ยอมออกครับ
ทำไงดีครับ
:-[
มันมีแค่ ADC0 - ADC3 นะครับ Volume2 = 4 เลยใช้ไม่ได้ ใช้แค่ 0 - 4
ให้เขียนเป็น volume2 = A0 (หรือ A1,A2,A3 ตามแต่ขาที่ต่อ)
โอเค ครับ ขอบคุณมาก ได้แบบมั่วๆแก้เป็น
int Volume1 = 2;
int Volume2 = 3;
เอาอะไรเบอร์น ATINY45 และเบอร์ยังไงครับ
ใช้บอรด์ arduino เบรินให้ก็ได้ครับ อีกอย่าง TINY 45 ไม่ต้องมี bootloadder หรือ จะใช้ชุดเบรินของ ETT ก็ได้ครับ พวก
mark II อะไรพวกนั้น ผมเคยลองใช้ พบว่า เรื่องฐานเวลาไม่ค่อยสเถียรเท่าที่ควร ใครมีวิธีเเก้มาบอกหน่อยนะครับ
ใช้แบบนี้เลย ครับ ง่ายๆ
ใช้ Arduino ครับ อย่าลืมเรื่อง FUSEBIT ครับ
const int Volume1 = 3;
const int Volume2 = 4;
int val1 = 0;
int val2 = 0;
void setup() {
pinMode(0, OUTPUT);
pinMode(1, OUTPUT);
}
void loop() {
val1 = analogRead(Volume1);
analogWrite(0,val1);
val2 = analogRead(Volume2);
analogWrite(1,val2);
}
Quote from: OoAMDoO on February 25, 2013, 03:59:05 PM
ใช้บอรด์ arduino เบรินให้ก็ได้ครับ อีกอย่าง TINY 45 ไม่ต้องมี bootloadder หรือ จะใช้ชุดเบรินของ ETT ก็ได้ครับ พวก
mark II อะไรพวกนั้น ผมเคยลองใช้ พบว่า เรื่องฐานเวลาไม่ค่อยสเถียรเท่าที่ควร ใครมีวิธีเเก้มาบอกหน่อยนะครับ
ดูเรื่อง FUSEBIT ครับ ผมใช้อยู่ ก็ work ดี นะครับ internal clock 8 M