新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 擁有USB的PSoC應用于風扇控制

        擁有USB的PSoC應用于風扇控制

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

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

          最后考慮的是4個模擬塊和5個數字塊的資源使用。這似乎超出了可用資源的范疇。資源不僅是可配置的;而且還是動態可重構的。由于轉速計和ADC永遠不會同時使用,因此它們可以共享數字資源。配置一個ADC并加以使用。然后配置一個轉速計并使用。

          在該應用中,4個數字塊實際上起到了5個數字塊的作用,也就是說數字塊資源的利用率達到了125%。

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

          就本例來說,下列變量將被存儲于I2C存儲空間中。

          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接口正常運作所需的全部代碼:

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

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

          EzI2Cslave_Start(void)

          這些功能調用負責設定I2C地址、定義為I2C用戶模塊和程序的其余部分所共有的存儲空間、并啟動該外設。

          下面的代碼列表示出了用于該風扇應用的控制環路:

          while(1){

          while(bSleepTimerTick !=0);

          bSleepTimerTick = 0;

          LoadConfig_ADC();

          MyI2C_Space.cTemp = cGetTemp();

          UnloadConfig_ADC();

          LoadConfig_Tach();

          MyI2C_Space.iTachRPM = iReadTach();

          UnloadConfig_Tach();

          UpdatePWM();

          }

          請注意,ADC和轉速計始終處于被配置和重構的狀態之下。

          圖8:示意圖

          上述示意圖8出了完整的設計方案(所有的元件都被連接到了其適當的引腳)。

          該設計可以很容易地進行修改,以增設更多的自動調溫器。只需將每個自動調溫器連接至其自己的引腳并讀出其電阻即可。該通信接口以往采用的是I2C,只需采用適當的用戶模塊便可輕而易舉地改為SPI、UART或

          采用可編程系統級芯片的賽普拉斯CY8C24794微控制器為實現與各種傳感器和外圍設備的連接奠定了基礎。其動態可重構性有利于實現極高的片上資源利用率。對于我來說,它是理想的嵌入式系統控制器選擇。


        上一頁 1 2 3 4 下一頁

        關鍵詞: USB PSoC 風扇控制

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 亳州市| 岑溪市| 聊城市| 怀柔区| 都匀市| 辉南县| 新源县| 筠连县| 体育| 海口市| 台山市| 承德市| 临夏市| 临汾市| 博客| 开鲁县| 山丹县| 盈江县| 腾冲县| 白水县| 湟中县| 云龙县| 随州市| 云和县| 台中县| 马尔康县| 巴马| 江川县| 清水河县| 台北县| 商河县| 三原县| 泰兴市| 保山市| 盘锦市| 胶南市| 阳春市| 息烽县| 水富县| 亚东县| 石阡县|