|
|
当サイトは、玄箱PRO (KURO-BOX/Pro)を中心とした組み込み、Linuxと電子工作を扱っています。
会社案内
情報セキュリティおよび個人情報の取り扱いについて コメントとトラックバックは、spamを予防するために、編集担当が公開の作業をするまで非公開になっています。コメントはそれぞれ投稿した人のものです。 |
kurobox-pro:/home/k-wada/program# cu -l /dev/ttyUSB0 Connected. at OK
#include#include #include #include #include #include #include #define BAUD 1200 unsigned char buff[256] = {0, 0, 0, 0, 0, 0, 0, 0, 0}; char txbuff[256] = {'A', 'T', 0x0d, 0x0a}; char flag = 1; int FD232c; struct termios qtermios; /* termios.h */ static char sio[] = "/dev/ttyUSB0"; int main() { int r, c; if((r = open232c(sio)) > 0) { fprintf(stderr, "%d\n", r); exit (1); } while (flag) { flag = 0; write(FD232c, txbuff, 4); sleep(1); if ((c = read(FD232c, buff, 10)) > 0) { fprintf(stdout, "%c%c\n", buff[0], buff[1]); } } close(FD232c); } int open232c(char* ttyname) { struct termios tty; int r; if((FD232c = open(ttyname, O_RDWR|O_NDELAY|O_NONBLOCK, 0477)) >= 0) { qtermios.c_iflag = IXOFF; qtermios.c_lflag = (PENDIN|ECHOKE|ECHOE); qtermios.c_cflag = (CLOCAL|HUPCL|CREAD|CS8); qtermios.c_ispeed = BAUD; qtermios.c_ospeed = BAUD; tcsetattr (FD232c, TCSANOW, &qtermios); return 0; } perror("Can't open SIO.\n"); return 1; }
#! /bin/sh
modem=/home/k-wada/program/modem/modem
xport=/home/k-wada/program/xport/xport
ip="192.168.1.22"
ON="!A20"
OFF="!A28"
while true
do
ack=`$modem`
if [ "$ack" = "AT" ]
then
echo "ON"
echo $ON | $xport -h $ip
sleep 3
else
echo "OFF"
echo $OFF | $xport -h $ip
sleep 1
fi
done
もともと玄箱(pro)を利用して考えている基本的なことは、人を感知し、何らかのインテリジェンスな処理をこなし、XPortにてネットワーク経由で親
機ユニット(シリアル通信タイプ)に通信を行い、この親機が 100V
ラインを通じて、別の部屋の機材の電源オン/オフすることでした。上述のように「人の感知」の製作部分は終了したわけです。このブログ記事を参照しているブログ一覧: XPort活用 「その3」《家庭電源制御編》 その2
このブログ記事に対するトラックバックURL: http://www.eleki-jack.com/mt/mt-tb.cgi/1856
おすすめ書籍 |
![]() |
コメントする