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

電子發(fā)燒友App

硬聲App

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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示
創(chuàng)作
電子發(fā)燒友網>電子資料下載>電子資料>使用MCP3008模數轉換器將Pi2連接到三個模擬組件

使用MCP3008模數轉換器將Pi2連接到三個模擬組件

2022-12-23 | zip | 0.07 MB | 次下載 | 免費

資料介紹

描述

在這個項目中,我們將在 Raspberry Pi 2 組件上使用適用于 Windows 10 IoT Core 的 Adafruit Starter Pack來制作說話光傳感器。這將展示如何使用 MCP3008 模數轉換器 (ADC) 芯片將 Pi2 連接到三個模擬組件。兩個可變電阻器電位器)和一個 CdS 光電管。

硬件設置

按照下面的 Fritzing 圖將 Raspberry Pi2 連接到面包板和其他組件。 ?

注意:設置電路時,請確保 MCP3008 芯片的方向正確。該芯片有一個半月形標記,一側有一個點。其方向應如下圖所示。

選修的

如果您有一對帶 1/8" 插孔的耳機或一組帶 1/8" 插孔的有源揚聲器,您可以將它們連接到 Pi2 音頻輸出插孔以聽到語音系統(tǒng)的提示。

代碼

主頁.cs

您可以從https://github.com/ms-iot/adafruitsample下載代碼啟動項目??,我們將引導您完成添加與 Web 服務對話并在地圖上獲取您的 pin 所需的代碼。什么地圖?

打開“Lesson_204\StartSolution\Lesson_204.sln ?并打開 mainpage.xaml.cs 文件。?

我們已經填寫了一些方法作為您在此解決方案中的起點。如果你想跳到前面,你可以在以下位置找到所有代碼已完成的解決方案:“Lesson_204\FullSolution\Lesson_204.sln”

?

在 MainPage 類的頂部添加以下行。

 
          ReferenceVoltage =  ;

        
          LowPotentiometerADCChannel =  ;
          HighPotentiometerADCChannel =  ;
         CDSADCChannel =  ;

        
          JustRightLightString =  ;
          LowLightString =  ;
          HighLightString =  ;

        
         eState { unknown, JustRight, TooBright, TooDark};
        eState CurrentState = eState.unknown;

        
        MCP3008 mcp3008 =  MCP3008(ReferenceVoltage);

        
         SpeechSynthesizer 合成器;

        
        定時器定時器;

?

現在將這些行添加到 MainPage 構造函數以設置 Windows 語音合成器和 ADC 芯片。

// 創(chuàng)建一個的SpeechSynthesizer供以后使用。
 合成器=語音合成器();

 // 初始化ADC芯片以供使用
 mcp3008.初始化();

?

現在將這些行添加到 OnNavigatedTo 方法。這將設置一個計時器回調,它將在不同的線程上每秒調用一次我們的代碼。

如果您不想在地圖上添加圖釘,請刪除MakePinWebAPICall();??

 override void OnNavigatedTo(NavigationEventArgs navArgs)
        {
            Debug.WriteLine(  );

            MakePinWebAPICall();
            // 我們將每秒
            timer =  Timer(timerCallback, this, 0, 1000);
        }

?

現在我們調用了計時器回調,讓我們填寫它。

 異步 timerCallback(對象狀態(tài))
        {
            調試。 (  );
            (mcp3008 == )
            {
                調試。 (  );
                ;
            }

            
            eState newState = eState.JustRight;

            
             lowPotReadVal = mcp3008.ReadADC(LowPotentiometerADCChannel);
             highPotReadVal = mcp3008.ReadADC(HighPotentiometerADCChannel);
             cdsReadVal = mcp3008.ReadADC(CDSADCChannel);

            
             lowPotVoltage = mcp3008.ADCToVoltage(lowPotReadVal);
             highPotVoltage = mcp3008.ADCToVoltage(highPotReadVal);
            cdsVoltage = mcp3008.ADCToVoltage(cdsReadVal);

            
            調試。 (String.Format(  ,
                 lowPotReadVal, highPotReadVal, cdsReadVal));
            調試。 (String.Format(  ,
                 lowPotVoltage, highPotVoltage, cdsVoltage));

            
             (cdsVoltage < lowPotVoltage)
            {
                newState = eState.TooDark;
            }

            
            (cdsVoltage > highPotVoltage)
            {
                newState = eState.TooBright;
            }

            
            等待 CheckForStateChange(newState);
        }

?

我們已經為您填寫了大部分 CheckForStateChange 代碼,但您想要添加對 TextToSpeech 幫助程序方法的調用。


等待;

?

現在是語音 API 的有趣部分,讓它說話!修改 TextToSpeech 方法并添加這些行。

異步 
 {
     SpeechSynthesisStream 合成流;

     
     
     synthesisStream = 等待合成器。 ;

     
     media.AutoPlay =  ;
     媒體。 ;
     媒體。 ;
}

?

MCP3008.cs

這是將包裝 ADC 功能的類。

首先,我們將在構建新對象時存儲參考電壓值。

公共 
{
    調試。 ;

    
    參考電壓 = 參考電壓;
}

?

然后我們將填寫 Initialize 方法以設置與 SPI 總線控制器的通信。


{
    
     settings =  SpiConnectionSettings(SPI_CHIP_SELECT_LINE);
    
    設置下的額定速度。ClockFrequency =  ;                              
    settings.Mode = SpiMode.Mode0;

    

    
    aqs = SpiDevice.GetDeviceSelector();

    
     dis =  DeviceInformation.FindAllAsync(aqs);

     
    mcp3008 =  SpiDevice.FromIdAsync(dis[  ].Id, settings);     

    (mcp3008 == )
    {
        調試.WriteLine(
            ,
            dis[  ].Id);
        ;
    }

}
(例外 e)
{
    Debug.WriteLine(  + e.Message +  + e.StackTrace);
    ;
}

?

現在我們將填寫 ReadADC 方法以實際從 MCP3008 芯片讀取一個值。

  ReadADC(byte whichChannel)
{
    字節(jié)命令 = whichChannel;
    命令 |= MCP3008_SingleEnded;
    命令 <<=  ;

    byte[] commandBuf = new byte[] {  , 命令,  };

    byte[] readBuf = new byte[] {  ,  ,  };

    mcp3008.TransferFullDuplex(commandBuf, readBuf);

     sample = readBuf[  ] + ((readBuf[  ] &  ) <<  );
     s2 = 樣本 &  ;
    調試斷言(示例== s2);
    樣品;
}

?

最后添加一個輔助方法,用于將返回的 ADC 值(以單位為單位)轉換為電壓。

   
  {
     ( )adc * ReferenceVoltage / ( )Max;
 }

?

校準

運行代碼并將面包板放在正常照明的區(qū)域。?

查看輸出窗口,了解 ADC 芯片從兩個電位器和光電池讀取的電壓。

第一個數字是從低調整罐讀取的值,第二個是高調整罐,第三個是當前在光電池上讀取的值。

 ::
 。_ _  , 。 ,  
  

?

轉動低邊界電位器,觀察第一個數字的值變化。調整電位器直到電壓略低于第三個數字的值(至少 0.2 伏)。

現在轉動高邊界鍋,看第二個數字的值。您希望它比第三個數字的值高一點(同樣至少 0.2 伏)。

現在已經配置了一個邊界區(qū)域,其中的值“恰到好處”。

手術

以這種方式設置盆,如果你用手遮住光電管,輸出應該說“我需要一盞燈”,如果你連接了可選的耳機/揚聲器,你應該聽到 Pi2 語音。

取下你的陰影會使它變成“啊,剛剛好”(和語音)。

將一盞燈照在傳感器上會變成“我需要戴墨鏡”(再次講話)。

 ::timerCallback
、 
 。 ,  .  ,  
 ::TextToSpeech 啊,剛剛好

 ::timerCallback
、、 
 。 ,  .  , 。 
 ::TextToSpeech 我需要一盞燈

 ::timerCallback
、 
 。 ,  .  , 。 
 ::TextToSpeech 我需要戴墨鏡

?


下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1NS1081/NS1081S/NS1081Q USB 3.0閃存數據手冊
  2. 0.40 MB   |  4次下載  |  2 積分
  3. 2光伏并網逆變器原理
  4. 7.31 MB   |  3次下載  |  2 積分
  5. 3T20電烙鐵原理圖資料
  6. 0.27 MB   |  2次下載  |  免費
  7. 4PL83081 雙路恒流同步降壓轉換器技術手冊
  8. 3.34 MB   |  1次下載  |  免費
  9. 5PL88052 4.8V至60V輸入,5A,同步降壓轉換器技術手冊
  10. 3.36 MB   |  1次下載  |  免費
  11. 6LX8201微孔霧化驅動芯片電路圖資料
  12. 0.15 MB   |  1次下載  |  免費
  13. 7PC6200_7V直流電機驅動器技術手冊
  14. 0.47 MB   |  次下載  |  免費
  15. 8恒溫晶體振蕩器(OCXO)FOC-2D:20.6×20.6mm在通信基站和測試設備中的應用參數規(guī)格
  16. 485.75 KB  |  次下載  |  免費

本月

  1. 1如何看懂電子電路圖
  2. 12.88 MB   |  329次下載  |  免費
  3. 2RK3588數據手冊
  4. 2.24 MB   |  14次下載  |  免費
  5. 3PC5502負載均流控制電路數據手冊
  6. 1.63 MB   |  12次下載  |  免費
  7. 4STM32F10x參考手冊資料
  8. 13.64 MB   |  12次下載  |  1 積分
  9. 5OAH0428 V1.0英文規(guī)格書
  10. 5.86 MB   |  8次下載  |  免費
  11. 6NS1081/NS1081S/NS1081Q USB 3.0閃存數據手冊
  12. 0.40 MB   |  4次下載  |  2 積分
  13. 7PID控制算法學習筆記資料
  14. 3.43 MB   |  3次下載  |  2 積分
  15. 8光伏并網逆變器原理
  16. 7.31 MB   |  3次下載  |  2 積分

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935132次下載  |  10 積分
  3. 2開源硬件-PMP21529.1-4 開關降壓/升壓雙向直流/直流轉換器 PCB layout 設計
  4. 1.48MB  |  420064次下載  |  10 積分
  5. 3Altium DXP2002下載入口
  6. 未知  |  233089次下載  |  10 積分
  7. 4電路仿真軟件multisim 10.0免費下載
  8. 340992  |  191415次下載  |  10 積分
  9. 5十天學會AVR單片機與C語言視頻教程 下載
  10. 158M  |  183349次下載  |  10 積分
  11. 6labview8.5下載
  12. 未知  |  81599次下載  |  10 積分
  13. 7Keil工具MDK-Arm免費下載
  14. 0.02 MB  |  73818次下載  |  10 積分
  15. 8LabVIEW 8.6下載
  16. 未知  |  65990次下載  |  10 積分