久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3009|回復(fù): 10
收起左側(cè)

單片機(jī)控制D2燈亮了之后就不滅,問大神改怎么修改

[復(fù)制鏈接]
ID:776029 發(fā)表于 2020-6-11 12:08 | 顯示全部樓層 |閱讀模式
51hei圖片20200611120720.png

單片機(jī)源程序如下:
#include<reg51.h>
#define uint unsigned int
#define uchar unsigned char

sbit led1 = P1^0;
sbit led2 = P1^1;
void main()
{

        
                IT0 = 1;//設(shè)置外部中斷觸發(fā)方式為 下降沿觸發(fā)
                EX0 = 1;//打開外部中斷0
                EA = 1;//打開中斷總開關(guān)        
                TMOD=0x01; //T0定時(shí)方式1
                   TH0=0x3C; //預(yù)置計(jì)數(shù)初值
                   TL0=0xB0;
                   ET0=1; //開T0中斷
                   TR0=1; //啟動(dòng)T0   
                while(1);
}

void change_led() interrupt 0
{
        led1 = ~led1;
}        
void timer () interrupt 1
{
        int x=0,y=0;
        if(led2==0)
        {              
                x++;
                if(x==40)
                {
                        led2=1;
                        x=0;
                }
                TH0=0x3C; //計(jì)數(shù)初值重裝載
                TL0=0xB0;        
        }
        if(led2==1)
        {
                y++;
                if(y==200)
                {
                        led2=0;
                        y=0;
                }
                TH0=0x3C; //計(jì)數(shù)初值重裝載
                TL0=0xB0;
        }
        
}

D2燈亮了之后就不滅,代碼應(yīng)該怎么修改啊

回復(fù)

使用道具 舉報(bào)

ID:776029 發(fā)表于 2020-6-11 15:18 | 顯示全部樓層
我想做一個(gè)手控?zé)簦粋(gè)自動(dòng)燈,但是那個(gè)自動(dòng)燈亮了就不滅了
回復(fù)

使用道具 舉報(bào)

ID:332444 發(fā)表于 2020-6-11 15:32 | 顯示全部樓層
定時(shí)器里面的變量或聲明為公共變量或聲明為靜態(tài)變量。否則進(jìn)入中斷變量始終為0。
回復(fù)

使用道具 舉報(bào)

ID:24758 發(fā)表于 2020-6-11 16:04 | 顯示全部樓層
51hei圖片20200611160403.png

你在定時(shí)器中斷中定義的x,y是局部變量,每進(jìn)入一次中斷都會(huì)被重新賦值為0,所以它們永遠(yuǎn)不會(huì)達(dá)到你設(shè)置的改變條件。
回復(fù)

使用道具 舉報(bào)

ID:213173 發(fā)表于 2020-6-11 16:39 | 顯示全部樓層
樓主局部變量int x=0,y=0;,也就是每次進(jìn)入中斷都清0,永遠(yuǎn)也加不到想要的數(shù)。只有把x、y設(shè)為全局變量或局部靜態(tài)變量才能達(dá)到樓主想要的效果。
void timer () interrupt 1
{
        static unsigned char x=0,y=0;
        TH0=0x3C; //計(jì)數(shù)初值重裝載
        TL0=0xB0;
        if(led2==0)
        {              
                x++;
                if(x==40)
                {
                        led2=1;
                        x=0;
                }
        }
        if(led2==1)
        {
                y++;
                if(y==200)
                {
                        led2=0;
                        y=0;
                }
        }
}
回復(fù)

使用道具 舉報(bào)

ID:24758 發(fā)表于 2020-6-11 16:50 | 顯示全部樓層
另外y的值設(shè)的有點(diǎn)大,時(shí)間長得讓人懷疑是不是有問題
回復(fù)

使用道具 舉報(bào)

ID:673128 發(fā)表于 2020-6-11 18:06 | 顯示全部樓層
把在定時(shí)器0的中斷服務(wù)函數(shù)里的int前面加上static就行了。你的錯(cuò)誤出現(xiàn)在每一次定時(shí)器中斷進(jìn)入你都會(huì)重置x,y值,導(dǎo)致其每次都是0開始,1結(jié)束。對于其為什么會(huì)亮,是因?yàn)槟汶娐穲D有問題的,沒有上拉或下拉電阻,你的端口值是不確定的,似乎是低電平,導(dǎo)致通電就亮。建議買塊板子,不要用仿真,新手用實(shí)物,等你本事到了再用仿真。
回復(fù)

使用道具 舉報(bào)

ID:776029 發(fā)表于 2020-6-11 19:49 | 顯示全部樓層
左眼 發(fā)表于 2020-6-11 18:06
把在定時(shí)器0的中斷服務(wù)函數(shù)里的int前面加上static就行了。你的錯(cuò)誤出現(xiàn)在每一次定時(shí)器中斷進(jìn)入你都會(huì)重置x ...

懂了多謝
回復(fù)

使用道具 舉報(bào)

ID:776029 發(fā)表于 2020-6-11 19:57 | 顯示全部樓層
wulin 發(fā)表于 2020-6-11 16:39
樓主局部變量int x=0,y=0;,也就是每次進(jìn)入中斷都清0,永遠(yuǎn)也加不到想要的數(shù)。只有把x、y設(shè)為全局變量或局 ...

好的多謝
回復(fù)

使用道具 舉報(bào)

ID:436885 發(fā)表于 2020-6-12 01:31 | 顯示全部樓層
int x=0,y=0; 放到外面去做全局變量
回復(fù)

使用道具 舉報(bào)

ID:733205 發(fā)表于 2020-7-21 15:38 | 顯示全部樓層
你這個(gè)用定時(shí)器觸發(fā)中斷,但是定時(shí)完一次之后你這個(gè)定時(shí)器需要重新啟動(dòng),才能再次開始定時(shí),然后進(jìn)入中斷才會(huì)反轉(zhuǎn)
回復(fù)

使用道具 舉報(bào)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产高清精品一区二区三区 | 精品一二区| 精品欧美一区免费观看α√ | 91视视频在线观看入口直接观看 | 亚洲精品2区 | 欧美日韩视频 | 羞羞的视频在线看 | 成人在线播放 | 亚洲精品久久久9婷婷中文字幕 | 久久精品国产一区二区电影 | 久久久久久久久一区 | 羞视频在线观看 | 日韩第一夜 | 精品成人一区二区 | 国产伦精品一区二区三区精品视频 | av免费网站在线 | 欧美一区二区三区在线观看 | 91麻豆精品国产91久久久资源速度 | 亚洲精品久久久久久久久久久 | 亚洲人成人一区二区在线观看 | hsck成人网 | 国产精品日本一区二区在线播放 | 亚洲人成一区二区三区性色 | 成人高清在线视频 | 国产精品一区二区三区在线播放 | 欧美日韩国产精品激情在线播放 | 国产成人精品一区 | 爱高潮www亚洲精品 中文字幕免费视频 | 欧美日韩免费在线 | 亚洲精品成人av久久 | 国产精品中文字幕在线 | 久草成人网 | 黄色在线| 高清一区二区三区 | 在线观看亚洲专区 | 伊人青青久久 | 久久成人人人人精品欧 | 91精品国产一区二区三区蜜臀 | 欧美一区二区小视频 | 91精品国产综合久久婷婷香蕉 | 国产精品久久久久一区二区三区 |