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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4975|回復: 17
收起左側

為什么用低電平驅動燈泡不亮啊

  [復制鏈接]
ID:202637 發表于 2017-7-1 11:32 | 顯示全部樓層 |閱讀模式
當溫度低于30度時,單片機控制P2.3輸出低電平,可是燈泡不亮,是程序問題還是原理圖呀
主程序如下:#include<reg52.h>
#include "LCD.h"
#include "DS18B20.h"
#include "DS1302.h"
sbit  outv=P2^0;           //電機轉動時PWM輸出口;
sbit  ctr =P2^3;           //控制加熱設備輸出
uchar  flag2=1;
uchar  tflag=1;
uchar  timeflag=0;
uchar  per=10;             //PWM低電平所占時間
void  initall();
void  chesu();
void  initT0();
void  DispTemp(uint tem);
void  DispTime();
void  DispSP();
/*****************主函數**********************/
void  main()
{   
    initall();
    while(1)
    {   
        DispTemp(gettemp());
        DispTime();
        if(timeflag)
           DispSP();   
    }
}
/******************溫度顯示函數*******************/
void  DispTemp(uint tem)        
{
    if(tflag)               //第一次調用溫度顯示函數
    {
        tflag=0;
        write_string(0,10,"Tem:");
    }
    if(tem<300)            //隨著溫度的改變,PWM的占空比發生變化,同時加熱設備也發生變化
    {   
        per=10;
        ctr=0;
    }
    else
    {
        ctr=1;
        if(tem>=300&&tem<=330)
            per=5;
        else
            per=0;
    }
    write_com(0x80+14);
    write_data(tem/100+48);
    write_data(tem%100/10+48);
    write_data('.');
    write_data(tem%10+48);                        
    write_data(0);          //顯示攝氏度
}
/***************DS1302時間顯示函數*********************/
void  DispTime()                     
{
    uchar  j;   
    gettime();  
    write_com(0x80);
    for(j=0;j<8;j++)
        write_data(buf[j]);
}
/*******************初始化****************************/
void  initall()
{
    initLCD();
    if((read(0x83)==0x00)&(read(0x81)==0x80)) //判斷1302的秒的第8位是否為1,即是否處于低功耗狀態(振蕩器停止)
    {
       write(0x8E,0x00);//取消寫保護
       write(0x80,0x00);
       write(0x8E,0x80);//寫保護
    }
    initT0();
    outv=0;
    write_string(1,0,"Speed: 000r/min");
}
/**********************中斷初始化**********************/
void  initT0()
{
    TMOD=0x51;
    TH0=(65536-50000)/256;
    TL0=(65536-50000)%256;
    TH1=0;
    TL1=0;
    EA=1;   
    ET0=1;
    TR0=1;TR1=1;           
}
/*****************中斷函數*********************/
void  T0_time()   interrupt 1
{
    uchar times;
    times++;   
    if(times%20>per)
        outv=1;
    else
        outv=0;
    TH0=(65536-50000)/256;
    TL0=(65536-50000)%256;
    if(times==200)
    {
        times=0;
        timeflag=1;     
    }   
}
/*******************電機轉速顯示函數*********************************/
void   DispSP()
{
    uint  count=0;
    timeflag=0;
    write_com(0xc0+7);
    count=TH1*256+TL1;  
    write_data(count*6/100+48);
    write_data(count*6%100/10+48);
    write_data(count*6%10+48);
    TH1=0;
    TL1=0;  
}
1.png
回復

使用道具 舉報

ID:202637 發表于 2017-7-1 11:37 | 顯示全部樓層
求大神指點
回復

使用道具 舉報

ID:179958 發表于 2017-7-1 13:08 | 顯示全部樓層
先不管其它功能,寫個程序驗證一下這電路有沒有問題,就只讓P23為低電平,看看亮不亮先。
另外,我感覺proteus里的三極管也是有點問題
回復

使用道具 舉報

ID:82765 發表于 2017-7-1 13:45 | 顯示全部樓層
提示: 作者被禁止或刪除 內容自動屏蔽
回復

使用道具 舉報

ID:216359 發表于 2017-7-1 16:47 | 顯示全部樓層
先看看你的電源是不是夠驅動繼電器,方法為在PNP的C腳接一個電流表,看一下是否有毫安的電流流過
這樣你就可以判斷是不是在低電平時電流輸出來,
回復

使用道具 舉報

ID:216359 發表于 2017-7-1 17:01 | 顯示全部樓層
加一個12V的VCC1接到PNP的E-------你會加的,給P2.3一個低電平,   在繼電器的線圈端加一個小燈泡,仿真在PROTEUS 里做,單獨的做一個程序,就上述幾句
回復

使用道具 舉報

ID:202637 發表于 2017-7-1 17:03 | 顯示全部樓層
cjjcjj1 發表于 2017-7-1 13:45
你好!程序不全,仿真截圖沒法測試,直接把程序和仿真打包發一下吧
加我QQ 1413753805

已加qq
回復

使用道具 舉報

ID:202637 發表于 2017-7-1 17:03 | 顯示全部樓層
呂強軍 發表于 2017-7-1 14:01
你把你的程序和仿真圖以文件的形式發給我,加我QQ 2211818451

已經加了qq
回復

使用道具 舉報

ID:202637 發表于 2017-7-1 19:57 | 顯示全部樓層
aiohu 發表于 2017-7-1 17:01
加一個12V的VCC1接到PNP的E-------你會加的,給P2.3一個低電平,   在繼電器的線圈端加一個小燈泡,仿真在PR ...

已經解決謝謝
回復

使用道具 舉報

ID:202637 發表于 2017-7-1 19:58 | 顯示全部樓層
aiohu 發表于 2017-7-1 17:01
加一個12V的VCC1接到PNP的E-------你會加的,給P2.3一個低電平,   在繼電器的線圈端加一個小燈泡,仿真在PR ...

已解決,謝謝
回復

使用道具 舉報

ID:111634 發表于 2017-7-1 20:55 | 顯示全部樓層
加一個12V的VCC1接到PNP的E,結果是無論輸出高低電平,小燈泡都會亮!
回復

使用道具 舉報

ID:159139 發表于 2017-7-2 16:26 來自手機 | 顯示全部樓層
你把三極管B級電阻改為200R,保證燈的工作電壓設置為5v燈就亮了。
回復

使用道具 舉報

ID:216683 發表于 2017-7-3 09:13 | 顯示全部樓層
一般去推繼電器我喜歡用NPN的管子,PNP老是怕不飽合
回復

使用道具 舉報

ID:216740 發表于 2017-7-3 11:14 | 顯示全部樓層
用萬用表測量一下,看到底是不是低電平。看看燈泡兩端有沒有電壓。
回復

使用道具 舉報

ID:216988 發表于 2017-7-4 09:47 | 顯示全部樓層
先不管其它功能,寫個程序驗證一下這電路有沒有問題,就只讓P23為低電平,看看先。 另外,我感覺proteus里的三極管也是有點問題
回復

使用道具 舉報

ID:7485 發表于 2017-7-4 21:01 | 顯示全部樓層
繼電器吸合不吸合?
回復

使用道具 舉報

ID:217428 發表于 2017-7-5 17:30 | 顯示全部樓層
來個上拉電阻
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产丝袜一区二区三区免费视频 | 久久99精品久久久久久 | www.久久久久久久久久久久 | 欧美日韩亚洲一区二区 | www.天堂av.com| 亚洲成人免费电影 | 国际精品鲁一鲁一区二区小说 | 久久久精品网站 | 91五月天 | 亚洲精品久久久久中文字幕欢迎你 | 久久久久国产成人精品亚洲午夜 | 一区二区三区四区在线 | 久久伊人精品 | 亚洲国产一区二区三区 | 欧美三级在线 | 99热激情| 蜜桃在线一区二区三区 | 手机av在线| 日韩欧美一级精品久久 | 成人免费网站www网站高清 | 五月天婷婷综合 | 罗宾被扒开腿做同人网站 | 国产99久久精品一区二区300 | 国产视频精品在线观看 | 国产精品欧美日韩 | 日本三级电影在线看 | 天堂一区在线观看 | 免费视频一区二区 | 91在线网站 | 国产91网站在线观看 | 一区二区国产精品 | 精品国产亚洲一区二区三区大结局 | 91动漫在线观看 | 国产精品不卡一区 | 欧美在线一区二区三区 | 欧美成人h版在线观看 | 欧美视频中文字幕 | 色接久久| 97av视频在线观看 | 亚洲视频免费 | 一级黄a视频 |