こんにちは dimensionです。 パソコン(PC/AT)互換機の25ピン パラレル(プリンタ)ポートコネクタの入出力方法について ご存知のかたございましたら、 PORTアドレスとコネクタのピン・アサインの関係を 教えて下さい。 目的: 電信の解読をパソコンで行う。 トンデコータIC(NJM567)論理出力の1ビットをパソコンへ入力したい。 現在調べてわかった情報 http://japan.maxim-ic.com/appnotes.cfm/appnote_number/3315 から引用 #define LPT1 0x378 #define LPT2 0x3BC #define LPT3 0x278 #define LPT4 0x378 http://www.asahi-net.or.jp/~mz8h-tkd/others.html#adc10 徳田氏著作から引用 ソフトはDOS/V上のQBASICで作りました。サンプルプログラムは次の通りです。 ' Using Printer Port ' LED flush - display "Z80" ' 'CLEAR port = &H3BC: 'Address LPT1 for IBM NOTE C23V DIM led(50) led(1) = &HC1: ' ooxxxxxo "Z" led(2) = &HB1: ' oxooxxxo led(3) = &H8D: ' oxxxooxo led(4) = &H83: ' oxxxxxoo led(5) = &H0: ' xxxxxxxx space led(6) = &H0: ' xxxxxxxx space led(7) = &H7E: ' xoooooox "8" led(8) = &H89: ' oxxxoxxo led(9) = &H89: ' oxxxoxxo led(10) = &H7E: ' xoooooox led(11) = &H0: ' xxxxxxxx space led(12) = &H0: ' xxxxxxxx space led(13) = &H7E: ' xoooooox "0" led(14) = &H81: ' oxxxxxxo led(15) = &H81: ' oxxxxxxo led(16) = &H7E: ' xoooooox led(17) = &H0: ' xxxxxxxx space led(18) = &H0: ' xxxxxxxx space led(19) = &H0: ' xxxxxxxx space led(20) = &H0: ' xxxxxxxx space start: FOR i = 1 TO 19 a = led(i) b = a XOR &HFF: 'bit reverse 'b = a 'for test c$ = HEX$(b) 'PRINT i, a, HEX$(a), b, c$ 'for test OUT port, b: 'go on LED 'FOR lp = 1 TO 1: NEXT lp 'LED on period 'FOR lp = 1 TO 1500: NEXT lp 'for test NEXT i 'FOR k = 1 TO 50: NEXT k GOTO start: 'OUT port, 0 END 不明点: ・LPT1:のポートは機種間で異なるの? 上記文献でPORTアドレス(LPT1用)が異なる。 ・入力は出力と同じアドレスで可能か? (同一アドレスで双方向が可能?) ・25ピンとデータビットの配置関係が不明。 25PINコネクタの全ピンのアサインを知る必要はなく、 最低1ビットの入力ピン番号とそのポートアドレス、 信号グランドのピン番号が判ればOKです。