線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:4700
推到 Plurk!
推到 Facebook!

並列埠控制

答題得分者是:lcsboy
RickyT
一般會員


發表:15
回覆:25
積分:13
註冊:2002-06-15

發送簡訊給我
#1 引用回覆 回覆 發表時間:2002-11-24 02:04:36 IP:210.58.xxx.xxx 未訂閱
請問各位前輩..在C Builder中有沒有什麼函數可以控制並列埠腳位的電壓高低呢??或是該怎麼作才能控制呢??麻煩指導一下囉.. ^^
RaynorPao
版主


發表:139
回覆:3622
積分:7025
註冊:2002-08-12

發送簡訊給我
#2 引用回覆 回覆 發表時間:2002-11-24 03:10:26 IP:61.221.xxx.xxx 未訂閱
引言: 請問各位前輩..在C Builder中有沒有什麼函數可以控制並列埠腳位的電壓高低呢??或是該怎麼作才能控制呢??麻煩指導一下囉.. ^^
RickyT你好: 請參考以下兩篇文章
------
-- 若您已經得到滿意的答覆,請適時結案!! --
-- 欲知前世因,今生受者是;欲知來世果,今生做者是 --
-- 一切有為法,如夢幻泡影,如露亦如電,應作如是觀 --
lcsboy
版主


發表:87
回覆:622
積分:394
註冊:2002-06-18

發送簡訊給我
#3 引用回覆 回覆 發表時間:2002-11-26 10:08:21 IP:61.222.xxx.xxx 未訂閱
IO access的函式, 在BCB版被拆掉了 有可能因為Win32程式, 在WinNT base下, IO Access被protect住, 而Borland 又不想跟User吵架 > 發表人 -
jackkcg
站務副站長


發表:891
回覆:1050
積分:848
註冊:2002-03-23

發送簡訊給我
#4 引用回覆 回覆 發表時間:2002-11-26 10:35:52 IP:61.221.xxx.xxx 未訂閱
參考 RS232、LPT、NULL-MODEM 連接法 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=21163 不過軟體就如 L sir所說 哈哈
------
**********************************************************
哈哈&兵燹
最會的2大絕招 這個不會與那個也不會 哈哈哈 粉好

Delphi K.Top的K.Top分兩個字解釋Top代表尖端的意思,希望本討論區能提供Delphi的尖端新知
K.表Knowlege 知識,就是本站的標語:Open our mind
RickyT
一般會員


發表:15
回覆:25
積分:13
註冊:2002-06-15

發送簡訊給我
#5 引用回覆 回覆 發表時間:2002-11-26 12:37:23 IP:210.58.xxx.xxx 未訂閱
請問lcsboy前輩..我的硬體裝置是自己焊的電路板..我只是要用並列埠的接腳電位高低去驅動我電路板上的開關..這樣你所提供的WinIO也可以使用嗎?? 我已經下載了WinIO也看過說明了..但是抱歉因為我不懂組合語言..所以看不太懂ㄋㄟ..麻煩指導一下..  ^^~
lcsboy
版主


發表:87
回覆:622
積分:394
註冊:2002-06-18

發送簡訊給我
#6 引用回覆 回覆 發表時間:2002-11-26 13:20:11 IP:211.23.xxx.xxx 未訂閱
只要你的電路, 用3.3V可以驅動的話, 那就沒問題了! 我就自己加上簡單的繼電器! 另一頭接電鍋! 你就可以用程式來定時煮飯啦 ^^ (買一台電腦少說有也一萬多塊, 連煮飯都不行的話, 買電腦幹嘛? 哈~~) 你可以自行參考Parallel Port的線路圖, 在終端接上LED燈 r.type=IOACCESS_WRITE_BYTE r.m_dx=0x378; (Parallel Port Address) r.m_al=0xff; (8 Bits all set 1) WinIO(); // 相當於 mov dx, 378h // mov al, 0ffh // out dx, al <-----Intel 規定的寫法 如果你接的LED燈亮了! 恭喜你, 可以往下一步前進
RickyT
一般會員


發表:15
回覆:25
積分:13
註冊:2002-06-15

發送簡訊給我
#7 引用回覆 回覆 發表時間:2002-11-26 21:14:39 IP:210.58.xxx.xxx 未訂閱
lcsboy前輩.. 抱歉..我又來打擾了..  ^^ll 我已經按照你的指導寫了以下的程式碼..但是沒辦法工作ㄋㄟ...    #include  #include "winio.hpp" #pragma hdrstop #include "Unit1.h" #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } void __fastcall TForm1::Button3Click(TObject *Sender) { Close(); } void __fastcall TForm1::Button1Click(TObject *Sender) { r.type=IOACCESS_WRITE_BYTE; r.m_dx=0x379; r.m_al=0xff; WinIO(); } void __fastcall TForm1::Button2Click(TObject *Sender) { r.type=IOACCESS_WRITE_BYTE; r.m_dx=0x379; r.m_al=0x00; WinIO(); } 請問可否幫忙看看是否有錯.. ^^ll 對了..我使用的電路是睿意科技所販售的PC自動化控制器套件..不知道前輩您是否有用過ㄋㄟ.. ^^ 另外我有看我的並列埠位只在win2000的設定是379-37f..
axsoft
版主


發表:681
回覆:1056
積分:969
註冊:2002-03-13

發送簡訊給我
#8 引用回覆 回覆 發表時間:2002-11-27 10:20:16 IP:61.218.xxx.xxx 未訂閱
引言: lcsboy前輩.. 抱歉..我又來打擾了.. ^^ll 我已經按照你的指導寫了以下的程式碼..但是沒辦法工作ㄋㄟ... #include #include "winio.hpp" #pragma hdrstop #include "Unit1.h" #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } void __fastcall TForm1::Button3Click(TObject *Sender) { Close(); } void __fastcall TForm1::Button1Click(TObject *Sender) { r.type=IOACCESS_WRITE_BYTE; r.m_dx=0x379; r.m_al=0xff; WinIO(); } void __fastcall TForm1::Button2Click(TObject *Sender) { r.type=IOACCESS_WRITE_BYTE; r.m_dx=0x379; r.m_al=0x00; WinIO(); } 請問可否幫忙看看是否有錯.. ^^ll 對了..我使用的電路是睿意科技所販售的PC自動化控制器套件..不知道前輩您是否有用過ㄋㄟ.. ^^ 另外我有看我的並列埠位只在win2000的設定是379-37f.. < face="Verdana, Arial, Helvetica"> RickyT 好久不見: 你的問題我想是出現在Printer Port中暫存器的規畫問題,如果想要知到相關動作原理可以去找坊間單晶片控制或I/O控制的書也都會提到Printer port的相關工作原理. 這有一些簡易的工作原理: http://www.finetech.idv.tw/TechDocument/Doc1/PGM2051.htm 這裡有一個用Turbo C / Pascal寫的範例你參考看看! (Standard Printer Interface Library C/Pascal ) 下載1: http://www.programmersheaven.com/file.asp?FileID=16204 下載二:http://www.programmersheaven.com/file.asp?FileID=16204&AltURL=2 聯盟----Visita網站http://www.vista.org.tw ---[ 發問前請先找找舊文章 ]--- 發表人 - axsoft 於 2002/11/27 10:26:44
lcsboy
版主


發表:87
回覆:622
積分:394
註冊:2002-06-18

發送簡訊給我
#9 引用回覆 回覆 發表時間:2002-11-27 10:45:56 IP:211.23.xxx.xxx 未訂閱
引言: lcsboy前輩.. 抱歉..我又來打擾了.. ^^ll 我已經按照你的指導寫了以下的程式碼..但是沒辦法工作ㄋㄟ... #include #include "winio.hpp" #pragma hdrstop #include "Unit1.h" #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } void __fastcall TForm1::Button3Click(TObject *Sender) { Close(); } void __fastcall TForm1::Button1Click(TObject *Sender) { r.type=IOACCESS_WRITE_BYTE; r.m_dx=0x379; r.m_al=0xff; WinIO(); } void __fastcall TForm1::Button2Click(TObject *Sender) { r.type=IOACCESS_WRITE_BYTE; r.m_dx=0x379; r.m_al=0x00; WinIO(); } 請問可否幫忙看看是否有錯.. ^^ll 對了..我使用的電路是睿意科技所販售的PC自動化控制器套件..不知道前輩您是否有用過ㄋㄟ.. ^^ 另外我有看我的並列埠位只在win2000的設定是379-37f.. < face="Verdana, Arial, Helvetica"> WinIO是一個WDM, 不是一個.h or .hpp, 使用方式和.DLL要點像 就如同以前你要讀寫一個File前要先作fopen和fclose一樣! 所以, 在使用WinIO前要先作LoadLiabrary, 最後要作free的動作 請參考範例: http://delphi.ktop.com.tw/topic.php?TOPIC_ID=21427
axsoft
版主


發表:681
回覆:1056
積分:969
註冊:2002-03-13

發送簡訊給我
#10 引用回覆 回覆 發表時間:2002-11-27 16:43:57 IP:61.218.xxx.xxx 未訂閱
RickyT :     原理及做法可以參考:(用Turbo C寫的範例,BCB下I/O Read/Write可以參考相關的I/O讀寫方法) 如: PC Parallel Port Mini-FAQ http://www.repairfaq.org/filipg/LINK/PORTS/F_PARALLEL5.html Contents: 1. About the Author 2. Disclaimer 3. Itroduction 4. BIOS LPT Port Table 5. Addressing Conventions 6. Direct Hardware Access 7. Data Register 8. Status Register 9. Control Register 10. Bidirectional Control Bit 11. Interrupt Enable Bit 12. Printer Control Bits 13. Sample Code 14. Return I/O Base Address of Nominated LPT Port 15. Toggle Data Bits in a Loop 16. File Transfer Program Cables [Document Version: 1.00] [Last Updated: 11/14/96] BCB下I/O Read/Write可以參考相關的I/O讀寫方法: 1. http://delphi.ktop.com.tw/topic.php?TOPIC_ID=18761 2. http://delphi.ktop.com.tw/topic.php?TOPIC_ID=21427 3. http://www.beyondlogic.org/porttalk/porttalk.htm 4. http://www.programmersheaven.com/zone15/cat610/ 聯盟----Visita網站http://www.vista.org.tw ---[ 發問前請先找找舊文章 ]--- 發表人 - axsoft 於 2002/11/27 16:57:15
axsoft
版主


發表:681
回覆:1056
積分:969
註冊:2002-03-13

發送簡訊給我
#11 引用回覆 回覆 發表時間:2002-11-27 17:25:26 IP:61.218.xxx.xxx 未訂閱
這裡還有一個很好用的IO 2002(Windows Access I/O)及Printer Port監測工具    http://delphi.ktop.com.tw/topic.php?TOPIC_ID=23311    RickyT 加油! <>網<>路志<>工聯盟---- href="http://www.vista.org.tw">http://www.vista.org.tw ---[ 發問前請先找找舊文章 ]---
系統時間:2024-04-27 3:34:34
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!