新聞中心

        c51單片機(jī)第二課筆記

        作者: 時(shí)間:2016-11-24 來(lái)源:網(wǎng)絡(luò) 收藏
        1震蕩周期:就是晶振震蕩一次所用的時(shí)間。也叫做時(shí)鐘周期
        機(jī)器周期:單片機(jī)完成一次獨(dú)立的操作需要的時(shí)間。是震蕩周期的12倍。
        指令周期:cpu完成一次完整的操作需要的所有時(shí)間,有單周期指令,雙周期指令等。
        2 用循環(huán)左移,循環(huán)右移指令 實(shí)現(xiàn)流水燈
        int temp;
        temp=0xfe;
        P1=temp;
        temp=_crol_(temp,1);
        有關(guān)循環(huán)指令包含在intrins.h頭文件中。
        3 對(duì)蜂鳴器的操作,類似與對(duì)led的操作,對(duì)相應(yīng)端口輸出第電平。關(guān)于蜂鳴器的數(shù)據(jù)有待補(bǔ)充。
        4 共陰極led顯示器16進(jìn)制編碼表
        0x3f,0x06,0x5b,0x4f,
        0x66,0x6d,0x7d,0x07,
        0x7f,0x6f,0x77,0x7c,
        0x39,0x5e,0x79,0x71
        從左到有,分別為 0到f的編碼。
        5led數(shù)碼管的位選,段選。用2個(gè)鎖存器配合,實(shí)現(xiàn)6個(gè)led數(shù)碼管。先鎖存位選信號(hào)再鎖存段選信號(hào)。
        具體操作。 打開鎖存器1
        輸出位選信號(hào)。
        關(guān)閉鎖存器1
        打開鎖存器2
        輸出段選信號(hào)。
        關(guān)閉鎖存器。
        具體例程。
        #include
        sbit dula=P2^6;
        sbit wela=P2^7;

        void main()
        {
        wela=1;
        P0=0xc0;
        wela=0;
        dula=1;
        P0=0x06;
        dula=0;
        while(1);
        }


        6鎖存器的真值表。
        7中斷
        與中斷有關(guān)的幾個(gè)寄存器。
        A IE中斷允許控制寄存器。其中包括EA EX0 EX1 ET0 ET1 ES
        EA(IE.7)CPU中斷運(yùn)行總控制位。
        ES(IE.5)串行口中斷允許控制位。
        ET1和ET0(IE.3,IE.1)定時(shí)器1和定時(shí)器0中斷允許控制位。
        EX1和EX0(IE.2,IE.0)外部中斷1和外部中斷0允許控制位。
        8051采用兩級(jí)中斷控制方法。比如要開啟定時(shí)器0的中斷 要分別 在EA 和 ET0 兩位置1.
        B TCON 外部中斷0,1 定時(shí)器0,1終端控制寄存器。
        TCON包括 TF1, TR1, TF0, TR0, IE1, IT1, IE0, IT0
        TF1,TF0(TCON7,TCON5)定時(shí)器T1,T0的計(jì)數(shù)溢出標(biāo)志。
        IE1,IE0(TCON,3,TCON.1)外部中斷1,0的中斷請(qǐng)求標(biāo)志位
        以上4位 由硬件檢測(cè)到中斷信號(hào)后自動(dòng)置1.
        IT1,IT0(TCON,2,TCON.0)外部中斷信號(hào)的觸發(fā)方式選擇位
        為0時(shí),是低電平觸發(fā) 為1時(shí),是下降沿脈沖觸發(fā)方式。
        C IP中斷優(yōu)先級(jí)控制寄存器。
        8c語(yǔ)言中中斷程序的編寫
        格式 void 函數(shù)名() interrupt 中斷編碼{函數(shù)體}
        其中 中斷編碼分別為
        外部中斷0 0
        定時(shí)器0 1
        外部中斷1 2
        定時(shí)器1 3
        串口發(fā)送接收 4
        中斷函數(shù)不用事先聲明。編寫中斷函數(shù)要注意開中斷。
        9 定時(shí)器及相關(guān)寄存器
        定時(shí)器的工作原理 16位的加一計(jì)數(shù)器。
        相關(guān)寄存器
        T0,T1的控制寄存器TCON
        TF1,TF0 (TCON7,TCON5)定時(shí)器T1,T0的計(jì)數(shù)溢出標(biāo)志。
        TR1,TR0(CON6,TCON4)定時(shí)器運(yùn)行控制器
        0時(shí)停止工作,1時(shí)啟動(dòng)。
        T0,T1的方式控制寄存器TMOD
        TMOD高4位控制T1 低4位控制T0
        其中 GATE 門控位 等于0時(shí)
        等于1時(shí)
        C/T 定時(shí)或計(jì)數(shù)功能選擇位 等于0時(shí) 定時(shí)功能,計(jì)數(shù)脈沖由內(nèi)部提供
        等于1時(shí) 計(jì)數(shù)功能,對(duì)外部事件(脈沖)進(jìn)行計(jì)數(shù)
        M1和M0:T1和T0操作方式選擇位

        計(jì)數(shù)初值與計(jì)數(shù)個(gè)數(shù)的關(guān)系 計(jì)數(shù)個(gè)數(shù)=2的16次方-計(jì)數(shù)初值.
        10定時(shí)器的應(yīng)用.

        初始化程序應(yīng)完成如下工作:
        §對(duì)TMOD賦值,以確定T0和T1的工作方式。
        §計(jì)算初值,并將其寫入TH0、TL0或TH1、TL1。
        §中斷方式時(shí),則對(duì)IE賦值,開放中斷。
        啟動(dòng)定時(shí)器


        TMOD=0x01;//設(shè)置定時(shí)器0的工作方式1
        TH0=(65536-50000)/256;
        TL0=(65536-50000)%6;
        EA=1; //開總中斷
        ET0=1;//開定時(shí)器0中斷
        TR0=1;//啟動(dòng)定時(shí)器0


        關(guān)鍵詞: c51單片

        評(píng)論


        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 无极县| 天台县| 朝阳县| 江孜县| 枝江市| 马龙县| 定州市| 西贡区| 清水河县| 黔西| 山东| 崇信县| 岢岚县| 新闻| 肃北| 武功县| 禹州市| 杭锦旗| 枣强县| 洱源县| 河南省| 家居| 东阿县| 介休市| 石门县| 山西省| 普宁市| 达拉特旗| 西畴县| 清徐县| 江永县| 蒲城县| 普洱| 泗洪县| 武城县| 湘阴县| 井研县| 乐山市| 巴南区| 汉源县| 荥经县|