<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 擁有USB的PSoC應(yīng)用于風(fēng)扇控制

          擁有USB的PSoC應(yīng)用于風(fēng)扇控制

          作者: 時(shí)間:2013-09-06 來(lái)源:網(wǎng)絡(luò) 收藏
          如欲測(cè)量熱敏電阻(由具有很高電阻溫度系數(shù)的固體半導(dǎo)體材料構(gòu)成的熱敏類型的溫度檢測(cè)元件)的阻值,則把一個(gè)熱敏電阻和一個(gè)10k基準(zhǔn)電阻器連接至可以使用模擬多路復(fù)用器MUX1的引腳。連續(xù)時(shí)間模擬塊被配置為一個(gè)緩沖器,其輸入與模擬MUX總線1相連。該列中剩余的兩個(gè)塊和一個(gè)數(shù)字塊被配置為一個(gè)14位ADC,如上述示意圖7所示。

            該ADC的設(shè)定輸入范圍為0V~2.6V.電流DAC被接通,并針對(duì)一個(gè)200μA電流進(jìn)行了設(shè)置。即使在20℃的溫度條件下,負(fù)載電壓也為2.4V.對(duì)于ADC的輸入范圍而言這是合適的。

            最后考慮的是4個(gè)模擬塊和5個(gè)數(shù)字塊的資源使用。這似乎超出了可用資源的范疇。資源不僅是可配置的;而且還是動(dòng)態(tài)可重構(gòu)的。由于轉(zhuǎn)速計(jì)和ADC永遠(yuǎn)不會(huì)同時(shí)使用,因此它們可以共享數(shù)字資源。配置一個(gè)ADC并加以使用。然后配置一個(gè)轉(zhuǎn)速計(jì)并使用。

            在該應(yīng)用中,4個(gè)數(shù)字塊實(shí)際上起到了5個(gè)數(shù)字塊的作用,也就是說數(shù)字塊資源的利用率達(dá)到了125%。

            I2C從屬用戶模塊具有極佳的易用性。對(duì)于本例而言,端口5的靠下的7個(gè)引腳被用來(lái)設(shè)定地址。該用戶模塊只需要一個(gè)至其即將使用的RAM空間的指針。

            就本例來(lái)說,下列變量將被存儲(chǔ)于I2C存儲(chǔ)空間中。

            struct I2C_Space{/Memory Common to I2C

            char cTem

            p;

            char cTempLowerLimit;

            int iFanLowerRPM;

            char cTempUpperLimit;

            int iFanUpperRPM;

            int iControlWeightFactor;

            int iTachRPM;

            } MyI2C_Space;

            以下是使I2C接口正常運(yùn)作所需的全部代碼:

            EzI2Cslave_SetAddr((PRT5DR 0x7f0));/Port 5 controls I2C address

            EzI2Cslave_SetRamBuffer( 11, 11,(BYTE *) MyI2C_Space );

            EzI2Cslave_Start(void)

            這些功能調(diào)用負(fù)責(zé)設(shè)定I2C地址、定義為I2C用戶模塊和程序的其余部分所共有的存儲(chǔ)空間、并啟動(dòng)該外設(shè)。

            下面的代碼列表示出了用于該風(fēng)扇應(yīng)用的控制環(huán)路:

            while(1){

            while(bSleepTimerTick !=0);

            bSleepTimerTick = 0;

            LoadConfig_ADC();

            MyI2C_Space.cTemp = cGetTemp();

            UnloadConfig_ADC();

            LoadConfig_Tach();

            MyI2C_Space.iTachRPM = iReadTach();

            UnloadConfig_Tach();

            UpdatePWM();

            }

            請(qǐng)注意,ADC和轉(zhuǎn)速計(jì)始終處于被配置和重構(gòu)的狀態(tài)之下。

            圖8:示意圖

            上述示意圖8出了完整的設(shè)計(jì)方案(所有的元件都被連接到了其適當(dāng)?shù)囊_)。

            該設(shè)計(jì)可以很容易地進(jìn)行修改,以增設(shè)更多的自動(dòng)調(diào)溫器。只需將每個(gè)自動(dòng)調(diào)溫器連接至其自己的引腳并讀出其電阻即可。該通信接口以往采用的是I2C,只需采用適當(dāng)?shù)挠脩裟K便可輕而易舉地改為SPI、UART或。

            采用可編程系統(tǒng)級(jí)芯片的賽普拉斯CY8C24794微控制器為實(shí)現(xiàn)與各種傳感器和外圍設(shè)備的連接奠定了基礎(chǔ)。其動(dòng)態(tài)可重構(gòu)性有利于實(shí)現(xiàn)極高的片上資源利用率。對(duì)于我來(lái)說,它是理想的嵌入式系統(tǒng)控制器選擇。


          上一頁(yè) 1 2 3 4 下一頁(yè)

          關(guān)鍵詞: USB PSoC 風(fēng)扇控制

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();