新聞中心

        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)



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 白银市| 特克斯县| 阳高县| 宝兴县| 宁武县| 卢氏县| 孝昌县| 申扎县| 南和县| 湾仔区| 遵义市| 临朐县| 策勒县| 盐源县| 绍兴市| 哈巴河县| 益阳市| 介休市| 县级市| 南汇区| 图片| 舒城县| 米易县| 晋州市| 临沭县| 美姑县| 连南| 屏东县| 华安县| 德保县| 大竹县| 甘谷县| 区。| 当雄县| 玉林市| 巫山县| 云阳县| 阳信县| 建瓯市| 辽阳县| 从江县|