TLV1544與TMS320VC5402通過串行口連接,此時(shí),A/D轉(zhuǎn)換芯片作為從設(shè)備,DSP提供幀同步和輸入/輸出時(shí)鐘信號(hào)。TLV1544與DSP之間數(shù)據(jù)交換的時(shí)序圖如圖3所示。 開始時(shí), 為高電平(芯片處于非激活狀態(tài)),DATA IN和I/OCLK無效,DATAOUT處于高阻狀態(tài)。當(dāng)串行接口使CS變低(激活),芯片開始工作,I/OCLK和DATAIN能使DATA OUT不再處于高阻狀態(tài)。DSP通過I/OCLK引腳提供輸入/輸出時(shí)鐘8序列,當(dāng)由DSP提供的幀同步脈沖到來后,芯片從DATA IN接收4 b通道選擇地址,同時(shí)從DATAOUT送出的前一次轉(zhuǎn)換的結(jié)果,由DSP串行接收。I/OCLK接收DSP送出的輸入序列長度為10~16個(gè)時(shí)鐘周期。前4個(gè)有效時(shí)鐘周期,將從DATAIN輸入的4 b輸入數(shù)據(jù)裝載到輸入數(shù)據(jù)寄存器,選擇所需的模擬通道。接下來的6個(gè)時(shí)鐘周期提供模擬輸入采樣的控制時(shí)間。模擬輸入的采樣在前10個(gè)I/O時(shí)鐘序列后停止。第10個(gè)時(shí)鐘沿(確切的I/O時(shí)鐘邊緣,即上升沿或下降沿,取決于操作的模式選擇)將EOC變低,轉(zhuǎn)換開始。
上傳時(shí)間: 2014-12-05
上傳用戶:yepeng139
串行編程器源程序(Keil C語言)//FID=01:AT89C2051系列編程器//實(shí)現(xiàn)編程的讀,寫,擦等細(xì)節(jié)//AT89C2051的特殊處:給XTAL一個(gè)脈沖,地址計(jì)數(shù)加1;P1的引腳排列與AT89C51相反,需要用函數(shù)轉(zhuǎn)換#include <e51pro.h> #define C2051_P3_7 P1_0#define C2051_P1 P0//注意引腳排列相反#define C2051_P3_0 P1_1#define C2051_P3_1 P1_2#define C2051_XTAL P1_4#define C2051_P3_2 P1_5#define C2051_P3_3 P1_6#define C2051_P3_4 P1_7#define C2051_P3_5 P3_5 void InitPro01()//編程前的準(zhǔn)備工作{ SetVpp0V(); P0=0xff; P1=0xff; C2051_P3_5=1; C2051_XTAL=0; Delay_ms(20); nAddress=0x0000; SetVpp5V();} void ProOver01()//編程結(jié)束后的工作,設(shè)置合適的引腳電平{ SetVpp5V(); P0=0xff; P1=0xff; C2051_P3_5=1; C2051_XTAL=1;} BYTE GetData()//從P0口獲得數(shù)據(jù){ B_0=P0_7; B_1=P0_6; B_2=P0_5; B_3=P0_4; B_4=P0_3; B_5=P0_2; B_6=P0_1; B_7=P0_0; return B;} void SetData(BYTE DataByte)//轉(zhuǎn)換并設(shè)置P0口的數(shù)據(jù){ B=DataByte; P0_0=B_7; P0_1=B_6; P0_2=B_5; P0_3=B_4; P0_4=B_3; P0_5=B_2; P0_6=B_1; P0_7=B_0;} void ReadSign01()//讀特征字{ InitPro01(); Delay_ms(1);//----------------------------------------------------------------------------- //根據(jù)器件的DataSheet,設(shè)置相應(yīng)的編程控制信號(hào) C2051_P3_3=0; C2051_P3_4=0; C2051_P3_5=0; C2051_P3_7=0; Delay_ms(20); ComBuf[2]=GetData(); C2051_XTAL=1; C2051_XTAL=0; Delay_us(20); ComBuf[3]=GetData(); ComBuf[4]=0xff;//----------------------------------------------------------------------------- ProOver01();} void Erase01()//擦除器件{ InitPro01();//----------------------------------------------------------------------------- //根據(jù)器件的DataSheet,設(shè)置相應(yīng)的編程控制信號(hào) C2051_P3_3=1; C2051_P3_4=0; C2051_P3_5=0; C2051_P3_7=0; Delay_ms(1); SetVpp12V(); Delay_ms(1); C2051_P3_2=0; Delay_ms(10); C2051_P3_2=1; Delay_ms(1);//----------------------------------------------------------------------------- ProOver01();} BOOL Write01(BYTE Data)//寫器件{//----------------------------------------------------------------------------- //根據(jù)器件的DataSheet,設(shè)置相應(yīng)的編程控制信號(hào) //寫一個(gè)單元 C2051_P3_3=0; C2051_P3_4=1; C2051_P3_5=1; C2051_P3_7=1; SetData(Data); SetVpp12V(); Delay_us(20); C2051_P3_2=0; Delay_us(20); C2051_P3_2=1; Delay_us(20); SetVpp5V(); Delay_us(20); C2051_P3_4=0; Delay_ms(2); nTimeOut=0; P0=0xff; nTimeOut=0; while(!GetData()==Data)//效驗(yàn):循環(huán)讀,直到讀出與寫入的數(shù)相同 { nTimeOut++; if(nTimeOut>1000)//超時(shí)了 { return 0; } } C2051_XTAL=1; C2051_XTAL=0;//一個(gè)脈沖指向下一個(gè)單元//----------------------------------------------------------------------------- return 1;} BYTE Read01()//讀器件{ BYTE Data;//----------------------------------------------------------------------------- //根據(jù)器件的DataSheet,設(shè)置相應(yīng)的編程控制信號(hào) //讀一個(gè)單元 C2051_P3_3=0; C2051_P3_4=0; C2051_P3_5=1; C2051_P3_7=1; Data=GetData(); C2051_XTAL=1; C2051_XTAL=0;//一個(gè)脈沖指向下一個(gè)單元//----------------------------------------------------------------------------- return Data;} void Lock01()//寫鎖定位{ InitPro01();//先設(shè)置成編程狀態(tài)//----------------------------------------------------------------------------- //根據(jù)器件的DataSheet,設(shè)置相應(yīng)的編程控制信號(hào) if(ComBuf[2]>=1)//ComBuf[2]為鎖定位 { C2051_P3_3=1; C2051_P3_4=1; C2051_P3_5=1; C2051_P3_7=1; Delay_us(20); SetVpp12V(); Delay_us(20); C2051_P3_2=0; Delay_us(20); C2051_P3_2=1; Delay_us(20); SetVpp5V(); } if(ComBuf[2]>=2) { C2051_P3_3=1; C2051_P3_4=1; C2051_P3_5=0; C2051_P3_7=0; Delay_us(20); SetVpp12V(); Delay_us(20); C2051_P3_2=0; Delay_us(20); C2051_P3_2=1; Delay_us(20); SetVpp5V(); }//----------------------------------------------------------------------------- ProOver01();} void PreparePro01()//設(shè)置pw中的函數(shù)指針,讓主程序可以調(diào)用上面的函數(shù){ pw.fpInitPro=InitPro01; pw.fpReadSign=ReadSign01; pw.fpErase=Erase01; pw.fpWrite=Write01; pw.fpRead=Read01; pw.fpLock=Lock01; pw.fpProOver=ProOver01;}
上傳時(shí)間: 2013-11-12
上傳用戶:gut1234567
摘要: 串行傳輸技術(shù)具有更高的傳輸速率和更低的設(shè)計(jì)成本, 已成為業(yè)界首選, 被廣泛應(yīng)用于高速通信領(lǐng)域。提出了一種新的高速串行傳輸接口的設(shè)計(jì)方案, 改進(jìn)了Aurora 協(xié)議數(shù)據(jù)幀格式定義的弊端, 并采用高速串行收發(fā)器Rocket I/O, 實(shí)現(xiàn)數(shù)據(jù)率為2.5 Gbps的高速串行傳輸。關(guān)鍵詞: 高速串行傳輸; Rocket I/O; Aurora 協(xié)議 為促使FPGA 芯片與串行傳輸技術(shù)更好地結(jié)合以滿足市場需求, Xilinx 公司適時(shí)推出了內(nèi)嵌高速串行收發(fā)器RocketI/O 的Virtex II Pro 系列FPGA 和可升級(jí)的小型鏈路層協(xié)議———Aurora 協(xié)議。Rocket I/O支持從622 Mbps 至3.125 Gbps的全雙工傳輸速率, 還具有8 B/10 B 編解碼、時(shí)鐘生成及恢復(fù)等功能, 可以理想地適用于芯片之間或背板的高速串行數(shù)據(jù)傳輸。Aurora 協(xié)議是為專有上層協(xié)議或行業(yè)標(biāo)準(zhǔn)的上層協(xié)議提供透明接口的第一款串行互連協(xié)議, 可用于高速線性通路之間的點(diǎn)到點(diǎn)串行數(shù)據(jù)傳輸, 同時(shí)其可擴(kuò)展的帶寬, 為系統(tǒng)設(shè)計(jì)人員提供了所需要的靈活性[4]。但該協(xié)議幀格式的定義存在弊端,會(huì)導(dǎo)致系統(tǒng)資源的浪費(fèi)。本文提出的設(shè)計(jì)方案可以改進(jìn)Aurora 協(xié)議的固有缺陷,提高系統(tǒng)性能, 實(shí)現(xiàn)數(shù)據(jù)率為2.5 Gbps 的高速串行傳輸, 具有良好的可行性和廣闊的應(yīng)用前景。
標(biāo)簽: Rocket 2.5 高速串行 收發(fā)器
上傳時(shí)間: 2013-11-06
上傳用戶:smallfish
摘要: 串行傳輸技術(shù)具有更高的傳輸速率和更低的設(shè)計(jì)成本, 已成為業(yè)界首選, 被廣泛應(yīng)用于高速通信領(lǐng)域。提出了一種新的高速串行傳輸接口的設(shè)計(jì)方案, 改進(jìn)了Aurora 協(xié)議數(shù)據(jù)幀格式定義的弊端, 并采用高速串行收發(fā)器Rocket I/O, 實(shí)現(xiàn)數(shù)據(jù)率為2.5 Gbps的高速串行傳輸。關(guān)鍵詞: 高速串行傳輸; Rocket I/O; Aurora 協(xié)議 為促使FPGA 芯片與串行傳輸技術(shù)更好地結(jié)合以滿足市場需求, Xilinx 公司適時(shí)推出了內(nèi)嵌高速串行收發(fā)器RocketI/O 的Virtex II Pro 系列FPGA 和可升級(jí)的小型鏈路層協(xié)議———Aurora 協(xié)議。Rocket I/O支持從622 Mbps 至3.125 Gbps的全雙工傳輸速率, 還具有8 B/10 B 編解碼、時(shí)鐘生成及恢復(fù)等功能, 可以理想地適用于芯片之間或背板的高速串行數(shù)據(jù)傳輸。Aurora 協(xié)議是為專有上層協(xié)議或行業(yè)標(biāo)準(zhǔn)的上層協(xié)議提供透明接口的第一款串行互連協(xié)議, 可用于高速線性通路之間的點(diǎn)到點(diǎn)串行數(shù)據(jù)傳輸, 同時(shí)其可擴(kuò)展的帶寬, 為系統(tǒng)設(shè)計(jì)人員提供了所需要的靈活性[4]。但該協(xié)議幀格式的定義存在弊端,會(huì)導(dǎo)致系統(tǒng)資源的浪費(fèi)。本文提出的設(shè)計(jì)方案可以改進(jìn)Aurora 協(xié)議的固有缺陷,提高系統(tǒng)性能, 實(shí)現(xiàn)數(shù)據(jù)率為2.5 Gbps 的高速串行傳輸, 具有良好的可行性和廣闊的應(yīng)用前景。
標(biāo)簽: Rocket 2.5 高速串行 收發(fā)器
上傳時(shí)間: 2013-10-13
上傳用戶:lml1234lml
下面我們根據(jù)8251A芯片的使用體會(huì)對其在串行同步方式下的通信原理及應(yīng)用進(jìn)行著重介紹。在開始發(fā)送或接收之前,8251A必須裝入一組由CPU 產(chǎn)生的控制字。
上傳時(shí)間: 2015-04-08
上傳用戶:frank1234
本程序是用于通用同步和異步串行接收器和轉(zhuǎn)發(fā)器(USART),使用中斷方式異步接收和發(fā)送數(shù)據(jù)通信源的程序文件。
標(biāo)簽: 程序 異步串行 接收器 轉(zhuǎn)發(fā)器
上傳時(shí)間: 2015-04-15
上傳用戶:cooran
通過多通道串-并轉(zhuǎn)換器將多個(gè)同步串行數(shù)據(jù)流轉(zhuǎn)換為并行數(shù)據(jù)
標(biāo)簽: 多通道 同步串行 轉(zhuǎn)換器 數(shù)據(jù)流
上傳時(shí)間: 2013-12-25
上傳用戶:z754970244
同步串行數(shù)據(jù)發(fā)送電路SSDT的基本功能是將并行數(shù)據(jù)轉(zhuǎn)換成串行數(shù)據(jù)并進(jìn)行同步發(fā)送。系統(tǒng)寫入和讀出時(shí)序完全兼容Intel8086時(shí)序。 系統(tǒng)以同步信號(hào)開始連續(xù)發(fā)送四個(gè)字節(jié),在發(fā)送中出現(xiàn)5個(gè)1時(shí)插入一個(gè)0,在四個(gè)數(shù)據(jù)發(fā)送結(jié)束而下一次同步?jīng)]有開始之前,發(fā)送7FH,這時(shí)中間不需要插入零
標(biāo)簽: Intel SSDT 8086 發(fā)送
上傳時(shí)間: 2014-01-09
上傳用戶:koulian
同步串行數(shù)據(jù)發(fā)送電路SSDT的基本功能是將并行數(shù)據(jù)轉(zhuǎn)換成串行數(shù)據(jù)并進(jìn)行同步發(fā)送。系統(tǒng)寫入和讀出時(shí)序完全兼容Intel8086時(shí)序。 系統(tǒng)以同步信號(hào)開始連續(xù)發(fā)送四個(gè)字節(jié),在發(fā)送中出現(xiàn)5個(gè)1時(shí)插入一個(gè)0,在四個(gè)數(shù)據(jù)發(fā)送結(jié)束而下一次同步?jīng)]有開始之前,發(fā)送7FH,這時(shí)中間不需要插入零
標(biāo)簽: Intel SSDT 8086 發(fā)送
上傳時(shí)間: 2014-01-16
上傳用戶:許小華
單片機(jī)RS232/RS485串行發(fā)送實(shí)驗(yàn)(雙機(jī)通訊)。 實(shí)驗(yàn)步驟: (1),準(zhǔn)備兩臺(tái)598K實(shí)驗(yàn)機(jī),確定1號(hào)機(jī)為發(fā)送,2號(hào)機(jī)為接收; (2),當(dāng)作RS232接口實(shí)驗(yàn)時(shí),1號(hào)機(jī)和2號(hào)機(jī)的P3.0和P3.1交叉相連,且兩機(jī)共地; (3),當(dāng)作RS485接口實(shí)驗(yàn)時(shí),1號(hào)機(jī)和2號(hào)機(jī)的A、B作對應(yīng)連接,同時(shí)1,2號(hào)機(jī)的R/TEN接P1.0, P3.0接R0, P3.1接DI。 (4),先運(yùn)行2號(hào)機(jī),鍵入[27]-->[EV]使2號(hào)機(jī)處于接收狀態(tài)P。,后運(yùn)行1號(hào)機(jī)[26]-->[EV]使1號(hào)機(jī)處于發(fā)送狀態(tài),P。會(huì)閃爍,在1號(hào)機(jī)鍵盤上按動(dòng)數(shù)字鍵,在2號(hào)機(jī)的數(shù)碼管上應(yīng)顯示對應(yīng)的數(shù)字鍵值。
標(biāo)簽: RS 232 485 實(shí)驗(yàn)
上傳時(shí)間: 2015-11-27
上傳用戶:thinode
蟲蟲下載站版權(quán)所有 京ICP備2021023401號(hào)-1