關 閉

        新聞中心

        EEPW首頁 > 安全與國防 > 設計應用 > 基于DSP芯片TMS320F240的步進電機調焦系統設計

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

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

        F240初始化后,計時器的基本計時時間為0.1?s,考慮到F240定時器是16位計數器,這難以滿足計算長時間的需求,所以采用通 過計算進入定時器中斷的次數來計算長時間的方法。例如設置定時器周期寄存器值為800即*T1PR=800,那么進一次定時器中斷時間為800*0.1= 80?s如果計時為1s的話,則只需進12500次中斷即可,以此類推;故定義的數組內容表示如下:

          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) //是否走完數組每行規定的步數

          



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 手游| 巩义市| 陇西县| 西畴县| 井研县| 安宁市| 沙湾县| 正定县| 巨鹿县| 瑞丽市| 武威市| 鹿邑县| 抚远县| 黄大仙区| 台北县| 济宁市| 乐陵市| 桃园县| 石泉县| 黄大仙区| 盐城市| 榆林市| 梧州市| 清水县| 庄河市| 常宁市| 微博| 和龙市| 治县。| 望都县| 响水县| 舞钢市| 岳池县| 稻城县| 宜州市| 清镇市| 宜春市| 襄樊市| 阿尔山市| 吉木乃县| 富阳市|