通過介紹串行EEPR0M芯片在MCS.51單片機系統中的應用,為單片機應用數據存儲器的擴展,提供一個新的理念,從而有效地提高了單片機cPu的引腳資源利用率,為單片機應用系統設計、開發、數據管理提供了又一種結構形式.
上傳時間: 2013-10-21
上傳用戶:181992417
RS232C串行通信在控制領域里應用得很廣泛但在實際應用中又會因所控制的對象所解決的問題不同而各具特點本文所涉及的是傳輸距離不超過15米所傳輸數據量較小的PC機和單片機的通信如PC機對IC卡的讀寫PC機對單片機燒寫器的數據轉輸以及其它一些具有類似特點的智能化儀器和儀表中的數據通信
上傳時間: 2014-12-28
上傳用戶:6546544
CAT24Cxxx是集E2PROM存儲器, 精確復位控制器和看門狗定時器三種流行功能于一體的芯片。CAT24C161/162(16K),CAT24C081/082(8K),CAT24C041/042(4K)和CAT24C021/022(2K) 主要作為I2C 串行CMOS E2PROM器件,采用先進的CMOS工藝大大降低了器件的功耗。CAT24Cxxx另一特點是16 字節的頁寫緩沖區,提供8腳DIP和SOIC封裝。CAT24Cxxx的復位功能和看門狗定時器功能保證系統出現故障的時候能給CPU一個復位信號。CAT24Cxxx的第2腳輸出低電平復位信號,第7腳輸出高電平復位信號。CAT24Cxx1 看狗溢出信號從SDA腳輸出CAT24Cxx2不具備看門狗功能
上傳時間: 2013-12-12
上傳用戶:siying
基于AT89C51應用系統的串行通信設計:介紹了基于AT89C51應用系統中的串行通信軟硬件設計方法和實現過程,在基于紅外成像技術的電力設備狀態檢測系統中,將紅外測溫儀檢測到設備的溫度數據傳給控制電路,進行數據格式的轉換后,在RAM 中存儲,同時上傳給PC機。系統利用MAX232實現RS 232C的EIA 電平與單片機的TTI 電平之聞轉換,利用通用串口芯片8251A擴展串行接13',實現PC機與單片機之問的串行通信。 關鍵詞:串行通信;單片機;接口;RS232C
上傳時間: 2014-12-21
上傳用戶:aeiouetla
PCM-16xx系列工業多串口卡可以應用于傳統的RS-232/422/485串行通訊領域,快速擴充PC機標準COM通訊端口的數量。兼容PC/104規范,即插即用;集成4個串行通訊端口;同一PC可安裝多達8塊同型號卡;RS-232端口最高速率可達921.6Kbps;PCM-16xx系列工業多串口卡提供2~8個RS-232/422/485通訊端口,每個端口的通訊速率可以高達921.64Kbps。多串口卡采用工業級設計,每一個通訊端口都集成防浪涌30KV ESD保護,可選的高速電氣隔離保護。同一PC最多可安裝8塊同一型號的PCM-16xx工業多串口卡。
上傳時間: 2013-11-08
上傳用戶:zl5712176
SPI接口讀寫串行EEPROM:93C46為采用3線串行同步總線SPI接口方式的EEPROM,其芯片引腳名稱和功能描述如圖1-1:
上傳時間: 2013-11-19
上傳用戶:taozhihua1314
為了提高望遠鏡影像穩定系統的防抖性能,設計了一種小型望遠鏡防抖系統。采用負反饋閉環控制進行鏡片的位置伺服控制,以MSP430F169 單片機為核心控制電路,闡述了防抖系統的原理并給出了硬件和軟件設計方案,通過實物調試證明采用該設計方法的望遠鏡防抖系統具有結構簡單,穩定性好、控制精度高的優點。防抖系統正日益廣泛地應用于照相機和望遠鏡等光學設備中。防抖主要分為光學防抖和電子防抖,光學防抖通過光學器件進行影響穩定;電子防抖采用軟件的方法,針對數字圖像設計基于圖像處理的影像穩定算法[1]。對于望遠鏡來說,在放大視角的同時,也會將手的抖動造成的影像晃動放大,在高倍望遠鏡中尤其明顯。天文望遠鏡、軍用望遠鏡等高倍望遠鏡在使用時通常需要配合三腳架,而大多數的手持望遠鏡在沒有影像穩定措施的情況下觀察效果受到擾動。如果觀察者站在車、船、飛機上時,晃動的影響更加嚴重,即使把望遠鏡裝到三角架上,也不能消除晃動的影響。因此,開發適合望遠鏡使用的影像穩定系統已經成為一項迫切的任務,防抖動望遠鏡將會具有很大的市場前景。影像穩定屬于跟蹤控制問題。文獻[2]設計了一種采用形狀可變的流體棱鏡進行抖動補償的方法。本文設計了以MSP430 單片機為核心的防抖控制系統,給出了系統硬件設計電路,使用C430 語言進行軟件調試,以實現對望遠鏡防抖系統的有效控制。
上傳時間: 2013-12-02
上傳用戶:blacklee
安規設計注意事項1. 件選用(1) 在件選用方面,要求掌握:a .安規件有哪些?(見三.安規件介紹)b.安規件要求安規件的要求就是要取得安規機構的認證或是符合相關安規標準;c.安規件額定值任何件均必須依 MANUFACTURE 規定的額定值使用;I 額定電壓;II 額定電;III 溫額定值;(2). 件的溫升限制a. 一般電子件: 依件規格之額定溫值,決定其溫上限b. 線圈類: 依其絕緣系統耐溫決定Class A ΔT≦75℃Class E ΔT≦90℃Class B ΔT≦95℃Class F ΔT≦115℃Class H ΔT≦140℃c. 人造橡膠或PVC 被覆之線材及電源線類:有標示耐溫值 T 者ΔT≦(T-25)℃無標示耐溫值 T 者ΔT≦50℃d. Bobbin 類: 無一定值,但須做125℃球壓測試;e. 端子類: ΔT≦60℃f. 溫升限值I. 如果有規定待測物的耐溫值(Tmax),則:ΔT≦Tmax-TmraII. 如果有規定待測物的溫升限值(ΔTmax),則:ΔT≦ΔTmax+25-Tmra其中 Tmra=制造商所規定的設備允許操作室溫或是25℃
上傳時間: 2013-10-14
上傳用戶:674635689
串行編程器源程序(Keil C語言)//FID=01:AT89C2051系列編程器//實現編程的讀,寫,擦等細節//AT89C2051的特殊處:給XTAL一個脈沖,地址計數加1;P1的引腳排列與AT89C51相反,需要用函數轉換#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()//編程前的準備工作{ SetVpp0V(); P0=0xff; P1=0xff; C2051_P3_5=1; C2051_XTAL=0; Delay_ms(20); nAddress=0x0000; SetVpp5V();} void ProOver01()//編程結束后的工作,設置合適的引腳電平{ SetVpp5V(); P0=0xff; P1=0xff; C2051_P3_5=1; C2051_XTAL=1;} BYTE GetData()//從P0口獲得數據{ 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)//轉換并設置P0口的數據{ 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);//----------------------------------------------------------------------------- //根據器件的DataSheet,設置相應的編程控制信號 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();//----------------------------------------------------------------------------- //根據器件的DataSheet,設置相應的編程控制信號 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)//寫器件{//----------------------------------------------------------------------------- //根據器件的DataSheet,設置相應的編程控制信號 //寫一個單元 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)//效驗:循環讀,直到讀出與寫入的數相同 { nTimeOut++; if(nTimeOut>1000)//超時了 { return 0; } } C2051_XTAL=1; C2051_XTAL=0;//一個脈沖指向下一個單元//----------------------------------------------------------------------------- return 1;} BYTE Read01()//讀器件{ BYTE Data;//----------------------------------------------------------------------------- //根據器件的DataSheet,設置相應的編程控制信號 //讀一個單元 C2051_P3_3=0; C2051_P3_4=0; C2051_P3_5=1; C2051_P3_7=1; Data=GetData(); C2051_XTAL=1; C2051_XTAL=0;//一個脈沖指向下一個單元//----------------------------------------------------------------------------- return Data;} void Lock01()//寫鎖定位{ InitPro01();//先設置成編程狀態//----------------------------------------------------------------------------- //根據器件的DataSheet,設置相應的編程控制信號 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()//設置pw中的函數指針,讓主程序可以調用上面的函數{ pw.fpInitPro=InitPro01; pw.fpReadSign=ReadSign01; pw.fpErase=Erase01; pw.fpWrite=Write01; pw.fpRead=Read01; pw.fpLock=Lock01; pw.fpProOver=ProOver01;}
上傳時間: 2013-11-12
上傳用戶:gut1234567
串行下載線的原理圖 SI Prog - Serial Interface for PonyProg
上傳時間: 2013-11-09
上傳用戶:zhishenglu