本文介紹一種實現TMS320F240 DSP與C51單片機串行通訊的方法。詳細說明了TMS320F240 DSP與C51單片機的硬件構成和軟件設置等問題。
上傳時間: 2013-11-24
上傳用戶:1234567890qqq
通過介紹串行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
SPI接口讀寫串行EEPROM:93C46為采用3線串行同步總線SPI接口方式的EEPROM,其芯片引腳名稱和功能描述如圖1-1:
上傳時間: 2013-11-19
上傳用戶:taozhihua1314
串行編程器源程序(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
特性• 一系列方法支持不同的照明概念/原理UHP CCFL等• 快速執行標準80C51 器件的兩倍• 工作范圍寬2.7V~6.0V 而且在125 仍可工作• 帶晶振/諧振器和RC 的用戶可配置振蕩器不要求外部元件• 低電流操作• 豐富的特性集包括UART和I2C 串行通訊低電壓檢測和上電復位• 兩個比較器• 在系統可編程ISP• 專用的模擬和數字外圍設備• ADC 快速PWM 和DAC特殊控制的專用外圍設備• PFC 功率因素修正• 帶軟開關PWM 的半橋和全橋控制• 使用ADC 和比較器進行照明管理• 與幾乎所有遠程協議接口DALI IR RF 等• 帶鎮流ASIC 帶DAC 或PWM 的快速控制回路• 與存儲設備的I2C 接口
上傳時間: 2014-03-24
上傳用戶:ming529
串行下載線的原理圖 SI Prog - Serial Interface for PonyProg
上傳時間: 2013-11-09
上傳用戶:zhishenglu
串行通信的特點串行通信是主機與外設交換信息的一種方式。串行通信中字節數據經一條傳輸線按位串行發送與串行接收。串行通信節省通信線路,可遠距離傳送,成本低,廣泛應用在通信及計算機網絡系統中。串行通信中,數據傳輸速率低,控制較復雜。光纖技術的出現與發展,為串行通信開辟了美好前景。串行通信的術語全雙工、半雙工、單工全雙工: 通信雙方均有發送器和接收器,經兩條獨立的傳輸線相連, 雙方可同時接收與發送。 全雙工、半雙工、單工半雙工:通信雙方均有發送器和接收器,經一條傳輸線相連, 在某一時刻雙方只能一個方向傳輸信息,線路切換后可改變傳輸方向。 全雙工、半雙工、單工單工:通信一方為發送器,另一方為接收器,一條傳輸線相連, 進行單向傳輸。同步與異步通信方式同步方式:通信雙方用統一時鐘控制通信過程, 信息傳輸組成數據包(數據幀)。每 幀頭尾是控制代碼,中間是數據塊, 可有數百字節。不同的同步傳輸協 議有不同的數據幀格式。
上傳時間: 2013-11-19
上傳用戶:wvbxj