新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于DSP芯片TMS320F240的步進電機的調焦系統設計

        基于DSP芯片TMS320F240的步進電機的調焦系統設計

        作者: 時間:2010-09-13 來源:網絡 收藏

          int table[ ]= { 25,800,255, //第1行

          . . . . . . } //第n行

          其中25為步數;800為定時器周期寄存器值;255每兩步間所要進入定時器中斷的次數。實現準確地控制控制器關鍵在于由F240 I/O口產生規定的脈沖信號,提供給控制器從而驅動電機正確轉動,程序中包括F240初始化、電機正轉、等待、電機反轉幾個程序模塊。程序流 程圖如圖2所示:

          

          圖2 程序流程圖

          以下是實現電機正轉的程序。程序中變量解釋:step:用于存儲數組中電機步數;every step:用于存儲數組中每兩步間所要進定時中斷的次數;flag:數組行數標志(程序假設需正轉36組)。

          void interrupt INT2_ISR()

          { while (*EVIVRA==0x0027) //是否是定時器中斷

          { if(flag36) //用來完成正轉

          {

          if (steptotal==step) //是否走完數組每行規定的步數

          { flag++; //數組行標志加1

          steptotal=0; //電機轉動步數清零

          step=table[++j]; //更新電機運行步數數據

          *T1PR=table[++j]; //更新定時器定時周期

          everystep=table[++j]; //更新需要進入定時器中斷次數

          *T1CNT=0; } //從零開始計時,啟動定時器

          i++; //循環標志位加1

          if(i==1) *PADATDIR=0xff05; // 提供下降沿,正轉,不脫機

          else{ if (i==everystep)



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 泰宁县| 驻马店市| 新巴尔虎左旗| 曲阳县| 平谷区| 康马县| 娱乐| 东光县| 五寨县| 新化县| 宜章县| 乌鲁木齐市| 湾仔区| 霍城县| 阿鲁科尔沁旗| 恩施市| 柘城县| 寿光市| 木兰县| 新安县| 永清县| 佛坪县| 新田县| 徐汇区| 平顺县| 沙坪坝区| 额尔古纳市| 宁安市| 涟源市| 西乌珠穆沁旗| 昌平区| 潮安县| 游戏| 尚义县| 宜昌市| 天门市| 卢湾区| 嵊泗县| 南陵县| 普兰店市| 高安市|