MSP430 Launcherpad + управление розетками
Добавлено: Ср дек 26, 2012 9:44 pm
Texas Instruments выпускает платы MSP430 Launcherpad по цене $4.30 за штуку с бесплатной доставкой по всему миру. В комплекте идут два микроконтроллера:
MSP430G2553IN20 – 16kB Flash, 512B RAM
MSP430G2452IN20 – 8kB Flash, 256B RAM
Хорошая и дешевая альтернатива Arduino

Управляемые розетки я использовал такие:

около $20 за комплект из трех розеток и пульта.
Схема подключения MSP430 к пульту.

используется оптрон PC847
для программирования MSP430 Launcherpad использовалась среда разработки Energia. По ссылке можно скачать последнюю версию.
Язык программирования Wiring - такой же, как и для Arduino.
код программы:
после прошивки микроконтроллера подключаем его к ПК с установленной системой MajorDOMO, Создаем кнопку в меню и вставляем следующий код:
и по аналогии для каждой кнопки.
сделал себе меню:

MSP430G2553IN20 – 16kB Flash, 512B RAM
MSP430G2452IN20 – 8kB Flash, 256B RAM
Хорошая и дешевая альтернатива Arduino

Управляемые розетки я использовал такие:

около $20 за комплект из трех розеток и пульта.
Схема подключения MSP430 к пульту.

используется оптрон PC847
для программирования MSP430 Launcherpad использовалась среда разработки Energia. По ссылке можно скачать последнюю версию.
Язык программирования Wiring - такой же, как и для Arduino.
код программы:
Код: Выделить всё
byte inByte = 0;
void setup() {
Serial.begin(9600);
pinMode(P1_4, OUTPUT);//OFF A
pinMode(P1_5, OUTPUT);//OFF B
pinMode(P1_6, OUTPUT);//ON A
pinMode(P1_7, OUTPUT);//ON b
digitalWrite(P1_4, LOW);
digitalWrite(P1_5, LOW);
digitalWrite(P1_6, LOW);
digitalWrite(P1_7, LOW);
}
void loop() {
if (Serial.available() > 0) {
inByte = Serial.read();
switch (inByte) {
case 10:
digitalWrite(P1_4, HIGH);
delay(400);
digitalWrite(P1_4, LOW);
break;
case 11:
digitalWrite(P1_5, HIGH);
delay(400);
digitalWrite(P1_5, LOW);
break;
case 20:
digitalWrite(P1_6, HIGH);
delay(400);
digitalWrite(P1_6, LOW);
break;
case 21:
digitalWrite(P1_7, HIGH);
delay(400);
digitalWrite(P1_7, LOW);
break;
}
}
}
Код: Выделить всё
exec("mode com2: BAUD=9600 PARITY=N data=8 stop=1 xon=off");
$fp =fopen("COM2", "w");
fwrite($fp, chr(20)); //записываем 20 в порт
fclose($fp);
сделал себе меню:

.