久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標(biāo)題:
我的簡(jiǎn)易stm32小車前進(jìn)后退Motor.c源程序
[打印本頁(yè)]
作者:
kkkkc
時(shí)間:
2025-6-10 13:36
標(biāo)題:
我的簡(jiǎn)易stm32小車前進(jìn)后退Motor.c源程序
這是我做的stm32簡(jiǎn)易小車前進(jìn)和后退的代碼
Motor.c文件:
#include "stm32f10x.h" // Device header
#include "PWM.h"
void Motor_Init(void)//直流電機(jī)初始化
{
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);//開(kāi)啟GPIOA時(shí)鐘
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE);//開(kāi)啟GPIOB時(shí)鐘
GPIO_InitTypeDef GPIO_InitStructure;//結(jié)構(gòu)體變量
GPIO_InitStructure.GPIO_Mode= GPIO_Mode_Out_PP;//推挽輸出
GPIO_InitStructure.GPIO_Pin= GPIO_Pin_8| GPIO_Pin_9|GPIO_Pin_10|GPIO_Pin_11;//設(shè)置端口
GPIO_InitStructure.GPIO_Speed= GPIO_Speed_50MHz;//輸出速度
GPIO_Init(GPIOA,&GPIO_InitStructure);//方向控制的初始化
GPIO_InitStructure.GPIO_Pin= GPIO_Pin_12| GPIO_Pin_13|GPIO_Pin_14|GPIO_Pin_15;//設(shè)置端口
GPIO_Init(GPIOB,&GPIO_InitStructure);//方向控制的初始化
PWM_Init(); //初始化Pwm模塊 ,控制電機(jī)速度
}
void Motor_SetSpeed1(int8_t Speed)//速度值:-100~100
{
if(Speed>=0)//相對(duì)正轉(zhuǎn)
{
GPIO_SetBits(GPIOA,GPIO_Pin_10);//高電平(哪個(gè)引腳為高,哪個(gè)引腳為低隨意)
GPIO_ResetBits(GPIOA,GPIO_Pin_11);//低電平(哪個(gè)引腳為高,哪個(gè)引腳為低隨意)
PWM_SetCompare1(Speed);//單獨(dú)更改TIM3通道1的CCR值(PA6)
}
else//相對(duì)反轉(zhuǎn)
{
GPIO_ResetBits(GPIOA,GPIO_Pin_10);//低電平(哪個(gè)引腳為高,哪個(gè)引腳為低隨意)
GPIO_SetBits(GPIOA,GPIO_Pin_11);//高電平(哪個(gè)引腳為高,哪個(gè)引腳為低隨意)
PWM_SetCompare1(Speed);//單獨(dú)更改TIM3通道1的CCR值(PA6)
}
}
void Motor_SetSpeed2(int8_t Speed)//速度值:-100~100
{
if(Speed>=0)//相對(duì)正轉(zhuǎn)
{
GPIO_SetBits(GPIOA,GPIO_Pin_8);//高電平(哪個(gè)引腳為高,哪個(gè)引腳為低隨意)
GPIO_ResetBits(GPIOA,GPIO_Pin_9);//低電平(哪個(gè)引腳為高,哪個(gè)引腳為低隨意)
PWM_SetCompare2(Speed);//單獨(dú)更改TIM3通道2的CCR值(PA7)
}
else//相對(duì)反轉(zhuǎn)
{
GPIO_ResetBits(GPIOA,GPIO_Pin_8);//低電平(哪個(gè)引腳為高,哪個(gè)引腳為低隨意)
GPIO_SetBits(GPIOA,GPIO_Pin_9);//高電平(哪個(gè)引腳為高,哪個(gè)引腳為低隨意)
PWM_SetCompare2(Speed);//單獨(dú)更改TIM3通道2的CCR值(PA7)
}
}
void Motor_SetSpeed3(int8_t Speed)//速度值:-100~100
{
if(Speed>=0)//相對(duì)正轉(zhuǎn)
{
GPIO_SetBits(GPIOB,GPIO_Pin_14);//高電平(哪個(gè)引腳為高,哪個(gè)引腳為低隨意)
GPIO_ResetBits(GPIOB,GPIO_Pin_15);//低電平(哪個(gè)引腳為高,哪個(gè)引腳為低隨意)
PWM_SetCompare3(Speed);//單獨(dú)更改TIM3通道3的CCR值(PB0)
}
else//相對(duì)反轉(zhuǎn)
{
GPIO_ResetBits(GPIOB,GPIO_Pin_14);//低電平(哪個(gè)引腳為高,哪個(gè)引腳為低隨意)
GPIO_SetBits(GPIOB,GPIO_Pin_15);//高電平(哪個(gè)引腳為高,哪個(gè)引腳為低隨意)
PWM_SetCompare3(Speed);//單獨(dú)更改TIM3通道3的CCR值(PB0)
}
}
void Motor_SetSpeed4(int8_t Speed)//速度值:-100~100
{
if(Speed>=0)//相對(duì)正轉(zhuǎn)
{
GPIO_SetBits(GPIOB,GPIO_Pin_12);//高電平(哪個(gè)引腳為高,哪個(gè)引腳為低隨意)
GPIO_ResetBits(GPIOB,GPIO_Pin_13);//低電平(哪個(gè)引腳為高,哪個(gè)引腳為低隨意)
PWM_SetCompare4(Speed);//單獨(dú)更改TIM3通道4的CCR值(PB1)
}
else//相對(duì)反轉(zhuǎn)
{
GPIO_ResetBits(GPIOB,GPIO_Pin_12);//低電平(哪個(gè)引腳為高,哪個(gè)引腳為低隨意)
GPIO_SetBits(GPIOB,GPIO_Pin_13);//高電平(哪個(gè)引腳為高,哪個(gè)引腳為低隨意)
PWM_SetCompare4(Speed);//單獨(dú)更改TIM3通道4的CCR值(PB1)
}
}
復(fù)制代碼
#include "stm32f10x.h" // Device header
#include "Delay.h"
#include "OLED.h"
#include "Motor.h"//直流電機(jī)
#include "Key.h"
#include "LED.h"
uint8_t KeyNum;//按鍵鍵碼
uint8_t Mode=0;//模式
int8_t Speed;//有符號(hào)的速度變量
// 標(biāo)志位,用于檢測(cè) Key2 是否中斷了 Key1
//uint8_t Key1_Interrupted = 0;
int main(void)
{
OLED_Init();
Motor_Init();
Key_Init();
LED_Init13();
OLED_ShowString(1,1,"Speed");
OLED_ShowString(2,1,"Mode");
while(1)
{
KeyNum=Key_GetNum();
if(KeyNum==1) //只用一個(gè)按鍵切換模式
{
//Key1_Interrupted = 1; // 設(shè)置中斷標(biāo)志
Mode++;//模式
Mode%=3;
}
if(Mode==0)
{
Speed=0;
Motor_SetSpeed1(Speed);//速度
Motor_SetSpeed2(Speed);//速度
Motor_SetSpeed3(Speed);//速度
Motor_SetSpeed4(Speed);//速度
}
else if(Mode==1)
{
Speed=70;
LED3_ON();
Motor_SetSpeed1(Speed);//速度
Motor_SetSpeed2(Speed);//速度
Motor_SetSpeed3(Speed);//速度
Motor_SetSpeed4(Speed);//速度
}
else if(Mode==2)
{
Speed=-70;
LED3_OFF();
Motor_SetSpeed1(Speed);//速度
Motor_SetSpeed2(Speed);//速度
Motor_SetSpeed3(Speed);//速度
Motor_SetSpeed4(Speed);//速度
}
OLED_ShowSignedNum(1,7,Speed,3);//顯示有符號(hào)的十進(jìn)制數(shù)字
OLED_ShowNum(2,7,Mode,1);//顯示無(wú)符號(hào)的十進(jìn)制數(shù)字
}
}
復(fù)制代碼
原理圖: 無(wú)
仿真: 無(wú)
代碼:
stm32基礎(chǔ)四驅(qū)小車-代碼.7z
(183.61 KB, 下載次數(shù): 0)
2025-6-11 03:11 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
作者:
small_white
時(shí)間:
2025-7-22 09:52
你好你好,可以看看我的帖子嗎?我在編程時(shí)遇到了問(wèn)題
歡迎光臨 (http://m.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
成年人免费观看
|
美女91网站
|
永久黄网站色视频免费观看w
|
青娱乐99
|
久久av一区二区三区亚洲
|
一级片在线播放
|
日韩av在线看
|
成人国产综合
|
青青青在线视频
|
黄色免费网站视频
|
a天堂在线视频
|
中文字幕av一区
|
中文天堂在线观看
|
成人免费视频国产免费
|
成人黄性视频
|
亚洲视频不卡
|
精品国产一区二区三
|
国产黄av
|
日韩精品久久久
|
91在线精品秘密一区二区
|
欧美不卡在线
|
国产裸体永久免费视频网站
|
高跟肉丝丝袜呻吟啪啪网站av
|
日韩在线免费观看视频
|
色片在线观看
|
日韩综合一区
|
精品在线看
|
欧美成人激情视频
|
成人免费视频观看视频
|
中文字幕在线免费观看视频
|
久久精品国产一区
|
九九视频在线观看
|
精品一区二区三区四区
|
天天草天天草
|
欧美日韩专区
|
a毛片在线观看
|
综合二区
|
久久精品亚洲
|
久久精品久久久
|
黄色中文字幕
|
一区二区三区免费在线观看
|