freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

光電平衡小車設(shè)計(jì)_單片機(jī)課程設(shè)計(jì)(參考版)

2024-09-02 18:07本頁(yè)面
  

【正文】 }void main(void。 //清除標(biāo)志位 PWME = 0x0f。 //清除標(biāo)志位 while(!TFLG1_C3F)。 //清除標(biāo)志位 while(!TFLG1_C2F)。 //清除標(biāo)志位 while(!TFLG1_C3F)。 //清除標(biāo)志位 } // end of for //********捕獲和等待第129個(gè)時(shí)鐘完成,以結(jié)束本次CCD輸出 while(!TFLG1_C2F)。 //開通AN10 uchr_ad_data2[i] =ATD_uchar_convert() 。i++) { while(!TFLG1_C3F)。 //********以后每次撲捉CLK的下降沿128次 for(i=1。 //清除標(biāo)志位 delay_1us()。 //開始采集pixel的值 while(!TFLG1_C2F)。 //清除標(biāo)志位 delay_1us()。 while(!TFLG1_C3F)。 //等待IC0撲捉到CLK的上升沿 x = TC2。 PWME = 0X4f。}/***************************************************************************程序功能:采集CCD2數(shù)據(jù),通過上位機(jī)生成圖像入口參數(shù):無(wú)出口參數(shù):unsigned char uchr_ccd_data(128)共128個(gè)數(shù)據(jù),其性質(zhì)為全局?jǐn)?shù)組電氣連接:PWM6CCD_CLK PORTK_PK5CCD_SI2 CCD_AOAN11 850us (OK)*******************************************************/define CCD_SI2 PORTK_PK5 //定義CCD操作接口void CCD_Collect2(void) { //*********定義發(fā)送數(shù)據(jù)數(shù)組,并初始化起始位 int i=0。 //清除標(biāo)志位 PWME = 0x0f。 //清除標(biāo)志位 while(!TFLG1_C1F)。 //清除標(biāo)志位 while(!TFLG1_C0F)。 //清除標(biāo)志位 while(!TFLG1_C1F)。 //清除標(biāo)志位 while(!TFLG1_C0F)。 //清除標(biāo)志位 while(!TFLG1_C1F)。 //清除標(biāo)志位 } // end of for //********捕獲和等待第129個(gè)時(shí)鐘完成,以結(jié)束本次CCD輸出 while(!TFLG1_C0F)。 //開通AN10 uchr_ad_data[i] =ATD_uchar_convert() 。i++) { while(!TFLG1_C1F)。 //********以后每次撲捉CLK的下降沿128次 for(i=1。 //清除標(biāo)志位 delay_1us()。 //開始采集pixel的值 while(!TFLG1_C0F)。 //清除標(biāo)志位 delay_1us()。 while(!TFLG1_C1F)。 //清除標(biāo)志位 delay_1us()。 //清除標(biāo)志位 while(!TFLG1_C0F)。 //清除標(biāo)志位 while(!TFLG1_C1F)。 //清除標(biāo)志位 while(!TFLG1_C0F)。 //清除標(biāo)志位 while(!TFLG1_C1F)。 //清除標(biāo)志位 while(!TFLG1_C0F)。 //清除標(biāo)志位 while(!TFLG1_C1F)。 while(!TFLG1_C0F)。 int x。 PWMDTY23 =(uint)( leftMotor)。 PWMDTY23 = (uint)leftMotor。 //反轉(zhuǎn) PWMDTY01 = (uint)( rightMotor)。 PWMDTY01 = (uint)rightMotor。 leftMotor =0。 else rightMotor =rightMotor DEATH_CONTROL。 else leftMotor =leftMotor DEATH_CONTROL。 rightMotor = duty g_inDirControlOut。 //左右電機(jī)PWM占空比 float rightMotor。 MotorOutput(g_inAngleOut + g_inSpeedOut)。 //角度換算90~90. if(g_fCarAngle =30 || g_fCarAngle =30) //保護(hù) PWMflag = 1。 // Kalman_Filter(g_inCarAngle,g_inGyroSpeed)。 //得到角速度99陀螺儀靜態(tài)點(diǎn)采集的數(shù)據(jù) ATD0CTL5 = 0X08。void stand_control(void) { ATD0CTL5 = 0X00。 //AD采集的電壓轉(zhuǎn)換成的角度f(wàn)loat g_fCarAngle。 //角度控制控制量輸出int g_inGyroSpeed。//int ANGLE_CONTROL_D = 80。 //本次速度完全控制結(jié)束 SpeedControlUpdate()。 g_inSpeedperiod++。 inValue = g_inSpeedOutNew g_inSpeedOutOld。 //保存上一次速度控制量 g_inSpeedOutNew = ( D + g_inSpeedIntegral)。 if(g_inSpeedIntegral =Speed_Motor_Min) g_inSpeedIntegral = Speed_Motor_Min。 //偏差值乘以微分參數(shù)來(lái)穩(wěn)定輸出 g_inSpeedIntegral =(P + g_inSpeedIntegral)。 //計(jì)算給定速度與測(cè)量值的偏差 D =(inDelta * SPEED_CONTROL_D)。 // g_inCarSpeed擴(kuò)大了10倍 //if(icount 4000) //速度設(shè)定 //{ if(CAR_SPEED_SET =300) CAR_SPEED_SET = CAR_SPEED_SET + 10。 g_chrRightPulsesum=0。 g_inCarSpeed = (g_chrleftPulsesum + g_chrRightPulsesum)/2。 //ok } //end of GetMotorPulse/******************************************************************函數(shù)功能:通過全局變量g_inMotorPulse得到電機(jī)脈沖數(shù)入口參數(shù):無(wú)全局變量 g_inMotorPulse出口參數(shù):無(wú)全局變量 g_inSpeedControlOutNew ,g_inSpeedControlOutOld*******************************************************************/void SpeedControlUpdate(void) //(ok) 100ms { float inDelta。 //右計(jì)數(shù)器使能 g_chrleftPulsesum = g_chrleftPulsesum + (int)g_chrleftPulse。 //左計(jì)數(shù)器使能 Rightcounter_S0=1。 //右計(jì)數(shù)器清零 Leftcounter_S0=1。 //右電機(jī)計(jì)數(shù)從PORTB Rightcounter_S0=0。 Leftcounter_S1=0。 //左電機(jī)計(jì)數(shù)從PORTA g_chrleftPulse = g_chrleftPulse。 //控制次數(shù)計(jì)數(shù)float g_inSpeedOut。 //根據(jù)最新得到的速度計(jì)算的速度控制量float g_inSpeedOutOld=0。 //設(shè)定速度f(wàn)loat g_inSpeedIntegral=0。float g_inCarSpeed=0。int g_chrleftPulsesum = 0。char g_chrleftPulse = 0。 } //******************速度參數(shù)宏定義*********************define CAR_SPEED_CONSTANT //此系數(shù)擴(kuò)大了100倍 //單位轉(zhuǎn)換比例值 Motorspeed =MotorPulse/(N*100ms) (N為小車轉(zhuǎn)一圈的脈沖輸出 N=781)define SPEED_CONTROL_PERIOD 20 //將速度控制周期分成20份,即100/5=20define SPEED_CONTROL_P //速度控制中的比例控制,用于反饋比例反饋速度差信號(hào)define SPEED_CONTROL_D 53 //速度控制中用于避免震動(dòng)微分控制define Speed_Motor_Max 100define Speed_Motor_Min 100define Leftcounter_S0 PORTE_PE2 //計(jì)數(shù)器芯片端口定義 ok()define Leftcounter_S1 PORTE_PE3define Rightcounter_S0 PORTE_PE5define Rightcounter_S1 PORTE_PE6//float SPEED_CONTROL_P =。 //1ms 中斷初始化ok uchr_ad_data[0] = 0xff。 //CCD初始化IC0上升沿?fù)渥?IC1下降沿?fù)渥? ok PAC_Init()。 // 改變了采樣頻率 PWM_init()。 //時(shí)鐘初始化 ok SCI0_init()。 unsigned char PWMflag =0。 extern int DirControlPeriod。 //計(jì)數(shù)器 unsigned char Sendflag。 float angleZero。 unsigned char uchr_ad_data[133]。 else PTJ_PTJ6 =0。 if(ShuMa[i] amp。}/******************************************************函數(shù)功能:數(shù)碼管顯示入口參
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1