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

正文內(nèi)容

單片機學(xué)習(xí)手冊c51版-資料下載頁

2025-06-29 10:39本頁面
  

【正文】 0XF92101001000XA43101100000XB04100110010X995100100100X926100000100X827111110000XF88100000000X809100100000X90顯示數(shù)字共陰極數(shù)碼管(輸出1則亮)dp g f e d c b a 字形碼0. 101111111. 12. 13. 14. 15. 16. 17. 18. 19. 1四位數(shù)碼管 段碼(字形碼)表(與硬件有關(guān),硬件變化,則字形碼也變化)顯示字符共陽極數(shù)碼管(P2口輸出0則相應(yīng)段亮)字型碼gchdefba0101000000XA01101111010XBD2011001000X643001011000X2C4001110010X395001010100X2A6001000100X227101111000XBC8001000000X209001010000X28位碼表 :位選碼:01111111B;0X7F :位選碼:10111111B;0XBF:位選碼:11011111B;0XDF :位選碼:11101111B;0XEF段碼生成工具的應(yīng)用顯示原理四位數(shù)碼管的a,b,c,d,e,f,g,dp(h)是公共接在P2口的P2口的各位依次為D7~D0d7d6 d5 d4 d3 d2 d1 d0 gchdefb a 1 0 1 1 1 1 0 1 因數(shù)碼管是共陽極接法,要顯示數(shù)字,必須送出低電平的段碼,然后再送出位選碼。比如要在最右邊(個位)顯示數(shù)字“1”(b和c亮),應(yīng)在在P2口送出段碼,0XBD,然后使個位的三極管導(dǎo)通(輸出0電平)。 二、靜態(tài)顯示在個位上先顯示0,延時后再顯示1,延時后再顯示2,顯示到9后,再從0開始。 include define uchar unsigned char define uint unsigned int uchar ledg[10]={0XA0,0XBD,0X64,0X2C, 0X39,0X2A,0X22,0XBC,    0X20,0X28}。//定義數(shù)組段碼 void delay(unsigned int t)//延時函數(shù) {   uint i。   for(。t0。t) {for (i=1。i124。i++)。} } void main() //下面是主函數(shù) { uint y。 for(y=0。y10。y++)//顯示0~9 { P2=ledg[y]。//P2口送顯示段碼(0~9) P0=0X7F。//P0口送位選碼(個位) delay(800)。//延時 } } 學(xué)習(xí)任務(wù) 在個位數(shù)碼管上顯示9~0的減1計數(shù)。 在十位數(shù)碼管上顯示0~A、b、C、D、E、F加1計數(shù)。 在千位數(shù)碼管上顯示F~0的減1計數(shù)。任務(wù)2 多位數(shù)碼管動態(tài)顯示三、動態(tài)顯示原理: 利用人的視覺延滯感覺,通過掃描的方式顯示不同數(shù)字,如要顯示數(shù)字“26”的方法是先在個位顯示“6”延時一段時間后,再關(guān)閉,然后在十位顯示“2”延時一段時間再關(guān)閉,然后再重復(fù)掃描。顯示“26”程序 include include define uchar unsigned char define uint unsigned int uchar ledg[10]={0XA0,0XBD,0X64,0X2C, 0X39,0X2A, 0X22,0XBC,0X20,0X28}。//定義數(shù)組段碼 void delay(unsigned int t)//延時函數(shù) { uint i。 for(。t0。t) {for (i=1。i124。i++)。} } void main() //下面是主函數(shù) { P0=0xff。//關(guān)閉4位顯示器  delay(100)。//延時一下 while(1)   { P2=ledg[6]。//個位6的段碼 P0=0X7F。//個位的位選碼 delay(16)。//延時一下 P2=ledg[2]。//十位2的段碼 P0=0XBF。//十位的位選碼 delay(16)。延時一下 } } 從00到99的顯示程序例子 include include define uchar unsigned char define uint unsigned int uchar ledg[10]={0XA0,0XBD,0X64,0X2C, 0X39,0X2A,0X22,0XBC, 0X20,0X28}。 //定義數(shù)組 void delay(unsigned int t)//延時函數(shù) { uint i。 for(。t0。t) {for (i=1。i124。i++)。} } void main() //下面是主函數(shù) { uint x, z。 P0=0xff。//關(guān)閉顯示器 delay(100)。//延時一下 for(z=0。z100。z++)//從0顯示到99 { for(x=0。x30。x++)//顯示30次再加1 { P2=ledg[z%10]。//兩位整數(shù)除以10求余數(shù)得個位 P0=0X7F。//送個位的位選碼 delay(14)。//延時一下,時間要合適 P2=ledg[z/10]。//兩位整數(shù)除以10得十位數(shù) P0=0XBF。//送十位的位選碼 delay(14)。//延時一下,時間要合適 } } } 完成學(xué)習(xí)任務(wù): 修改程序?qū)崿F(xiàn),顯示59。 編程實現(xiàn)顯示1234 編程實現(xiàn)顯示從000開始加1,到999后再從00開始。 編程實現(xiàn)顯示從0000開始加1,到9999后再從0000開始。項目六 定時器/計數(shù)器應(yīng)用一、相關(guān)知識 1.定時/計數(shù)器的結(jié)構(gòu)與功能2.定時/計數(shù)器的功能寄存器 (1)定時/計數(shù)器方式寄存器TMOD為TT2的工作方式寄存器,其格式如下圖所示。1)T0方式0定時,T1方式1計數(shù),GATE=0,TMOD=0101 0000B=0x502)T0方式1計數(shù),T1方式1定時,GATE=0,TMOD=0001 0101B=0x15 工作方式選擇:① M1和M0:方式選擇位。其定義如下表所示M1M0工 作 方 式功 能 說 明 00方 式 013位計數(shù)器(Thi高8位和TLi的低5位) 01方 式 116位計數(shù)器(Thi8位和TLi的8位) 10方 式 2自動重裝入8位計數(shù)器(高8位溢出時,低8位自動裝入) 11方 式 3定時器0:分成兩個8位計數(shù)器 定時器1:此方式無意義 定時器/計數(shù)器的定義:C/T:當(dāng)該位0時作定時器,當(dāng)該位為1時作計數(shù)器用。GATE:門控位,GATE=1,定時/計數(shù)器0的工作受芯片引腳INT0()控制,高電平有效。定時/計數(shù)器1的工作受芯片引腳INT1()控制。當(dāng)GATE=0,定時/計數(shù)器的工作與引腳INT0、INT1無關(guān)。(2)定時/計數(shù)器控制寄存器TCON位功能:① TF1 —— T1溢出中斷請求標志 T1計數(shù)溢出后,TF1=1② TF0 —— T0溢出中斷請求標志 T0計數(shù)溢出后,TF0=1TF0/TF1:定時器溢出中斷申請標志位: =0:定時器未溢出; =1:定時器溢出申請中斷,進入中斷后自動清零。TR0/TR1:啟動/停止定時或計數(shù)=1:啟動定時或計數(shù)=0:停止定時或計數(shù)③ IE1 —— 外中斷中斷請求標志 ,IE1=1④ IE0 —— 外中斷中斷請求標志 ,IE0=1IE0/IE1:外部中斷申請標志位: =0:沒有外部中斷申請; =1:有外部中斷申請。 ⑤ IT1 —— 外中斷觸發(fā)方式控制位 IT1=1,下降邊沿觸發(fā)方式; IT1=0,低電平觸發(fā)方式。⑥ IT0 —— 外中斷觸發(fā)方式控制位 其意義和功能與IT1相似。 IT0/IT1:外部中斷請求的觸發(fā)方式選擇位: =0:在INT0/INT1端申請中斷的信號低電平有效。 =1:在INT0/INT1端申請中斷的信號負跳變有效.工作方式與最大定時時間:工 作計數(shù)位寄存器配置最大計數(shù)M 最長定時時間(μs)定時時間(μs)方 式(bit)(12MHz晶振)(12MHz晶振)方 式 013TH8位TL低5位213=8129213T=8129(M?X)T=(213?X)1方 式 116TH8位TL8位216=65536216T=65536(M?X)T=(216?X)1方 式 28(重載)TL8位計數(shù)28=25628T=256(M?X)T=(28?X)1TH預(yù)置初值同TL方 式 38TL028=25628 T=256(M?X)T=(28?X)18TH0無計數(shù)功能28 T=256(M?X)T=(28?X)1僅適用于T0,T1可工作于方式0/1/2,常作串行口波特率發(fā)生器定時器定時時間與初值的計算工作方式0:13位,從初值開始加1計數(shù),計滿產(chǎn)生溢出標TF0/TF1=1,要根據(jù)定時時間計算初值工作方式0: 內(nèi)部定時器是對機器周期進行加1計數(shù)。 晶振頻率f=12MHz時,經(jīng)過12分頻作為內(nèi)部時鐘 機器周期T=1/f =1/{(12 247。12) 106} = 106(秒) =1μs(微秒) 如果晶振f=6MHz時,則機器周期為2 μs(微秒) 定時時間(△t)=(213計數(shù)器初值X)機器周期 當(dāng)初值為0時,定時時間最長△tm= 213 機器周期 =8192 1μs(微秒)= 所以:計數(shù)器初值X=213定時時間(△t)/機器周期 ,分析:用定時器T0的方式0,晶振頻率為12MHz,,所以產(chǎn)生5毫秒的定時,然后100次計數(shù),1005=。, 工作步驟: 計算定時器初值X計算 X=213{定時時間(微秒)/機器周期(微秒)} =8192(5000/1) =3192 =110001111000B 確定TH0,TL0初值 將最右邊5位與左邊分開成兩部分(TH0,TL0)程序清單: include define uchar unsigned char define uint unsigned int sbit P10=P1^0。 void main() //下面是主函數(shù) { uint x。//x用于100次計數(shù) TMOD=0X00。//T0工作于方式0,定時方式 TH0=0X63。//T0高8位置初值 TL0=0X18。//T0低8位置初值 P10=0。//LED1亮
點擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1