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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索

關于MCU信號上升沿和下降沿都可以觸發(fā)繼電器工作的問題

查看數: 3937 | 評論數: 3 | 收藏 0
關燈 | 提示:支持鍵盤翻頁<-左 右->
    組圖打開中,請稍候......
發(fā)布時間: 2019-1-24 12:14

正文摘要:

想做一個轉換器,就是信號上升沿和下降沿都可以觸發(fā)的情況,假如開關控制給STC15F104w單片機的3腳上升沿觸發(fā)信號,然后STC15F104w mcu的8腳輸出一個高電平持續(xù)1S,就變低電平。隨后STC15F104w的1腳檢測電位是高電平 ...

回復

ID:213173 發(fā)表于 2019-1-25 13:20
xbox007 發(fā)表于 2019-1-25 08:41
如果上面方法不行,那么改成這個應該可以實現吧,就是信號上升沿和下降沿都可以觸發(fā)的情況,假如開關控制 ...

給你寫個程序,未經驗證,你試試。
#include <STC15F2K60S2.H>
//#include "reg51.h"
#include "intrins.h"
//-----------------------------------------------

sbit INT0= P3^2;//中斷入口
sbit OUT = P3^3;//輸出端口
sbit IN  = P3^4;//控制端口

void Init()                        //50毫秒@11.0592MHz
{
        AUXR &= 0x7F;        //定時器時鐘12T模式
        TMOD &= 0xF0;        //設置定時器16位自動重載模式
        TL0 = 0x00;                //設置定時初值
        TH0 = 0x4C;                //設置定時初值
        TF0 = 0;                        //清除TF0標志
//        TR0 = 1;                        //定時器0開始計時
//        EX0 = 1;                   //使能INT0中斷
        EA = 1;                        //使能總中斷
        INT0 = 1;                //初始化中斷入口
        OUT = 0;                        //初始化輸出
        P3M0 = 0x10;        //P3.4推挽輸出
        P3M1 = 0x00;        //P3.4推挽輸出
}

void main()
{
        unsigned char count=0;//計數變量
        Init();
        while (1)
        {
                if(IN & INT0==1)
                {
                        IT0 = 1;                        //設置INT0的中斷類型下降沿觸發(fā)
                        EX0 = 1;                        //使能INT0中斷
                }
                else if(IN | INT0==0)
                {
                        IT0 = 0;                        //設置INT0的中斷類型上升沿觸發(fā)
                        EX0 = 1;                        //使能INT0中斷
                }
                else EX0 = 0;                //關閉INT0中斷
        }
        if(TF0==1)
        {
                TF0=0;
                count++;
                if(count==20)                //1秒
                {
                        count=0;
                        TR0 = 0;                //定時器0停止計時
                        OUT = 0;                //停止計時輸出
                }
        }
}
//外部中斷0服務程序
void exint0() interrupt 0 //INT0中斷入口
{
        TR0 = 1;                //定時器0開始計時
        OUT = 1;                //驅動輸出(高電平)
}

ID:221879 發(fā)表于 2019-1-25 08:41
wulin 發(fā)表于 2019-1-24 20:35
STC15F104W的外部中斷0(INT0)和外部中斷1(INT1)觸發(fā)有兩種觸發(fā)方式,外部中斷2(INT2)和外部中斷3(INT3)只能 ...

如果上面方法不行,那么改成這個應該可以實現吧,就是信號上升沿和下降沿都可以觸發(fā)的情況,假如開關控制給STC15F104w單片機的7腳上升沿觸發(fā)信號,然后STC15F104w mcu的8腳輸出一個高電平持續(xù)1S,就變低電平。隨后STC15F104w的1腳檢測電位是高電平還是低電平,如果是高電平則3腳為下降沿觸發(fā),開關控制給STC15F104w的3腳下降沿觸發(fā)信號,然后STC15F104w的8腳輸出一個高電平持續(xù)1S,就變低電平。1腳高電平下降沿觸發(fā),1腳低電平上升沿觸發(fā),代碼該怎樣寫哪位朋友可以幫個忙謝謝了!
ID:213173 發(fā)表于 2019-1-24 20:35
STC15F104W的外部中斷0(INT0)和外部中斷1(INT1)觸發(fā)有兩種觸發(fā)方式,外部中斷2(INT2)和外部中斷3(INT3)只能下降沿觸發(fā)。STC15F104W的3腳是INT3,所以樓主的要求做不到。

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 毛片网站在线观看视频 | 国产免费观看视频 | 日韩视频在线播放 | 99re在线视频| 国产一级电影网 | 欧美在线观看一区二区 | 亚洲一区 中文字幕 | 亚洲黄色一区二区三区 | 天堂一区二区三区 | 欧美日本免费 | 夜夜草天天草 | 一级片免费视频 | 日本精品一区二区三区在线观看视频 | 成人在线小视频 | 国产精品久久久久久久久久久久久 | 激情五月婷婷丁香 | 久久久精 | 午夜视频免费在线观看 | av片免费 | 国产传媒视频在线观看 | 中文字幕国产高清 | 欧美日韩在线不卡 | 天天插天天狠天天透 | 亚洲精品国产一区 | 91视频在线观看免费 | 久久免费高清 | av网站免费在线观看 | 91精品国产91久久久久久吃药 | 久久伊人精品 | 国产高清免费视频 | 国产9 9在线 | 中文 | 凹凸日日摸日日碰夜夜 | 成人区精品 | 色一级 | www.色五月.com | 特一级黄色毛片 | 黄色一级大片在线免费看产 | 国产精品免费在线 | 亚洲人在线观看视频 | 久久伊人青青草 | 爱草在线|