欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索

新人求救,51單片機(jī)定時(shí)器0關(guān)閉再開(kāi)啟以后不工作

查看數(shù): 7113 | 評(píng)論數(shù): 18 | 收藏 0
關(guān)燈 | 提示:支持鍵盤(pán)翻頁(yè)<-左 右->
    組圖打開(kāi)中,請(qǐng)稍候......
發(fā)布時(shí)間: 2020-6-15 16:29

正文摘要:

如題,子函數(shù)中因?yàn)橐獔?zhí)行串口發(fā)送就先關(guān)閉了定時(shí)器0開(kāi)啟定時(shí)器1(兩個(gè)同時(shí)開(kāi)啟總出問(wèn)題),發(fā)送完畢后關(guān)閉定時(shí)器1再開(kāi)啟定時(shí)器0,可是接下來(lái)定時(shí)器0都不再工作,主函數(shù)工作正常(出了有關(guān)定時(shí)器0的)。P2是 ...

回復(fù)

ID:801878 發(fā)表于 2020-7-28 10:15
修改定時(shí)器0模式時(shí),TMOD&=0xF0; TMOD|=0x01; 修改定時(shí)器1模式時(shí),TMOD&=0x0F; TMOD|=0x20;
ID:633896 發(fā)表于 2020-7-7 11:13
TOMD 只需要定義一次  你在兩個(gè)初始化都有,你在開(kāi)定時(shí)器0的時(shí)候關(guān)了1 你在開(kāi)定時(shí)器1的時(shí)候關(guān)了0 ,所以會(huì)導(dǎo)致你一直都只是一個(gè)定時(shí)器工作。如果你關(guān)掉0就開(kāi)1的話可以,關(guān)掉1就開(kāi)0的話 也可以 兩個(gè)同時(shí)打開(kāi)的話就不行。都是TMOD的原因。

上次我犯了這個(gè)錯(cuò)誤,師傅讓我自賞兩個(gè)大嘴巴子。
ID:735148 發(fā)表于 2020-7-4 17:03
要不你把整個(gè)程序貼上來(lái)。這一點(diǎn),確識(shí)沒(méi)看出來(lái)可以不執(zhí)行的錯(cuò)誤
ID:789121 發(fā)表于 2020-7-4 11:22
還沒(méi)解決么?實(shí)在不行就把仿真圖和程序發(fā)上來(lái)吧
ID:213173 發(fā)表于 2020-7-3 20:48
YokeHickt 發(fā)表于 2020-7-3 18:58
已經(jīng)過(guò)去蠻久了,之前一直給忘了,我把兩個(gè)兩個(gè)定時(shí)器同時(shí)開(kāi)啟,也就是像前面各位說(shuō)的方法我都嘗試過(guò),而測(cè) ...

樓上的壇友基本把問(wèn)題都講清楚了,樓主還沒(méi)搞定可能與你把T0設(shè)置周期太短有關(guān)。進(jìn)程調(diào)度得當(dāng)串口與T0不會(huì)互擾。如實(shí)在搞不定可以設(shè)置兩個(gè)定時(shí)器開(kāi)關(guān)互斥。基本構(gòu)架如下:

void InitTimer(void)
{
        TMOD = 0x22;//8位自動(dòng)重裝
        PCON = 0x00;
        SCON = 0x50;
        TH0 = 0xA4;//定時(shí)100us
        TL0 = 0xA4;
        TH1 = 0xFD;//比特率9600
        TL1 = 0xFD;
        TR0 = 0;//關(guān)T0
        TR1 = 0;//關(guān)T1
        EA = 1;
        ES = 1;
        ET0 = 1;
        ET1 = 0;
}

void main(void)
{
        InitTimer();
        while(1)
        {
                //相應(yīng)任務(wù)中加二選一
                if(TR1==1)
                        TR0=0;               
                else TR0=1;
        }
}

void Timer0Interrupt(void) interrupt 1
{
        //不需重裝
        //中斷任務(wù)
}

void UARTInterrupt(void) interrupt 4
{
        RI=0;
        x=SBUF;
        //中斷任務(wù)
}
ID:638390 發(fā)表于 2020-7-3 18:58
已經(jīng)過(guò)去蠻久了,之前一直給忘了,我把兩個(gè)兩個(gè)定時(shí)器同時(shí)開(kāi)啟,也就是像前面各位說(shuō)的方法我都嘗試過(guò),而測(cè)試方法就是兩個(gè)定時(shí)器各控制一個(gè)led燈的亮滅,各自執(zhí)行的時(shí)候會(huì)使對(duì)應(yīng)的led燈亮,使另一個(gè)定時(shí)器的led滅,而在這里會(huì)出現(xiàn)定時(shí)器0結(jié)束定時(shí)器1開(kāi)啟的過(guò)程都正常,而當(dāng)定時(shí)器1語(yǔ)句結(jié)束后,定時(shí)器0就失去效用,對(duì)應(yīng)的led不再亮起
ID:280512 發(fā)表于 2020-6-30 17:48
既然不需要兩個(gè)定時(shí)器同時(shí)工作,除了工作模式變動(dòng)外。可以分別控制 TR0 和 TR1 吧
ID:360812 發(fā)表于 2020-6-30 15:24
應(yīng)該是初始化的問(wèn)題,用之前在初始化一次呢?
ID:789121 發(fā)表于 2020-6-30 14:30
在timer0_init()中把timer1的中斷和串口中斷關(guān)掉試一下
ID:519089 發(fā)表于 2020-6-30 13:55
TIME1的初始化把    Time0給關(guān)了。。。。
ID:636538 發(fā)表于 2020-6-18 15:26
直接在開(kāi)啟定時(shí)器1初始化的時(shí)候TMOD|=0X20;你第二個(gè)初始化相當(dāng)于給第一個(gè)給覆蓋了也可以?xún)蓚(gè)初始化放在一起寫(xiě);
ID:636538 發(fā)表于 2020-6-18 15:15
wufeng391 發(fā)表于 2020-6-17 21:25
修改定時(shí)器0模式時(shí),TMOD&=0xF0; TMOD|=0x01;
修改定時(shí)器1模式時(shí),TMOD&=0x0F; TMOD|=0x20;
這樣修改定時(shí) ...

你這個(gè)不就是TMOD=0X21;
ID:782419 發(fā)表于 2020-6-17 21:29
應(yīng)該是你修改定時(shí)器工作模式的方法有問(wèn)題,你的這種操作方法,如果只是一個(gè)定時(shí)器的話決什么問(wèn)題,如果是兩個(gè)使用同一個(gè)模式寄存器的定時(shí)器就不好用了,可能在打開(kāi)一個(gè)定時(shí)器的同時(shí)會(huì)關(guān)閉另一個(gè)定時(shí)器。這時(shí)候應(yīng)用用與或方式操作修改TMOD寄存器。網(wǎng)上應(yīng)該有相關(guān)的視頻。
ID:782419 發(fā)表于 2020-6-17 21:25
修改定時(shí)器0模式時(shí),TMOD&=0xF0; TMOD|=0x01;
修改定時(shí)器1模式時(shí),TMOD&=0x0F; TMOD|=0x20;
這樣修改定時(shí)器模式時(shí)不會(huì)互相干擾。你可以試下。
ID:123289 發(fā)表于 2020-6-16 15:36
你是證明它沒(méi)有工作的呢?
LED燈亮何時(shí)滅?何時(shí)亮?滅后何時(shí)又被明亮的呢?
ID:764088 發(fā)表于 2020-6-16 10:13
檢查與定時(shí)器相關(guān)的驅(qū)動(dòng)時(shí)鐘是否符合要求,并查該時(shí)鐘在定時(shí)器 開(kāi)關(guān)的變化
ID:638390 發(fā)表于 2020-6-15 17:49
經(jīng)過(guò)檢測(cè)TMOD已經(jīng)被重新定義為0x01,可是定時(shí)器0依舊不工作
ID:773924 發(fā)表于 2020-6-15 17:08
你把最后兩行代碼的順序倒過(guò)來(lái)試一下。即:
flag4=0;
timer0_init();

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表