chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于51單片機(jī)的智能臺(tái)燈設(shè)計(jì)

精通單片機(jī)與嵌入式 ? 來源:精通單片機(jī)與嵌入式 ? 2023-08-29 09:32 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

一、設(shè)計(jì)目的

使用單片機(jī)設(shè)計(jì)智能臺(tái)燈對(duì)于提高學(xué)生的單片機(jī)應(yīng)用能力具有較強(qiáng)的意義。通過該設(shè)計(jì),可以鞏固所學(xué)的單片機(jī)理論知識(shí),培養(yǎng)學(xué)生硬件和軟件的設(shè)計(jì)能力,從而促進(jìn)學(xué)生所掌握的理論知識(shí)向?qū)嵺`應(yīng)用的改變。

二、設(shè)計(jì)要求

(1)熟悉51單片機(jī)集成開發(fā)環(huán)境,運(yùn)用C語言編寫工程文件; (2)熟練應(yīng)用所選用單片機(jī)的內(nèi)部結(jié)構(gòu)、資源,以及軟硬件調(diào)試設(shè)備的基本方法; (3)自行構(gòu)建基于單片機(jī)的最小系統(tǒng),完成相關(guān)硬件電路的設(shè)計(jì)實(shí)現(xiàn); (4)掌握智能臺(tái)燈的原理和實(shí)現(xiàn)方法。

三、設(shè)計(jì)內(nèi)容

(1) 可以通過按鍵切換控制模式,有自動(dòng)模式和手動(dòng)模式可選;

(2) 自動(dòng)模式下,可根據(jù)空間環(huán)境的光線強(qiáng)度大小,調(diào)節(jié)臺(tái)燈的亮度。并且

1分鐘檢測(cè)不到有人,直接熄滅臺(tái)燈,達(dá)到節(jié)能的效果;

(3) 手動(dòng)模式下,可通過按鍵增加或減少亮度;

開題報(bào)告

b876f676-45fb-11ee-a2ef-92fbcf53809c.png

方案設(shè)計(jì)

整個(gè)系統(tǒng)以STC89C52單片機(jī)為核心器件,配合電阻電容晶振等器件,構(gòu)成單片機(jī)的最小系統(tǒng)。其它個(gè)模塊圍繞著單片機(jī)最小系統(tǒng)展開。其中包括,照明設(shè)備采用USB小燈進(jìn)行模擬,使得設(shè)計(jì)在外形上更加美觀,在USB小燈內(nèi)部,是6顆白色的LED燈;光照強(qiáng)度采集模塊,是使用光敏電阻+ADC0832方案;人體感應(yīng)采用紅外熱釋傳感器,該傳感器靈敏度高,操作控制簡單;指示燈模塊由一顆綠色的小燈構(gòu)成,指示燈亮?xí)r是自動(dòng)模式,熄滅時(shí)是手動(dòng)模式;按鍵模塊由3個(gè)按鍵組成,包括模式切換按鍵、亮度減少按鍵和亮度增加按鍵;

b8bfc66c-45fb-11ee-a2ef-92fbcf53809c.png

設(shè)計(jì)功能

1、上電之后,綠色的 LED 燈點(diǎn)亮,代表當(dāng)前是自動(dòng)控制模式。

2、通過按鍵 1,可以在手動(dòng)模式(綠燈滅)和自動(dòng)模式(綠燈亮)之間來回切換。

3、在手動(dòng)模式下,可以通過按鍵 2 降低亮度,按鍵 3 增加亮度。

4、在自動(dòng)模式下,首先要檢測(cè)到有人,才進(jìn)行亮度的自動(dòng)控制,否則臺(tái)燈熄滅??梢該踝」饷綦娮璧墓饩€,或用手電筒來照射光敏電阻,模擬光照的變化,從而就可以 看到臺(tái)燈的亮度會(huì)隨著環(huán)境中的光照強(qiáng)度的改變而改變,效果是光照越弱,臺(tái)燈越亮。如果人體傳感器 1 分鐘檢測(cè)不到有人,臺(tái)燈就會(huì)自動(dòng)熄滅。

5、無論是自動(dòng)模式還是手動(dòng)模式,都是把亮度分為 10 個(gè)等級(jí)的。

6、注意,人體感應(yīng)檢測(cè)功能只在自動(dòng)模式下有效。

原理圖設(shè)計(jì)


b9f9d0f4-45fb-11ee-a2ef-92fbcf53809c.png

PCB設(shè)計(jì)


ba5391d4-45fb-11ee-a2ef-92fbcf53809c.pngb820cfda-45fb-11ee-a2ef-92fbcf53809c.gif

源代碼


#include 
#include 


#define uchar unsigned char    // 以后unsigned char就可以用uchar代替
#define uint  unsigned int    // 以后unsigned int 就可以用uint 代替




sbit LED     = P1^0;          // 模式指示燈,亮是自動(dòng)模式,滅是手動(dòng)模式
sbit Lamp    = P1^4;           // 臺(tái)燈控制引腳
sbit Key1    = P1^1;          // 按鍵1,模式切換按鍵
sbit Key2    = P1^2;           // 按鍵2,亮度減少按鍵      
sbit Key3    = P1^3;          // 按鍵3,亮度增加按鍵
sbit ADC_CS  = P2^3;           // ADC0832的CS引腳
sbit ADC_CLK = P2^0;           // ADC0832的CLK引腳
sbit ADC_DAT = P2^1;           // ADC0832的DI/DO引腳
sbit Module  = P2^2;          // 人體紅外檢測(cè)模塊




uchar gCount=0;                // 全局計(jì)數(shù)變量
uchar gIndex;                  // 亮度變量,0是最暗,9是最亮,一共10檔
uint  gTime=0;                // 計(jì)時(shí)變量,用于計(jì)時(shí)多久沒檢測(cè)到有人






/*********************************************************/
// 毫秒級(jí)的延時(shí)函數(shù),time是要延時(shí)的毫秒數(shù)
/*********************************************************/
void DelayMs(uint time)
{
  uint i,j;
  for(i=0;i>= 1;
    if(ADC_DAT)
      dat2=dat2|0x80;
    else
      dat2=dat2|0x00;
    WavePlus();
  }


  _nop_();            // 結(jié)束此次傳輸
  ADC_DAT = 1;
  ADC_CLK = 1;
  ADC_CS  = 1;   


  if(dat1==dat2)      // 返回采集結(jié)果
    return dat1;
  else
    return 0;
} 






/*********************************************************/
// 定時(shí)器初始化
/*********************************************************/
void TimerInit()
{
  TMOD = 0x01;        // 使用定時(shí)器0,工作方式1   
  TH0  = 252;          // 給定時(shí)器0的TH0裝初值
  TL0  = 24;          // 給定時(shí)器0的TL0裝初值  
  ET0  = 1;            // 定時(shí)器0中斷使能
  EA   = 1;            // 打開總中斷
  TR0   = 1;            // 啟動(dòng)定時(shí)器0
}






/*********************************************************/
// 手動(dòng)控制
/*********************************************************/
void ManualControl()
{
  // 亮度減少
  if(Key2==0)          // 如果按鍵2被按下去
  {
    if(gIndex>0)      // 只要當(dāng)前亮度不為最低才能減少亮度
    {
      gIndex--;        // 亮度降低一檔
      DelayMs(300);    // 延時(shí)0.3秒
    }
  }


  // 亮度增加
  if(Key3==0)          // 如果按鍵3被按下去
  {
    if(gIndex<9)      // 只要當(dāng)前亮度不為最高才能增加亮度
    {
      gIndex++;        // 亮度增加一檔
      DelayMs(300);    // 延時(shí)0.3秒
    }
  }
}






/*********************************************************/
// 自動(dòng)控制
/*********************************************************/
void AutoControl(uchar num)
{
  if(num<59)                            // 最亮
    gIndex=9;
  else if((num>65)&&(num<81))            // 第二亮
    gIndex=8;
  else if((num>87)&&(num<103))          // 第三亮
    gIndex=7;
  else if((num>109)&&(num<125))
    gIndex=6;
  else if((num>131)&&(num<147))
    gIndex=5;
  else if((num>153)&&(num<169))
    gIndex=4;
  else if((num>175)&&(num<191))
    gIndex=3;
  else if((num>197)&&(num<213))
    gIndex=2;
  else if((num>219)&&(num<235))
    gIndex=1;
  else if(num>241)                     // 最暗
    gIndex=0;
}






/*********************************************************/
// 主函數(shù)
/*********************************************************/
void main()
{
  uchar ret;


  TimerInit();           // 定時(shí)器初始化


  LED=0;                // 指示燈點(diǎn)亮(自動(dòng)模式指示燈)
  ret=Get_ADC0832();    // 獲取AD采集結(jié)果(環(huán)境光照強(qiáng)度)
  AutoControl(ret);      // 上電先進(jìn)行一次自動(dòng)亮度控制  
  AutoControl(ret+7);


  while(1)
  {
    /* 模式切換控制 */
    if(Key1==0)          // 如果按鍵1被按下去
    {
      LED=~LED;          // 切換LED燈狀態(tài)
      DelayMs(10);      // 延時(shí)消除按鍵按下的抖動(dòng)
      while(!Key1);      // 等待按鍵釋放
      DelayMs(10);      // 延時(shí)消除按鍵松開的抖動(dòng)
    }


    /* 亮度控制 */
    if(LED==1)              // 如果LED是滅的
    {
      ManualControl();      // 則進(jìn)行手動(dòng)控制
    }
    else                    // 如果LED是亮的
    {
      if(gTime<60000)
      {
        ret=Get_ADC0832();    // 獲取AD采集結(jié)果(環(huán)境光照強(qiáng)度)
        AutoControl(ret);      // 進(jìn)行自動(dòng)控制  
        DelayMs(200);
      }
    }


    /*檢測(cè)是否有人*/
    if(Module==1)
    {
      gTime=0;                    // 檢測(cè)到有人,則把60秒計(jì)時(shí)清零
    }
    if(gTime>60000)                // 如果gTime的值超過了60000
    {
      gTime=60000;                // 則把gTime的值重新賦值為60000,避免過大溢出
      gIndex=0;                    // 如果1分鐘檢測(cè)不到有人,則把臺(tái)燈熄滅
    }
  }
}




/*********************************************************/
// 定時(shí)器0服務(wù)程序,1毫秒
/*********************************************************/
void Timer0(void) interrupt 1
{
  TH0  = 252;            // 給定時(shí)器0的TH0裝初值
  TL0  = 24;            // 給定時(shí)器0的TL0裝初值  


  gTime++;              // 每1毫秒,gTime變量加1
  gCount++;              // 每1毫秒,gCount變量加1


  if(gCount==10)        // 如果gCount加到10了
  {
    gCount=0;            // 則將gCount清零,進(jìn)入新一輪的計(jì)數(shù)
    if(gIndex!=0)        // 如果說臺(tái)燈不是最暗的(熄滅)
    {
      Lamp=0;            // 則把臺(tái)燈點(diǎn)亮
    }
  }
  if(gCount==gIndex)    // 如果gCount計(jì)數(shù)到和gIndex一樣了
  {
    if(gIndex!=9)        // 如果說臺(tái)燈不是最亮的
    {
      Lamp=1;            // 則把臺(tái)燈熄滅
    }
  }
}

審核編輯:湯梓紅
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 單片機(jī)
    +關(guān)注

    關(guān)注

    6067

    文章

    44992

    瀏覽量

    650563
  • 51單片機(jī)
    +關(guān)注

    關(guān)注

    277

    文章

    5711

    瀏覽量

    127403
  • C語言
    +關(guān)注

    關(guān)注

    180

    文章

    7632

    瀏覽量

    141784
  • 智能臺(tái)燈
    +關(guān)注

    關(guān)注

    9

    文章

    88

    瀏覽量

    21611

原文標(biāo)題:【畢業(yè)設(shè)計(jì)】基于51單片機(jī)的智能臺(tái)燈設(shè)計(jì)(任務(wù)書、原理圖、PCB、源代碼、參考論wen)

文章出處:【微信號(hào):精通單片機(jī)與嵌入式,微信公眾號(hào):精通單片機(jī)與嵌入式】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    基于51單片機(jī)智能臺(tái)燈演示

    單片機(jī)臺(tái)燈51單片機(jī)智能臺(tái)燈
    jf_06209345
    發(fā)布于 :2022年07月23日 00:26:54

    哪位大神會(huì)仿真基于51單片機(jī)智能臺(tái)燈啊?????

    ????????????????????????????????????????
    發(fā)表于 03-22 22:20

    基于51單片機(jī)智能臺(tái)燈

    請(qǐng)問下有人用過熱釋電紅外傳感芯片biss0001嗎?我這樣連接一個(gè)光敏電阻有沒有問題?
    發(fā)表于 03-18 16:35

    一種基于51單片機(jī)智能臺(tái)燈設(shè)計(jì)

    系統(tǒng)由STC89C52單片機(jī)+L數(shù)碼管+光敏電阻+人體感應(yīng)模塊+紅外接近傳感器模塊構(gòu)成。具體功能:(1)亮度不夠且有人靠近時(shí)臺(tái)燈自動(dòng)亮;(2)靠的太近會(huì)提醒坐姿不正(蜂鳴器);(3)附近無人時(shí)臺(tái)燈
    發(fā)表于 07-01 06:05

    如何實(shí)現(xiàn)基于51單片機(jī)智能臺(tái)燈的設(shè)計(jì)?

    如何實(shí)現(xiàn)基于51單片機(jī)智能臺(tái)燈的設(shè)計(jì)?
    發(fā)表于 10-21 08:19

    如何去實(shí)現(xiàn)一種基于51單片機(jī)智能臺(tái)燈設(shè)計(jì)

    一.硬件方案本文介紹了一種基于PWM調(diào)光的智能臺(tái)燈設(shè)計(jì)。把單片機(jī)技術(shù)和PWM調(diào)光技術(shù)結(jié)合起來實(shí)現(xiàn)臺(tái)燈光強(qiáng)的調(diào)節(jié)。即在不改變PWM方波周期的前提下,利用
    發(fā)表于 11-18 08:24

    基于51單片機(jī)的藍(lán)牙智能臺(tái)燈設(shè)計(jì)

    基于51單片機(jī)的藍(lán)牙智能臺(tái)燈目錄 基于51單片機(jī)的藍(lán)牙智能
    發(fā)表于 12-01 07:36

    基于51單片機(jī)智能臺(tái)燈

    電子發(fā)燒友網(wǎng)站提供《基于51單片機(jī)智能臺(tái)燈.zip》資料免費(fèi)下載
    發(fā)表于 05-26 08:00 ?195次下載

    基于51單片機(jī)智能臺(tái)燈設(shè)計(jì)

    一.硬件方案本文介紹了一種基于PWM調(diào)光的智能臺(tái)燈設(shè)計(jì)。把單片機(jī)技術(shù)和PWM調(diào)光技術(shù)結(jié)合起來實(shí)現(xiàn)臺(tái)燈光強(qiáng)的調(diào)節(jié)。即在不改變PWM方波周期的前提下,利用
    發(fā)表于 11-12 10:51 ?46次下載
    基于<b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b>的<b class='flag-5'>智能</b><b class='flag-5'>臺(tái)燈</b>設(shè)計(jì)

    50-基于51單片機(jī)智能臺(tái)燈設(shè)計(jì)

    系統(tǒng)由STC89C52單片機(jī)+L數(shù)碼管+光敏電阻+人體感應(yīng)模塊+紅外接近傳感器模塊構(gòu)成。具體功能:(1)亮度不夠且有人靠近時(shí)臺(tái)燈自動(dòng)亮;(2)靠的太近會(huì)提醒坐姿不正(蜂鳴器);(3)附近無人時(shí)臺(tái)燈
    發(fā)表于 11-13 10:36 ?20次下載
    50-基于<b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b>的<b class='flag-5'>智能</b><b class='flag-5'>臺(tái)燈</b>設(shè)計(jì)

    基于AT89C51單片機(jī)智能臺(tái)燈設(shè)計(jì)

    系統(tǒng)內(nèi)使用AT89C51單片機(jī)作為主控,系統(tǒng)內(nèi)分為普通模式和調(diào)節(jié)模式,上電之后就是普通模式,小燈會(huì)亮但是不能進(jìn)行亮度調(diào)節(jié),按下設(shè)置按鍵后亮度可調(diào)節(jié)的小燈亮,通過加減按鍵就能直接控制小燈的亮度。
    發(fā)表于 09-27 15:55 ?2868次閱讀

    基于51單片機(jī)的藍(lán)牙臺(tái)燈設(shè)計(jì)

    基于51單片機(jī)的藍(lán)牙臺(tái)燈設(shè)計(jì)
    的頭像 發(fā)表于 08-01 01:08 ?1590次閱讀
    基于<b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b>的藍(lán)牙<b class='flag-5'>臺(tái)燈</b>設(shè)計(jì)

    基于51單片機(jī)智能臺(tái)燈帶坐姿矯正覆銅板設(shè)計(jì)技術(shù)手冊(cè)

    基于51單片機(jī)智能臺(tái)燈帶坐姿矯正覆銅板設(shè)計(jì)技術(shù)手冊(cè)
    發(fā)表于 09-18 10:52 ?4次下載

    基于51單片機(jī)智能臺(tái)燈洞洞板設(shè)計(jì)技術(shù)手冊(cè)

    基于51單片機(jī)智能臺(tái)燈洞洞板設(shè)計(jì)技術(shù)手冊(cè)
    發(fā)表于 09-18 11:06 ?31次下載

    基于51單片機(jī)智能臺(tái)燈覆銅板設(shè)計(jì)技術(shù)手冊(cè)

    基于51單片機(jī)智能臺(tái)燈覆銅板設(shè)計(jì)技術(shù)手冊(cè)
    發(fā)表于 09-18 10:49 ?15次下載