freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于51單片機的數(shù)字頻率計設(shè)計-在線瀏覽

2025-03-07 14:45本頁面
  

【正文】 蕩器使用無效,所有的計數(shù)器位均為主從觸發(fā)器 CP1非(和 CP0)的下降沿計數(shù)器以二進制進行計數(shù),在時鐘脈沖線上使用施密特觸發(fā)器對時鐘上升和下降時間無限制。 圖七 秒脈沖產(chǎn)生電路原理圖1602基本技術(shù):1)、主要功能A、 40通道點陣LCD 驅(qū)動。C、 輸入/輸出信號:輸出,能產(chǎn)生202個LCD驅(qū)動波形。D、 通過單片機控制將所測的頻率信號讀數(shù)顯示出來。C儲存溫度30+80176。CVTa = 25176。C3)、時序特性表項 目符 號測試條件標(biāo) 準(zhǔn) 值單位MINTYPEMAX允許時間周期TCYCE 1000ns允許脈沖寬度,高電平PWEH450ns允許上升和下降時間tEr tEf25ns地址建立時間tAS140ns數(shù)據(jù)延遲時間tDDR320ns數(shù)據(jù)建立時間tDSW195ns數(shù)據(jù)保持時間tH10nsDATA HOLD TIMEtDHR20ns地址保持時間tAH10ns4)、引腳和指令功能)模塊引腳功能表引 線 號符 號名 稱功 能1Vss接地0V2VDD電路電源5V177。)) 指令功能 格式:RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0共11種指令:清除,返回,輸入方式設(shè)置,顯示開關(guān),控制,移位,功能設(shè)置,CGRAM地址設(shè)置,DDRAM地址設(shè)置,讀忙標(biāo)志,寫數(shù)據(jù)到CG/DDRAM,讀數(shù)據(jù)由CG/DDRAM。下面指令是在初始化過程中執(zhí)行的。(2) 功能設(shè)置(FUNCTION SET)。N = 0: 1行顯示。(3) 顯示開/關(guān)控制(DISPLAY ON/OFF CONTROL)D = 0: 顯示關(guān)。 B = 0: 消隱關(guān)(4) 輸入方式設(shè)置(ENTRY MODE SET )I/D = 1:(增量): S = 0: 無移位:) 軟件復(fù)位 如果電路電源不能滿足復(fù)位電路的要求的話,那么初始化就要用軟件來實現(xiàn),過程如下: 八位接口初始化流程圖 VDD 15 電 源 開 ↓ RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 0 0 1 1 ↓ ↓等待 0 0 0 0 1 1 RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 0 0 1 1 ↓等待100us RS RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 0 0 1 1 N F ↓檢查忙標(biāo)志或延時40us RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 0 0 0 0 1 0 ↓檢查忙標(biāo)志或延時40us RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 0 0 0 0 0 0 0 1↓檢查忙標(biāo)志或延時40 us RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 0 0 0 0 0 1 I/D S↓ 初 始 化 結(jié) 束↓檢查忙標(biāo)志或延時40第3節(jié) 軟件設(shè)計主要能過編寫軟件來控制硬件完成以下各模塊的功能: BCD轉(zhuǎn)換單片機當(dāng)C/T=1時為計數(shù)方式,多路開關(guān)與定時器的外部引腳連通,外部計數(shù)脈沖由引腳輸入。由于確認(rèn)一次由1至0的跳變要用24個振蕩器周期,所以計數(shù)器的計數(shù)頻率為單片機內(nèi)部計數(shù)器頻率的1/24。在此種情況下,INT0引腳的電平變化對或門不起作用。當(dāng)GATA=0時,若TRO=1,或門、與門全部打開,外部信號電平通過INTO引腳直接控制定時器的啟動和關(guān)閉。根據(jù)定時器的結(jié)構(gòu)原理,若我們將GATE位、TR0均設(shè)為‘1’,INT0端輸人被測頻率信號,當(dāng)被測信號的高電平到來時,開始計數(shù);當(dāng)被測信號的低電平到來時,計數(shù)器停止計數(shù),此時TL0、TH0的數(shù)據(jù)就是相應(yīng)的N值。在進行模擬、數(shù)字電路的設(shè)計、安裝、調(diào)試過程中,由于其使用十進制數(shù)顯示,測量迅速,精確度高,顯示直觀,會被經(jīng)常使用到。擴展了知識面,不但掌握了本專業(yè)的相關(guān)知識,而且對其他專業(yè)的知識也有所了解,而且較系統(tǒng)的掌握單片機應(yīng)用系統(tǒng)的開發(fā)過程,因而自身的綜合素質(zhì)有了全面的提高 。在設(shè)計過程中,得到了我的指導(dǎo)老師的悉心指導(dǎo)與幫助,還有其他老師和同學(xué)的大力支持和協(xié)助,在此一并表示衷心的感謝。實驗 //設(shè)置按鍵sbit ADD = P1^4。 //調(diào)整減define RdefineT1 TH1=0。TR1=0。 //初始化超時檢測//define Delay2us() _nop_()。 //延時2us,每nop 1us//define Delay8us() _nop_()。_nop_()。_nop_()。_nop_()。define ReDetectTime 0xCCdefine MatchROM 0x55define ReadROM 0xF0define AlarmSearch 0xECdefine Convert 0xBEdefine CopyScr 0xB4define md collect_time[0]amp。0x70)/16define fd collect_time[1]amp。0x70)/16define sd collect_time[2]amp。0x30)/16sbit DS_RST = P1^2。 //DS復(fù)位端sbit DS_CLK = P1^0。 //SCLK端sbit DS_IO = P1^1。 //IO端sbit DS18B20 = P1^3。uchar choose,a。//定義變量秒分時uchar collect_temperature[2] = {0}。void delay(uint i){uint k。 for(k=0。k++){。P1=0xff。choose=0。}void Time01_Int(void){TMOD = 0x12。TH0 = 0x60。TR0 = 1。 //允許定時器0、1中斷IP = 0x00。 ** *********************************************************//***********11微秒延時函數(shù)**********///void delayus(uint t){for(。t)。while(presence){while(presence){DS18B20 = 1。_nop_()。delayus(50)。 delayus(6)。 // presence=0繼續(xù)下一步 }delayus(45)。 //延時500uspresence = ~DS18B20。} /**********18B20寫命令函數(shù)*********///向 1WIRE 總線上寫一個字節(jié)void write_byte(uchar val){uchar i。 i0。_nop_()。 DS18B20 = 0。_nop_()。_nop_()。//5usDS18B20 = valamp。 //66usval=val/2。 //右移一位}DS18B20 = 1。 }///*********18B20讀1個字節(jié)函數(shù)********///從總線上讀取一個字節(jié)uchar read_byte(void){uchar i。for (i=8。i){DS18B20 = 1。_nop_()。DS18B20 = 0。_nop_()。_nop_()。_nop_()。_nop_()。 //4us if(DS18B20)value|=0x80。 //66us}DS18B20 = 1。}///***********讀出溫度函數(shù)**********///void Ds18b20_ReadEE(void){ow_reset()。 // Skip ROMwrite_byte(Convert)。 //總線復(fù)位write_byte(SkipROM)。 // 發(fā)讀命令collect_temperature[0]=read_byte()。 //溫度高8位}/********************************************************* DS1302時鐘芯片程序段 *********************************************************/void DS1302_InputByte(uchar byte) //往DS1302寫入1Byte數(shù)據(jù){ uchar i。temp = byte。 i0。 DS_IO = tempamp。 } }uchar DS1302_OutputByte(void) //從DS1302讀取1Byte數(shù)據(jù){ uchar i。for(i=0。i++){} return(temp)。C_CLK。DS1302_InputByte(reg)。S_CLK。} uchar Read_DS1302(uchar reg)//從DS1302寄存器讀數(shù)據(jù){uchar byte。 C_RST。 C_CLK。 S_RST。byte = DS1302_OutputByte()。 S_CLK。 C_RST。}void GetTime_DS1302(uchar *ucCurtime) //讀取DS1302當(dāng)前時間{//格式為: 秒 分 時ucCurtime[1] = Read_DS1302(0x83)。}void Set_Time(uchar *receive) //寫時間{Write_Enable。RW_DS1302(0x82,receive[1])。Write_Disable。 ** 數(shù)碼管顯示程序段 **uint lstemp。if(STA) {GetTime_DS1302(collect_time)。display[1] = num[sd]。display[3] = num[fd]。display[5] = num[md]。break。break。break。break。break。break。if(STA){TR0=0。TR0=1。 collect_temperature[1
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1