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

正文內(nèi)容

軟件系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)-在線瀏覽

2024-08-06 04:41本頁(yè)面
  

【正文】 的信息用來(lái)調(diào)整電腦鼠行進(jìn)姿勢(shì),防止與擋板碰撞。 迷宮探測(cè)算法在具體實(shí)現(xiàn)中,考慮到設(shè)計(jì)要求,本次畢業(yè)設(shè)計(jì)選用“左手準(zhǔn)則”作為搜尋準(zhǔn)則、選用“面向局部迷宮的搜尋策略”作為搜尋策略。0x1c) { case 0x18://F { if(sensorsStateAuxiliaryamp。 else TurnLeft(2)。 } case 0x14://LF電腦鼠在跑道中位置朝向過(guò)于偏左,向右調(diào)整 { TurnRight(3)。 } case 0x0c://L { if(sensorsStateAuxiliaryamp。防止與墻壁碰撞*/ MoveForward(5)。 break。 break。 { if((~sensorsStateAuxiliary)amp。 else MoveRight(3)。 } case 0x04://L LF 如果左方或左前方存在墻壁,如果墻壁過(guò)近(30度角左右),向右轉(zhuǎn);反之,向右調(diào)整 { if(sensorsStateAuxiliaryamp。 else TurnRight(2)。 } case 0x1c://none 四周不存在墻壁,向左轉(zhuǎn) { MoveLeft(3)。 } case 0x00://死路,向右調(diào)整或向右轉(zhuǎn),返回 { if((~sensorsStateAuxiliary)amp。 else MoveRight(3)。 } }上述程序中各類情況如下列各圖進(jìn)行描述:電腦鼠電腦鼠(a)case 0x18:11000判斷前方的墻距離是否較近,如果是,離墻距離遠(yuǎn)向左慢速轉(zhuǎn)大彎,否則距離墻較近,向左快速轉(zhuǎn)小彎(b)case 0x14:10100電腦鼠在跑道中位置朝向過(guò)于偏左,向右調(diào)整電腦鼠電腦鼠(c)case 0x0c:01100如果左方墻壁距離較遠(yuǎn),繼續(xù)前行,如果距離較近,向右轉(zhuǎn)。(d)case 0x10:10000如果左前和左方存在墻壁且距離較近,向右調(diào)整電腦鼠電腦鼠(e)case 0x08:01000如果左方和前方均有墻壁(轉(zhuǎn)彎),如果距離較遠(yuǎn),向右調(diào)整,反之向右轉(zhuǎn)。通過(guò)對(duì)兩個(gè)電機(jī)分別下達(dá)控制各自轉(zhuǎn)速和轉(zhuǎn)向的指令信息,可以實(shí)現(xiàn)對(duì)電腦鼠行進(jìn)速度、行進(jìn)方向的控制與調(diào)整。具體的工程實(shí)現(xiàn)中,改變輸入電機(jī)驅(qū)動(dòng)鏈路的PWM占空比來(lái)實(shí)現(xiàn)上述對(duì)轉(zhuǎn)速和轉(zhuǎn)向的控制。在具體實(shí)現(xiàn)時(shí),利用L298N對(duì)兩個(gè)電機(jī)分別進(jìn)行驅(qū)動(dòng)控制。微處理器下達(dá)驅(qū)動(dòng)指令向前:分別對(duì)左右車輪產(chǎn)生PWM波,占空比為50%,驅(qū)動(dòng)車??刂菩羞M(jìn)步數(shù)車。 /*開(kāi)啟GPIOA,GPIOC,GPIOD 的外設(shè)時(shí)鐘*/ RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOA|RCC_APB2Periph_GPIOC, ENABLE)。 //IN1,IN2,IN3 /*設(shè)置引腳模式為通用推挽輸出*/ = GPIO_Mode_Out_PP。 /*調(diào)用庫(kù)函數(shù),初始化GPIOC*/ GPIO_Init(GPIOC, amp。 /*******************(ENAPA8,ENBPA9)******************/ /*選擇要控制的GPIOA引腳*/ = GPIO_Pin_8|GPIO_Pin_9。 /*設(shè)置引腳速率為50MHz */ = GPIO_Speed_50MHz。GPIO_InitStructure)。}/* * 函數(shù)名:TIM1_Motor_Config * 描述 :TIM1配置,電機(jī)PWM信號(hào),如周期、極性、占空比 * * 輸入 :無(wú) * 輸出 :無(wú) * 調(diào)用 :內(nèi)部調(diào)用 * 注釋 :L298N 開(kāi)關(guān)頻率正常為25KHz,最大為40KHz, * 此處設(shè)置為25KHz */static void TIM1_Motor_Config(void){ TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure。 RCC_APB2PeriphClockCmd(RCC_APB2Periph_TIM1,ENABLE)。 TIM_DeInit(TIM1)。 //預(yù)分頻(時(shí)鐘分頻)72M/72=1000K = TIM_CounterMode_Up。 //裝載值 1000k/40=25khz 就是說(shuō)向上加的40便滿了 // = TIM_CKD_DIV1。 //周期計(jì)數(shù)器值 不懂得不管 TIM_TimeBaseInit(TIM1,amp。 //初始化TIMx的時(shí)間基數(shù)單位 /* Channel 1 Configuration in PWM mode 通道一的PWM */ = TIM_OCMode_PWM2。 //使能輸出 // = TIM_OutputNState_Enable。 //占空時(shí)間 39 中有39的時(shí)間為高,互補(bǔ)的輸出正好相反 = TIM_OCPolarity_Low。 //互補(bǔ)端的極性 = TIM_OCIdleState_Reset。 //先不管 TIM_OC1Init(TIM1,amp。 //通道1 TIM_OC2Init(TIM1,amp。 //通道2 TIM_Cmd(TIM1,ENABLE)。}/* * 函數(shù)名:Motor_Init * 描述 :電機(jī)模塊初始化,初始化成功后有兩路PWM波輸出 * 輸入 :無(wú) * 輸出 :無(wú) * 調(diào)用 :外部調(diào)用 */void Motor_Init(void){ Motor_GPIO_Config()。 }/************************************************ 電機(jī)模塊功能函數(shù)*************************************************//* * 函數(shù)名:Motor_Left_Run * 描述 :左電機(jī)正轉(zhuǎn) * 輸入 :無(wú) * 輸出 :無(wú) * 調(diào)用 :內(nèi)部調(diào)用 */void Motor_Left_Run(void){ // IN3: 0 // IN4: 1// GPIO_ResetBits(GPIOC, GPIO_Pin_9)。 GPIO_SetBits(GPIOC, GPIO_Pin_8)。 }/* * 函數(shù)名:Motor_Left_Stop * 描述 :左電機(jī)停止 * 輸入 :無(wú) * 輸出 :無(wú) * 調(diào)用 :內(nèi)部調(diào)用 */void Motor_Left_Stop(void){ // IN3: 0 // IN4: 0 GPIO_ResetBits(GPIOC, GPIO_Pin_9)。}/* * 函數(shù)名:Motor_Left_Back * 描述 :左電機(jī)反轉(zhuǎn) * 輸入 :無(wú) * 輸出 :無(wú) * 調(diào)用 :內(nèi)部調(diào)用 */void Motor_Left_Back(void){ // IN3: 1 // IN4: 0 GPIO_ResetBits(GPIOC, GPIO_Pin_8)。 // GPIO_SetBits(GPIOC, GPIO_Pin_9)。}/*void Motor_Turn(void){ GPIO_SetBits(GPIOC, GPIO_Pin_7)。 //0 GPIO_SetBits(GPIOC, GPIO_Pin_8)。 //0}*/ /* * 函數(shù)名:Motor_Right_Run * 描述 :右電機(jī)正轉(zhuǎn) * 輸入 :無(wú) * 輸出 :無(wú) * 調(diào)用 :內(nèi)部調(diào)用 */void Motor_Right_Back(void){ // IN1: 0 // IN2: 1 GPIO_SetBits(GPIOC, GPIO_Pin_6)。}/* * 函數(shù)名:Motor_Right_Stop * 描述 :右電機(jī)停止 * 輸入 :無(wú) * 輸出 :無(wú) * 調(diào)用 :內(nèi)部調(diào)用 */void Motor_Right_Stop(void){ // IN1: 0 // IN2: 0 GPIO_ResetBits(GPIOC, GPIO_Pin_7)。}/* * 函數(shù)名:Motor_Right_Back * 描述 :右電機(jī)反轉(zhuǎn) * 輸入 :無(wú) * 輸出 :無(wú) * 調(diào)用 :Motor_Direct_Set內(nèi)部調(diào)用 */void Motor_Right_Run(void){ // IN1: 1 // IN2: 0 GPIO_ResetBits(GPIOC, GPIO_Pin_6)。}void Motor_Run_Speed(u8 lspeed, u8 rspeed){ Motor_Left_Run()。 TIM_SetCompare1(TIM1, rspeed)。 }void Motor_TurnL_Speed(u8 lspeed, u8 rspeed){ Motor_Left_Back()。 TIM_SetCompare1(TIM1, rspeed)。 }void Motor_TurnR_Speed(u8 lspeed, u8 rspeed){ Motor_Left_Run()。 TIM_SetCompare1(TIM1, rspeed)。 }void Motor_Back_Speed(u8 lspeed, u8 rspeed){ Motor_Left_Back()。 TIM_SetCompare1(TIM1, rspeed)。 }void Car_Run(void){ Motor_Right_Run()。}void Car_TurnL(void){ Motor_TurnL_Speed(26, 26)。 Motor_Right_Stop()。}void Car_TurnR(void){ Motor_TurnR_Speed(26, 26)。 Motor_Right_Stop()。}void Motor_Brake(void){ Motor_Right_Stop()。 }void Car_TurnBL(void){ Motor_Left_Back()。 Delay_ms(175)。 Motor_Left_Stop()。 Motor_Left_Run()。 Motor_Right_Stop()。}/*************************************************** 電機(jī)測(cè)速模塊****************************************************//* * 函數(shù)名:TIM4_Cap_Init * 描述 : 定時(shí)器4通道3輸入捕獲設(shè)置 * 擁有左電機(jī)測(cè)速 * PB8 * 右電機(jī) * PB9(未加入) * 輸入 : * arr: 自動(dòng)重裝載值 * psc: 預(yù)分頻值 * 輸出 :無(wú) * 調(diào)用 :內(nèi)部調(diào)用 */ void TIM4_Cap_Init(u16 arr,u16 psc){ GPIO_InitTypeDef GPIO_InitStructure。 TIM_ICInitTypeDef TIM4_ICInitStructure。 RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM4, ENABLE)。 //使能GPIOB時(shí)鐘 = GPIO_Pin_8。 //PB8 下拉輸入 GPIO_Init(GPIOB, amp。 GPIO_ResetBits(GPIOB, GPIO_Pin_8)。 //設(shè)置分頻數(shù) = arr。 //設(shè)置時(shí)鐘分頻系數(shù):不分頻,沒(méi)用 = TIM_CounterMode_Up。TIM_TimeBaseStructure)。 = TIM_ICPolarity_Rising。 //映射到TI3上 = TIM_ICPSC_DIV1。 //IC1F=0000 配置輸入濾波器 不濾波 TIM_ICInit(TIM4, amp。 /*中斷分組初始化*/ =
點(diǎn)擊復(fù)制文檔內(nèi)容
高考資料相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1