ポケコンでリレー制御 Pocket computer & relay
Автор: KOJISAN7
Загружено: 2012-11-14
Просмотров: 16461
Описание:
8個のリレーを、シャープのポケットコンピュータ PC-G850VS で制御しました。
ポケットコンピュータ PC-G850 は現在は生産終了になってしまいました。
中古市場で比較的入手しやすく、取扱説明書付きで数千円から1万円前後といったあたりが相場のようです。
取扱説明書付無しだと安くはなりますが、その情報無しでプログラミングするのは難があります。
• PART 2:シャープのポケコンPC-G850VSでリレーを制御:Controlli...
ハード、ソフトとも今回の動画と殆ど同じですが、映像的な効果を目指して大きいリレーにしたものです。
下にあるように半角の”<”と”>”を考慮し、これを使わないようにプログラムに手を加えました。
以下は動画中にあったプログラム・リストです。
プログラム中の半角の"<"と">"はこの説明欄で使用できませんので、全角の"<"と">"に置き換えてあります。
Below is the program list that was in the video.
Half-width(1 byte charcter) "<" and ">" in the program cannot be used in this description, so they have been replaced with full-width(2 byte charcter) "<" and ">".
***************************************************
'INCREMENT AND DECREMENT
'
PIOSET 0
OPEN "PIO:"
'
'SET DEFAULT VALUE
W9=15 'SPEED
A=255
CN=1
'
*LP1
PIOPUT 0
CLS
PRINT "ENTER:START E:END"
PRINT "Cn:COUNT Wn:WAIT"
PRINT "Mn:MAX n:1,2,3.."
PRINT
PRINT "C:";CN;" W:";W9;" M:";A
S$=""
INPUT S$
IF S$="" THEN GOTO *JP1
'
C$=LEFT$(S$,1):V1$=RIGHT$(S$,LEN(S$)-1)
V=VAL(V1$)
IF C$="M" THEN A=V:GOTO *LP1
IF C$="W" THEN W9=V:GOTO *LP1
IF C$="C" THEN CN=V:GOTO *LP1
IF C$="E" THEN PRINT:CLOSE:END
GOTO *LP1
'
*JP1
FOR CC=1 TO CN
LOCATE 0,5:PRINT CC;
FOR N=0 TO A
GOSUB *OT
NEXT N
FOR N=A-1 TO 1 STEP -1
GOSUB *OT
NEXT N
NEXT CC
GOTO *LP1
'
*OT
LOCATE 6,5
PRINT "HEX:";
IF N<16 THEN PRINT "0";
PRINT HEX$(N);" DEC:";N;" "
PIOPUT N AND &HFF
GOSUB *WA
RETURN
'
*WA
FOR WW=1 TO W9 :NEXT WW
RETURN
******************************************************
'8 BIT RIGHT & LEFT SHIT
'
W9=50:T=4:P=8 'SET DEFAULT
'
PIOSET 0
OPEN "PIO:"
DIM H1(8)
H1(1)=1:H1(2)=3:H1(3)=7:H1(4)=&HF:H1(5)=&H1F
H1(6)=&H3F:H1(7)=&H7F:H1(8)=&HFF
DIM S1(16)
'
X=0
GOSUB *SETP
'
*LP1
PIOPUT H1(0)
IF X=0 THEN
*IHEAD
CLS
PRINT "ENTER:START E:END"
PRINT "Cn:COUNT Wn:WAIT"
PRINT "Pn:PATTERN(n=1..8)"
PRINT
PRINT "C:";T;" W:";W9;" P:";P
'
S$=""
INPUT S$
IF S$="" THEN GOTO *JP1
C$=LEFT$(S$,1):V1$=RIGHT$(S$,LEN(S$)-1)
V=VAL(V1$)
IF C$="P" THEN P=V:GOSUB *SETP:GOTO *IHEAD
IF C$="W" THEN W9=V:GOTO *IHEAD
IF C$="C" THEN T=V:GOTO *IHEAD
IF C$="E" THEN PRINT:CLOSE:END
GOTO *IHEAD
*JP1
LOCATE 0,5:PRINT "***"
X=T
ENDIF
X=X-1
'
LOCATE 4,5:PRINT T-X
GOSUB *SL
GOSUB *SR
GOTO *LP1
'
*SETP
K=H1(P)
FOR N=8 TO 0 STEP -1
S1(N)=K
K=K\2
NEXT N
K=H1(P)
FOR N=9 TO 16
K=(K+K) AND &HFF
S1(N)=K
NEXT N
RETURN
'
*SL 'SHIFT LEFT
FOR I=8-P TO 16
R=S1(I)
GOSUB *OPACK
NEXT I
RETURN
'
*SR 'SHIFT RIGHT
FOR I=15 TO 9-P STEP -1
R=S1(I)
GOSUB *OPACK
NEXT I
RETURN
'
*OPACK
PIOPUT R
GOSUB *WA
RETURN
'
*WA
FOR WW=1 TO W9 :NEXT WW
RETURN
*********************************************
'8 BIT RANDOM OUT
'
W9=20 'TIME COUNT
LC=100 'LOOP COUNT
'
PIOSET 0
OPEN "PIO:"
'
*LP1
CLS
PRINT "ENTER:START E:END"
PRINT "Cn:COUNT Wn:WAIT"
PRINT
PRINT "C:";LC;" W:";W9;"
S$=""
INPUT S$
IF S$="" THEN GOTO *JP1
'
C$=LEFT$(S$,1):V1$=RIGHT$(S$,LEN(S$)-1)
V=VAL(V1$)
IF C$="W" THEN W9=V:GOTO *LP1
IF C$="C" THEN LC=V:GOTO *LP1
IF C$="E" THEN PRINT:CLOSE:END
GOTO *LP1
'
*JP1
LOCATE 0,4:PRINT "***"
'
FOR N=1 TO LC
A= RND 255
PIOPUT A
LOCATE 4,4:PRINT N;
GOSUB *WA
NEXT N
'
PIOPUT 0
GOTO *LP1
'
*WA
FOR WW=1 TO W9
NEXT WW
RETURN
Повторяем попытку...
Доступные форматы для скачивания:
Скачать видео
-
Информация по загрузке: