色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

電子發(fā)燒友App

硬聲App

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

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

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

使用MCP3008模數(shù)轉(zhuǎn)換器將Pi2連接到三個模擬組件

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

資料介紹

描述

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

硬件設(shè)置

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

注意:設(shè)置電路時,請確保 MCP3008 芯片的方向正確。該芯片有一個半月形標(biāo)記,一側(cè)有一個點。其方向應(yīng)如下圖所示。

選修的

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

代碼

主頁.cs

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

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

我們已經(jīng)填寫了一些方法作為您在此解決方案中的起點。如果你想跳到前面,你可以在以下位置找到所有代碼已完成的解決方案:“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 合成器;

        
        定時器定時器;

?

現(xiàn)在將這些行添加到 MainPage 構(gòu)造函數(shù)以設(shè)置 Windows 語音合成器和 ADC 芯片。

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

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

?

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

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

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

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

?

現(xiàn)在我們調(diào)用了計時器回調(diào),讓我們填寫它。

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

            
            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);

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

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

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

            
            等待 CheckForStateChange(newState);
        }

?

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


等待

?

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

異步 
 {
     SpeechSynthesisStream 合成流;

     
     
     synthesisStream = 等待合成器。 ;

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

?

MCP3008.cs

這是將包裝 ADC 功能的類。

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

公共 
{
    調(diào)試。 ;

    
    參考電壓 = 參考電壓;
}

?

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


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

    

    
    aqs = SpiDevice.GetDeviceSelector();

    
     dis =  DeviceInformation.FindAllAsync(aqs);

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

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

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

?

現(xiàn)在我們將填寫 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 = 樣本 &  ;
    調(diào)試斷言(示例== s2);
    樣品;
}

?

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

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

?

校準(zhǔn)

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

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

第一個數(shù)字是從低調(diào)整罐讀取的值,第二個是高調(diào)整罐,第三個是當(dāng)前在光電池上讀取的值。

 ::
 。_ _  ,  ,  
  

?

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

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

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

手術(shù)

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

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

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

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

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

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

?


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

評論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
  2. 1.06 MB  |  532次下載  |  免費
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費
  5. 3TC358743XBG評估板參考手冊
  6. 1.36 MB  |  330次下載  |  免費
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費
  9. 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費
  11. 6迪文DGUS開發(fā)指南
  12. 31.67 MB  |  194次下載  |  免費
  13. 7元宇宙底層硬件系列報告
  14. 13.42 MB  |  182次下載  |  免費
  15. 8FP5207XR-G1中文應(yīng)用手冊
  16. 1.09 MB  |  178次下載  |  免費

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費
  7. 4開關(guān)電源設(shè)計實例指南
  8. 未知  |  21549次下載  |  免費
  9. 5電氣工程師手冊免費下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費
  13. 7電子制作實例集錦 下載
  14. 未知  |  8113次下載  |  免費
  15. 8《LED驅(qū)動電路設(shè)計》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537798次下載  |  免費
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費
  11. 6電路仿真軟件multisim 10.0免費下載
  12. 340992  |  191187次下載  |  免費
  13. 7十天學(xué)會AVR單片機與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費
  15. 8proe5.0野火版下載(中文版免費下載)
  16. 未知  |  138040次下載  |  免費
主站蜘蛛池模板: 91天堂国产在线 在线播放| 伦理片飘花手机在线| 成人无码国产AV免费看| 就操成人网| gv手机在线观看| 我的美女奴隶| 国产精品无码AV天天爽人妻蜜桃 | 久久天天躁狠狠躁夜夜呲| 99热在线免费观看| 欧美人成在线观看ccc36| 怪物高h粗暴无尽| 亚洲无线码一区在线观看| 国产中文字幕免费观看| 中文字幕午夜福利片| 手机在线观看无码日韩视频| 久久极品视频| 97色伦在色在线播放| 视频一区二区三区蜜桃麻豆| 久久涩视频| 国产电影一区二区三区| 午夜福利92看看电影80| 国产日韩精品一区二区在线观看| 最近的2019中文字幕国语HD | 女人十八毛片水真多啊| tube69hdxxxx日本| 亚洲欧洲日韩国产一区二区三区 | 国产日韩欧美另类| JIZZ幻女大全| 一级片mp4| 免费在线观看黄色网址| CHINA篮球体育飞机2023| 亚洲免费在线观看| 日韩中文无线码在线视频| 毛片在线网址| 丰满女朋友在线观看中文| 无码专区久久综合久综合字幕| 猛烈抽插H1V1| 干了快生了的孕妇| 45分钟做受片免费观看| 亚洲精品乱码一区二区三区| 色情www日本欧美|