pc並行口各陣腳定義:
1.選通,pc->printer
2-9 資料(
d0-d7)
10.應答(ack
),printer->pc
11.忙(busy
),printer->pc
12.無紙(pe
),printer->pc
13.聯機(slct
),printer->pc
14.自動換行(auto fd
),pc->printer
15.錯誤(error
),printer->pc
16.初始化(init
),pc->printer
17.選擇輸出(select in
),pc->printer
18.-25.地(
gnd)
並口開機時預設狀態:
除了c3(17
)針及地線外,全部為高;
並口輸出輸入規則:
dataport 位址0x378 8
個針腳(d0-d7) 正常,寫入
0輸出低電平,寫入
1則輸出高電平;
contorlport 位址0x37a 4
個針腳(c0-c3)
c2正常,c0、
c1、c3取反
-----寫入0
輸出高,寫入
1則輸出低;讀取同理;
stateport 位址0x379 5
個針腳(s3-s7)
s7取反,其他正常; pc
並口的8位dataport 、4位contorlport都可以作為數字輸出埠,
兩個埠可以組成1~
12位的任意數字輸出埠;
而這4位stateport、5位contorlport 都可以作為數字輸入埠,狀態埠共
5位,控制埠共
4位,兩個埠可以組成1~
9位的任意數字輸入埠。
本人使用winio3.0庫操作並口,在xp下操作成功,附上原始碼如下
public class winio
/// /// 設定controlport輸出
/// 高4位預設設定,請不要修改,因此輸出時保持高位值不變,將要輸出的值從低4位輸出
/// control埠c2讀寫正常,c0、c1、c3寫入0則輸出高電平,寫入1輸出低電平;讀取亦然
///
/// 設定值
private void setcontrolbuff(int writevalue)
/// /// 讀取controlport值
/// control埠c2讀取正常,c0、c1、c3高電平則讀入0,低電平則讀入1
///
/// 返回c0-c3 四個埠的值:範圍為0~15
private int getcontrolbuff()
/// /// 讀取stateport值
/// state埠s7高電平則讀入0,低電平則讀入1;其他正常
///
/// 返回s3-s7 五個埠的值:範圍0-31
private int getstatebuff()
public bool openwinio()
else
}public void closewinio()
}
附上winio3.0庫:winio
及小弟例程原始碼:原始碼
C語言 按成績高低輸出學生資訊
例39 有n個學生的資訊 包括學號 姓名 成績 c語言程式設計實現按照成績的高低順序輸出學生的資訊。解題思路 用結構體陣列存放n個學生資訊,採用選擇法對各元素進行排序,在定義結構體陣列時進行初始化,為清晰起見,將每個學生的資訊用一對花括號包起來。源 演示 include 標頭檔案 struct st...
C 輸入輸出
一 標準輸入函式cin 不知道說它是個函式對還是不對,它是代表標準的輸入裝置 鍵盤。他是屬於流的,他的用法和流的用法是一樣的。也就是 cin 變數 小小的說明一下,輸入多個變數可以寫在一行,如 cin x y z 這樣寫不是不允許,而是不好看,如果是不同的變數型別,那就更是沒頭沒腦了。除了你,人家是...
C 檔案輸出輸入
此篇文章只是簡要介紹c 中檔案輸入輸出的基本步驟,詳細情況請看附加的鏈結 1.檔案流和檔案流物件 1 檔案流 檔案流是以外存檔案為輸入輸出物件的資料流。輸出檔案流是從記憶體流向外存檔案的資料,輸入檔案流是從外存檔案流向記憶體的資料。每乙個檔案流都有乙個記憶體緩衝區與之對應。請區分檔案流與檔案的概念。...