久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: 基于51單片機控制直流電機轉速的程序,模擬量轉為數字量 [打印本頁]

作者: Lzc@@    時間: 2021-2-6 13:09
標題: 基于51單片機控制直流電機轉速的程序,模擬量轉為數字量
/**************************************************************/
/*    文件名: AD0809.c                                        */
/*    功能描述: AD采樣實驗,結果通過串口送PC顯示(脫機運行)    */
/*              結果送內部數據區30H,共16個(SoftIce調試)      */
/**************************************************************/
#include <reg51.h>
//#include "SST89x5x4.h"
#include "Absacc.h"

#define T_value     (unsigned char)0xFE                // T周期值
#define T1_value    (unsigned char)0x20                // T周期中高電平周期T1值
#define TH0_value   (unsigned char)0xFE                // 定時器T0計數值(高)10
#define TL0_value   (unsigned char)0x9B                // 定時器T0計數值(低)

unsigned char   V_Set;

float Kp=0;
float Ki=0;
float Sum= 0 ;

#define STARTAD    XBYTE[0x7F00]
#define ADRESULT   XBYTE[0x7F08]

sbit ADBUSY  = P3^3;

void Delay()
{
        unsigned char i;
        for(i=0; i<100; i++);
}

unsigned char AD0809(void)
{
        unsigned char result;
        STARTAD = 0;                        //啟動AD
        while(ADBUSY == 1);                //等待轉換結束
        Delay();
        result = ADRESULT;
        return result;                        //返回轉換結果
}


sbit DRV = P1^7;
unsigned char T_Count;                        // 延時次數
//unsigned char ADV;                //變量
//unsigned char Tx;


void init_tim0()                                // 定時器0初始化,定時基數
{
        TMOD = 0x01;
        TH0 = TH0_value;
        TL0 = TL0_value;
        TR0 = 1;       
        ET0 = 1;
        EA = 1;
}
void init_tim1()                                // 定時器1初始化,定時基數
{
        TMOD |= 0x50;
        TH1 = 0;
        TL1 = 0;
        TR1 = 1;
//        ET0 = 1;
}


void int_tim0() interrupt 1
{
         
        TH0 = TH0_value;
        TL0 = TL0_value;
    T_Count++;
}

float PID_Control (float get)          //PID控制算法
{
        float err ;
        err         = V_Set -  get;       
        Sum +=  err;       
        return (Kp*err + Ki * Sum   )  ;
       

}

void main(void)
{


        short V_get,OUT;
        Kp =1;
        Ki =1;
        DRV = 1;
        V_Set=0;
        init_tim0();
        init_tim1();        
        T_Count = 0;
//        Tx = ADV;
        while(1)
        {
//
                
//                Delay();
                V_get = TH1<<8|TL1;
            V_Set = AD0809();       
                OUT= PID_Control(V_get);
                  if(T_Count<V_Set)
                {
                        DRV =0;
//                        Tx = T_value - Tx;         
//                        T_Count = Tx;
             }
                else {  DRV =1;}
        if(T_Count==0xFE)
                {T_Count=0x00;}
        }


}







歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 欧美日韩一区精品 | 国产中文字幕在线观看 | 亚洲国产成人av好男人在线观看 | 九九综合 | 久久se精品一区精品二区 | 亚洲国产成人在线观看 | 国产丝袜一区二区三区免费视频 | 欧美日韩在线免费 | 中文字幕亚洲精品 | 成人精品鲁一区一区二区 | 精品小视频| 国产精品日韩在线观看 | 日日天天| 99亚洲国产精品 | 成人精品国产免费网站 | 欧美精品三区 | 伊人精品久久久久77777 | 久久久精彩视频 | 亚洲日本免费 | 亚洲人成人一区二区在线观看 | 婷婷去俺也去 | 国产色| 日韩免费在线观看视频 | 亚洲精品第一 | 日韩视频在线一区 | 韩国电影久久 | 手机三级电影 | 欧美日韩在线一区二区 | 国产精品精品视频一区二区三区 | 国产污视频在线 | 天天操天天怕 | 成人精品视频99在线观看免费 | 久久大| 日韩在线一区二区三区 | 狠狠干av| 99久热| 自拍偷拍亚洲视频 | 视频在线一区二区 | 国产激情视频网站 | 国产国产精品久久久久 | 99久久成人|