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

正文內(nèi)容

基于c8051f350的稱重系統(tǒng)軟件設(shè)計(jì)畢業(yè)論文(編輯修改稿)

2025-07-24 17:12 本頁面
 

【文章內(nèi)容簡介】 225kHz f ≤ 590kHz 100kHz f ≤ 200kHz K因子= 22100 590kHz f ≤ 200kHz f ≤ 400kHz K因子= 65101 f ≤ 4MHz 400kHz f ≤ 800kHz K因子= 180常州工學(xué)院畢業(yè)設(shè)計(jì)論文15110 4MHz f ≤ 10MHz 800kHz f ≤ K因子= 664111 10MHz f ≤ 30MHz f ≤ K因子= 1590時(shí)鐘乘法器產(chǎn)生一個(gè)4倍于輸入時(shí)鐘頻率的輸出時(shí)鐘。時(shí)鐘乘法器的輸入可以從外部振蕩器、內(nèi)部振蕩器/2或外部振蕩器/2中選擇。因此有三種可能的輸出,內(nèi)部振蕩器外部振蕩器2或外部振蕩器4。時(shí)鐘乘法器用CLKMUL寄存器配置。配置和使能時(shí)鐘乘法器的過程如下:復(fù)位時(shí)鐘乘法器開始選擇時(shí)鐘乘法器輸入使能時(shí)鐘乘法器延時(shí)大于 5 μ s初始化時(shí)鐘乘法器M U L R D Y = 1 ?結(jié)束NY圖 4–3 時(shí)鐘乘法器初始化流程圖當(dāng)使用外部振蕩器作為時(shí)鐘乘法器的輸入時(shí),外部源必須在時(shí)鐘乘法器被初始化之前被使能并穩(wěn)定CLKMUL:時(shí)鐘乘法器控制寄存器 MULEN MULINIT MULRDY MULSEL 10MULEN:時(shí)鐘乘法器使能位(0:時(shí)鐘乘法器被禁止。1:時(shí)鐘乘法器被使能。)MULINIT:時(shí)鐘乘法器初始化位(在時(shí)鐘乘法器被使能時(shí),該位應(yīng)為‘0’。時(shí)鐘乘法器被使能后,向該位寫‘1’對時(shí)鐘乘法器初始化。當(dāng)時(shí)鐘乘法器穩(wěn)定后,MULRDY的讀出值為‘1’。)MULRDY:時(shí)鐘乘法器準(zhǔn)備好標(biāo)志(0:時(shí)鐘乘法器未準(zhǔn)備好。 1:時(shí)鐘乘法器準(zhǔn)備好。)常州工學(xué)院畢業(yè)設(shè)計(jì)論文16MULSEL:系統(tǒng)時(shí)鐘源選擇位MULSEL 輸入時(shí)鐘 時(shí)鐘乘法器輸出00 內(nèi)部振蕩器/2 內(nèi)部振蕩器201 外部振蕩器 外部振蕩器410 外部振蕩器/2 外部振蕩器211 保留 保留外部晶體諧振器通常需要較長的起動(dòng)時(shí)間,應(yīng)待其穩(wěn)定后方可用作系統(tǒng)時(shí)鐘。當(dāng)外部振蕩器穩(wěn)定后,晶體有效標(biāo)志(寄存器OSCXCN中的XTLVLD)被硬件置‘1’ 。在晶體方式,為了防止讀到假XTLVLD標(biāo)志,軟件在使能外部振蕩器和檢查XTLVLD之間至少應(yīng)延時(shí)1ms。寄存器CLKSEL中的CLKSL[1:0]位選擇用作系統(tǒng)時(shí)鐘的振蕩器。系統(tǒng)時(shí)鐘可以在內(nèi)部振蕩器、外部振蕩器及時(shí)鐘乘法器之間自由切換,只要所選擇的時(shí)鐘源被使能并穩(wěn)定運(yùn)行。CLKSEL:時(shí)鐘選擇寄存器 CLKSL 10CLKSL[1:0]:系統(tǒng)時(shí)鐘選擇位。(00:內(nèi)部振蕩器。01:外部振蕩器。10:時(shí)鐘乘法器。11:保留。)時(shí)鐘丟失檢測器(MCD)是由系統(tǒng)時(shí)鐘觸發(fā)的單穩(wěn)態(tài)電路。如果系統(tǒng)時(shí)鐘保持在高電平或低電平的時(shí)間大于 100 微秒,單穩(wěn)態(tài)電路將超時(shí)并產(chǎn)生復(fù)位。在發(fā)生時(shí)鐘丟失檢測器復(fù)位后,MCDRSF 標(biāo)志()的讀出值為‘1’,表示本次復(fù)位源為 MCD;否則該位讀出值為‘0’。向 MCDRSF 位寫‘1’將使能時(shí)鐘丟失檢測器;寫‘0’將禁止時(shí)鐘丟失檢測器。/RST 引腳的狀態(tài)不受該復(fù)位的影響。 子程序如下:void SYSCLK_Init (void){int multiplier_delay。OSCICN = 0x00。 //禁止內(nèi)部振蕩源OSCXCN = 0x67。 //選擇外部晶體振蕩器方式, 10MHzf≤30MHz for(multiplier_delay=0。multiplier_delay24400。 multiplier_delay++){} //延時(shí)最少1ms while (!(OSCXCN amp。 0x80))。 //查詢XTLVLD等待晶體振蕩器準(zhǔn)備好CLKMUL = 0x00。 //復(fù)位時(shí)鐘乘法器常州工學(xué)院畢業(yè)設(shè)計(jì)論文17CLKMUL amp。= ~0x01。 //MULSEL = 10b,選擇時(shí)鐘乘法器輸入為外部振蕩器/2CLKMUL |= 0x80。 //使能時(shí)鐘乘法器for(multiplier_delay=0。 multiplier_delay 125。 multiplier_delay++){} //延時(shí)最少5usCLKMUL |= 0xC0。 //初始化時(shí)鐘乘法器while (!(CLKMUL amp。 0x20))。 //查詢MULRDY等待時(shí)鐘乘法器準(zhǔn)備好RSTSRC = 0x04。 //使能時(shí)鐘丟失檢測器CLKSEL = 0x02。 //選擇時(shí)鐘乘法器輸出作為系統(tǒng)時(shí)鐘} I/O 端口初始化子程序I/O 端口初始化子程序 PORT_Init 用于設(shè)置交叉開關(guān)和通用端口 I/O。數(shù)字和模擬資源可以通過 17 個(gè) I/O 引腳使用。端口引腳被組織為兩個(gè) 8 位口和一個(gè) 1 位口。每個(gè)端口引腳都可以被定義為通用 I/O(GPIO)或模擬輸入。 可以被分配給內(nèi)部數(shù)字資源。設(shè)計(jì)者完全控制數(shù)字功能的引腳分配,只受 I/O 引腳數(shù)的限制。 這種資源分配的靈活性是通過使用優(yōu)先權(quán)交叉開關(guān)譯碼器實(shí)現(xiàn)的。不論交叉開關(guān)的設(shè)置如何,端口 I/O 引腳的狀態(tài)總是可以被讀到相應(yīng)的端口鎖存器。交叉開關(guān)根據(jù)優(yōu)先權(quán)譯碼表為所選擇的內(nèi)部數(shù)字資源分配I/O 引腳。寄存器 XBR0 和 XBR1 用于選擇內(nèi)部數(shù)字功能。 所有端口 I/O 都耐 5V 電壓。端口 I/O 單元可以被配置為漏極開路或推挽方式(在端口輸出方式寄存器 PnMDOUT 中設(shè)置,n = 0,1,2) 。 優(yōu)先權(quán)交叉開關(guān)譯碼器為每個(gè) I/O 功能分配優(yōu)先權(quán),從優(yōu)先權(quán)最高的UART0 開始。當(dāng)一個(gè)數(shù)字資源被選擇時(shí),尚未分配的端口引腳中的最低位被分配給該資源(但 UART0 總是被分配到引腳 和 ) 。如果一個(gè)端口引腳已經(jīng)被分配,則交叉開關(guān)在為下一個(gè)被選擇的資源分配引腳時(shí)將跳過該引腳。此外,交叉開關(guān)還將跳過在 PnSKIP 寄存器中被置‘1’的那些位所對應(yīng)的引腳。PnSKIP 寄存器允許軟件跳過那些被用作模擬輸入、特殊功能或 GPIO 的引腳。 如果一個(gè)端口引腳被一個(gè)外設(shè)使用而不經(jīng)過交叉開關(guān),則該引腳在 PnSKIP寄存器中的對應(yīng)位應(yīng)被置‘1’ 。這種情況適用于 和/或 (用于外部振蕩器) 、(用于外部 CNVSTR 信號) 、(用于 IDA0) 、(用于 IDA1)常州工學(xué)院畢業(yè)設(shè)計(jì)論文18和任何被選擇的 ADC 或比較器輸入。交叉開關(guān)跳過那些已經(jīng)被分配的引腳,移向下一個(gè)未被分配的引腳。 寄存器 XBR0 和 XBR1 用于為數(shù)字 I/O 資源分配物理 I/O 引腳。當(dāng) UART 被選擇時(shí),交叉開關(guān)也為其分配兩個(gè)引腳(TX 和 RX) 。UART0 的引腳分配是固定的(這是出于引導(dǎo)裝入的目的):UART TX0 總是被分配到 ;UART RX0 總是被分配到 。在優(yōu)先功能被分配之后,標(biāo)準(zhǔn)端口 I/O 是連續(xù)的。 I/O 端口初始化包括以下步驟:開始選擇端口輸入方式選擇端口輸出方式選擇應(yīng)被交叉開關(guān)跳過的引腳分配引腳給外設(shè)使能交叉開關(guān)結(jié)束圖 4–4 端口初始化程序流程圖所有端口引腳都必須被配置為模擬或數(shù)字輸入。被用作 ADC 輸入的任何引腳都應(yīng)被配置為模擬輸入。當(dāng)一個(gè)引腳被配置為模擬輸入時(shí),它的弱上拉、數(shù)字驅(qū)動(dòng)器和數(shù)字接收器都被禁止,這可以節(jié)省功耗并減小模擬輸入的噪聲。此外,應(yīng)將交叉開關(guān)配置為跳過所有被用作模擬輸入的引腳(通過將 PnSKIP 寄存器中的對應(yīng)位置‘1’來實(shí)現(xiàn)) 。端口輸入方式在 PnMDIN 寄存器中設(shè)置,其中‘1’表示數(shù)字輸入, ‘0’表示模擬輸入。復(fù)位后所有引腳的缺省設(shè)置都是數(shù)字輸入。I/O 引腳的輸出驅(qū)動(dòng)器特性由端口輸出方式寄存器 PnMDOUT中的對應(yīng)位決定,每個(gè)端口輸出驅(qū)動(dòng)器都可被配置為漏極開路或推挽方式。不管交叉開關(guān)是否將端口引腳分配給某個(gè)數(shù)字外設(shè),都需要對端口驅(qū)動(dòng)器的輸出方式進(jìn)行設(shè)置。當(dāng) XBR1 寄存器中的 WEAKPUD 位為‘0’時(shí),輸出方式為漏極開路的那些引常州工學(xué)院畢業(yè)設(shè)計(jì)論文19腳的弱上拉被使能。WEAKPUD 不影響被配置為推挽方式的端口 I/O。當(dāng)漏極開路輸出被驅(qū)動(dòng)為邏輯‘0’時(shí),弱上拉被自動(dòng)關(guān)斷(禁止)以避免不必要的功率消耗。 寄存器 XBR0 和 XBR1 必須被裝入正確的值以選擇所需要的數(shù)字 I/O 功能。置‘1’XBR1 中的 XBARE 位將使能交叉開關(guān)。不管 XBRn 寄存器的設(shè)置如何,在交叉開關(guān)被使能之前,外部引腳保持標(biāo)準(zhǔn)端口 I/O 方式(輸入) 。 為使端口引腳工作在標(biāo)準(zhǔn)端口 I/O 輸出方式,交叉開關(guān)必須被使能。當(dāng)交叉開關(guān)被禁止時(shí),端口輸出驅(qū)動(dòng)器被禁止。 XBR0:端口 I/O 交叉開關(guān)寄存器 0 CP0AE CP0E SYSCKE SMB0E SPI0E URT0ECP0AE:比較器 0 異步輸出使能位( 0:CP0A :CP0A 連到端口引腳 。 )CP0E:比較器 0 輸出使能位(0:CP0 不連到端口引腳。1:CP0 連到端口引腳。 )SYSCKE:/SYSCLK 輸出使能位(0:/SYSCLK 不連到端口引腳; 1:/SYSCLK 連到端口引腳。 )SMB0E:SMBus I/O 使能位(0:SMBus I/O 不連到端口引腳。 1:SMBus I/O 連到端口引腳。 )SPI0E:SPI I/O 使能位(0:SPI I/O 不連到端口引腳。1:SPI I/O 連到端口引腳。 )URT0E:UART I/O 使能位(0:UART I/O 不連到端口引腳。1:UART TX0, RX0 連到端口引腳 和 。 )XBR1:端口 I/O 交叉開關(guān)寄存器 1WEAKPUD XBARE T1E T0E ECIE PCA0ME10WEAKPUD:端口I/O弱上拉禁止位。(0:弱上拉使能。1:弱上拉禁止。)XBARE:交叉開關(guān)使能位(0:交叉開關(guān)禁止。1:交叉開關(guān)使能。 )T1E:T1 使能位(0:T1 不連到端口引腳。1:T1 連到端口引腳。 )T0E:T0使能位(0:T0 不連到端口引腳。1:T0連到端口引腳。)ECIE:PCA0 外部計(jì)數(shù)輸入使能位(0:ECI 不連到端口引腳。1:ECI 連到端口引腳。 )PCA0ME:PCA 模塊 I/O 使能位(00:所有的 PCA I/O 都不連到端口引腳。01:CEX0 連到端口引腳。10:CEX0、CEX1 連到端口引腳。11:CEX0、CEXCEX2 連到端口引腳)常州工學(xué)院畢業(yè)設(shè)計(jì)論文20未被交叉開關(guān)分配的端口引腳和未被模擬外設(shè)使用的端口引腳都可以作為通用 I/O。通過對應(yīng)的端口數(shù)據(jù)寄存器訪問端口 P0P2,這些寄存器既可以按位尋址也可以按字節(jié)尋址。向端口寫入時(shí),數(shù)據(jù)被鎖存到端口數(shù)據(jù)寄存器中,以保持引腳上的輸出數(shù)據(jù)值不變。讀端口數(shù)據(jù)寄存器(或端口位)將總是返回引腳本身的邏輯狀態(tài),而與 XBRn 的設(shè)置值無關(guān),即使在引腳被交叉開關(guān)分配給其它信號時(shí),端口寄存器總是讀其對應(yīng)的端口 I/O 引腳。但在對端口 SFR 執(zhí)行下面的讀修改寫指令(ANL、ORL、XRL、JBC、CPL、INC、DEC、DJNZ)和對端口SFR 中的某一位執(zhí)行 MOV、CLR、SETB 期間例外。這些指令讀端口寄存器(而不是引腳)的值,修改后再寫回端口 SFR。 P0:端口 0 寄存器 P0.[7:0] 寫 - 輸出出現(xiàn)在 I/O 引腳。 (0:邏輯低電平輸出。1:邏輯高電平輸出。若相應(yīng)的 位 = 0,則為高阻態(tài)。 ) 讀 - 讀那些在 P0MDIN 中被選擇為模擬輸入的引腳時(shí)總是返回‘0’ 。被配置為數(shù)字輸入時(shí)直接讀端口引腳。 (0: 為邏輯低電平。1: 為邏輯高電平。)P0MDIN:端口 0 輸入方式寄存器 –:輸入方式配置位(當(dāng)端口引腳被配置為模擬輸入時(shí),其弱上拉、數(shù)字驅(qū)動(dòng)器和數(shù)字接收器都被禁止。0:對應(yīng)的 引腳被配置為模擬輸入。1:對應(yīng)的 引腳不配置為模擬輸入。 )P0MDOUT:端口0輸出方式寄存器 –:輸出方式配置位(分別對應(yīng)) 。如果 P0MDIN 寄存器中的對應(yīng)位為邏輯‘0’ ,則輸出方式配置為被忽略。 (0:對應(yīng)的 輸出為漏極開路。1:對應(yīng)的 輸出為推挽方式。 ) P0SKIP:端口 0 跳過寄存器 P0SKIP.[7:0]:端口 0 交叉開關(guān)跳過使能位。這些位選擇被交叉開關(guān)譯碼器跳過的端口引腳。作為模擬輸入(ADC 或比較器)或特殊功能(VREF 輸入、外部常州工學(xué)院畢業(yè)設(shè)計(jì)論文21振蕩器電路、CNVSTR 輸入)的引腳應(yīng)被交叉開關(guān)跳過。 (0:對應(yīng)的 不被交叉開關(guān)跳過。1:對應(yīng)的 被交叉開關(guān)跳過。 )P1(端口1寄存器)、P1MDIN(端口1輸入方式寄存器)、P1MDOUT(端口1輸出方式寄存器)、P0SKIP(端口1跳過寄存器)、P2(端口2寄存器)、P2MDOUT(端口2輸出方式寄存器)也類似。子程序如下:void PORT_Init (void){P0SKIP |= 0xCC。 // 跳過 、 晶振引腳,、P1SKIP |= 0x0F。 // 顯示引腳,、 去皮和清零引腳XBR0 = 0x01。 // 使用串口 UART0XBR1 = 0x40。 // 使用弱上拉電阻,使能交叉開關(guān)P0MDOUT |= 0xDF。 // 設(shè)置輸出方式} A/D 轉(zhuǎn)換初始化子程序A/D轉(zhuǎn)換初始化子程序ADC0_Init用于設(shè)置采樣速率、輸出字速率、采樣引腳等。C8051F350內(nèi)部有一個(gè)全差分24位SigmaDel
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1