各位好:
想請教一些問題
我主要是想要作parallel port連結eeprom,其連結方式就是用i2c,關於這點我也有瀏覽這網站上的資料
但是仍然無法編碼寫入與讀取,我想請教有經驗的人,
1.寫入與讀取的指令該怎麼撰寫?我目前知道使用的話會用到in port.vi和out port.vi,我目前知道可以
控制簡單的x378位置的0 or 1位準.以下是我的電路圖與eeprom編碼方式
另外還有一條SCL的線,也該如何搭配SDA的線作傳輸?
各位好:
想請教一些問題
我主要是想要作parallel port連結eeprom,其連結方式就是用i2c,關於這點我也有瀏覽這網站上的資料
但是仍然無法編碼寫入與讀取,我想請教有經驗的人,
1.寫入與讀取的指令該怎麼撰寫?我目前知道使用的話會用到in port.vi和out port.vi,我目前知道可以
控制簡單的x378位置的0 or 1位準.以下是我的電路圖與eeprom編碼方式
另外還有一條SCL的線,也該如何搭配SDA的線作傳輸?
另外,若是有人可以提共一對一教學,我也願意提共一些酬勞
地點在新竹或是桃園中壢這之間皆可 , 軟硬體的部份我可以準備
謝謝
我之前有玩過 , 提供意見給你 ...
你先去找一套軟體 "AccPlus" , 裡面也有硬體接腳圖 , 照著接好後 , 測試一下軟硬體都可以work再來開發Labview部分 ,因為I2C如果懂了其實滿簡單的 , 但不先確認你的硬體跟PC間的連線狀況 , LabVIEW寫對了也不會正確動作...
這是貴大,提共的accplus參考電路,我想請問的是最下面圖,他的SCL線接到parallel port
是接進in端,照理說SCL不是該提供時脈給eeprom嗎?該接out端嗎?
另外,請問下面第一個圖,他的SCL跟SDA的線,若是要符和accplus軟體所控制,是要接上
parallel port的那一個pin位置?應該要指定pin吧~~不然軟體應該不知道哪個pin讀取資料~~~
LPT(共三个io:378H,379H,37AH)
378H (SEND)
D7 D6 D5 D4 D3 D2 D1 D0
9 8 7 6 5 4 3 2
379H (REN)
/d7 D6 D5 D4 D3 D2 D1 D0
11 10 12 13 15 X X X
37AH (SEND)
D7 D6 D5 D4 /d3 D2 /d1 /d0
X X X X 17 16 14 1
数字为引脚号,每个引脚对应一个io的一个bit。有“/”的指取反后再输出或输入后取反送到系统。
可以用汇编指令“in”“out”来控制。c语言可用读或写端口指令来操作。
可以参照这些自己作一套IIC的VI,我是大陆的,如果有什么不懂的就联系我
[QUOTE=olendo]
這是貴大,提共的accplus參考電路,我想請問的是最下面圖,他的SCL線接到parallel port
是接進in端,照理說SCL不是該提供時脈給eeprom嗎?該接out端嗎?
另外,請問下面第一個圖,他的SCL跟SDA的線,若是要符和accplus軟體所控制,是要接上
parallel port的那一個pin位置?應該要指定pin吧~~不然軟體應該不知道哪個pin讀取資料~~~
[/QUOTE]
用Philips這張,scl由PIN17出,sda由PIN9出,PIN11收...我本身是用USB IO去試,底下工程師才是用Parallel Port去試,建議是先做好硬體,確認連結,開發LV程式時,不要管PIN15收的訊號...Parallel Port有3個位置,另位大大有告知了!
非常感謝各位,讓我有一種豁然開朗的感覺,非常謝謝
等我試完parallel port控制,再來換usb控制看看,
謝謝大家
另外有一個觀念地方想請教
請問,當使用parallel port傳出的訊號都會經過一個invertor的邏輯ic,然後再到EEPROM去
這樣不是會讓訊號0跟1剛好顛倒嗎? 因為我看過不少電路都是變成反向
請問是一定要這樣接嗎?然後在軟體設定上故意把訊號顛倒就可以了嗎?還是不需要顛倒呢?
在麻煩各位解答了
[QUOTE=olendo]
另外有一個觀念地方想請教
請問,當使用parallel port傳出的訊號都會經過一個invertor的邏輯ic,然後再到EEPROM去
這樣不是會讓訊號0跟1剛好顛倒嗎? 因為我看過不少電路都是變成反向
請問是一定要這樣接嗎?然後在軟體設定上故意把訊號顛倒就可以了嗎?還是不需要顛倒呢?
在麻煩各位解答了
[/QUOTE]
有反向IC在 , 軟體訊號當然要顛倒 , 至於為什麼大部分電路都會加反向IC , 這問題問的好 ....看看哪位大大可以解答囉 !
我是正反向IC會用 , 一樣都可以動作 .
搞不懂为何一定要多个IC了?进入电脑的CMOS设置更改并口为增强功能模式,这样就能0X378八个脚有双向IO功能,另加上0X37A的四个输出脚,这样就能组成4*8=32路IIC,这点小弟也实验成功了,唯一要加的就是并口引脚要串限流电阻
所以樓上的意思是說,在COMS裝置設定為增強模式前提下,如果不加上反向IC的話,只需要在輸出入的pin腳加上線流電阻就可以了嗎?
這樣省了一個反向ic的串接+軟體設定值的訊號顛倒~~~
這樣不是省事很多,但為什麼沒什麼人用這方法~~
以下是我找到的一些文章,可能有些幫助:
1.電氣特性<?:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
EIA-RS-232C對電器特性、邏輯電平和各種信號線功能都作了規定。
在TxD和RxD上:邏輯1(MARK)=-3V~-15V
邏輯0(SPACE)=+3~+15V
在RTS、CTS、DSR、DTR和DCD等控制線上:
信號有效(接通,ON狀態,正電壓)=+3V~+15V
信號無效(斷開,OFF狀態,負電壓)=-3V~-15V
<?:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />
圖1
以上規定說明瞭RS-323C標准對邏輯電平的定義。對於數據(信息碼):邏輯“1”(傳號)的電平低於-3V,邏輯“0”(空號)的電平告語+3V;對於控制信號;接通狀態(ON)即信號有效的電平高於+3V,斷開狀態(OFF)即信號無效的電平低於-3V,也就是當傳輸電平的絕對值大於3V時,電路可以有效地檢查出來,介於-3~+3V之間的電壓無意義,低於-15V或高於+15V的電壓也認為無意義,因此,實際工作時,應保証電平在±(3~15)V之間。
EIA-RS-232C與TTL轉換:EIA-RS-232C是用正負電壓來表示邏輯狀態,與TTL以高低電平表示邏輯狀態的規定不同。因此,為了能夠同計算機介面或終端的TTL器件連接,必須在EIA-RS-232C與TTL電路之間進行電平和邏輯關系的變換。實現這種變換的方法可用分立元件,也可用集成電路晶片。目前較為廣泛地使用集成電路轉換器件,如MC1488、SN75150晶片可完成TTL電平到EIA電平的轉換,而MC1489、SN75154可實現EIA電平到TTL電平的轉換。MAX232晶片可完成TTL←→EIA雙向電平轉換,圖1顯示了1488和1489的內部結構和引腳。MC1488的引腳(2)、(4,5)、(9,10)和(12,13)接TTL輸入。引腳3、6、8、11輸出端接EIA-RS-232C。MC1498的14的1、4、10、13腳接EIA輸入,而3、6、8、11腳接TTL輸出。具體連接方法如圖2所示。