历史上的今天
返回首页

历史上的今天

今天是:2024年08月22日(星期四)

正在发生

2019年08月22日 | STM32实现电机的正反转

2019-08-22 来源:eefocus

2019年7月22日

今天是做小车过程中的第二天,今天写一下单纯的实现电机的正反转。(但是还是不会实现PWM调速)代码如下:

/***********************************************/

.H 代码

#ifndef __MOTOR1_H

#define __MOTOR1_H

#include “stm32f10x.h”

//#include “stm32f10x_gpio.h”

#define High 1 //宏定义 高为1

#define Low 0 //宏定义 低为0

#define IN1(a) if (a) 

GPIO_SetBits(GPIOA,GPIO_Pin_4); //如果真 IN1 为高电平(PA4)

else

GPIO_ResetBits(GPIOA,GPIO_Pin_4) // 否则为低电平 (PA4)

#define IN2(a) if (a) 

GPIO_SetBits(GPIOA,GPIO_Pin_5);

else 

GPIO_ResetBits(GPIOA,GPIO_Pin_5)

otor_1_Config(void);

void Motor_1_STOP(void); //停止

void Motor_1_PRun(void); //正转

void Motor_1_NRun(void); //反转

#endif

下面是.c代码

#include “motor.h”

#include “stm32f10x.h”

#include “delay.h”

void Motor_1_Config(void)

{

GPIO_InitTypeDef GPIO_InitStruct;

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);//用GPIOA时钟

GPIO_InitStruct.GPIO_Mode=GPIO_Mode_Out_PP;//推挽输出

GPIO_InitStruct.GPIO_Pin=GPIO_Pin_4|GPIO_Pin_5;

GPIO_InitStruct.GPIO_Speed=GPIO_Speed_50MHz;

GPIO_Init(GPIOA,&GPIO_InitStruct);

GPIO_ResetBits(GPIOA,GPIO_Pin_4|GPIO_Pin_5);

}

void Motor_1_STOP(void)

{

IN1(High);

IN2(High);

}

void Motor_1_PRun(void)

{

IN1(Low);

IN2(High);

}

void Motor_1_NRun(void)

{

IN1(High);

IN2(Low);

}

下面是主函数

int main(void)

{

Motor_1_Config();

delay_init();

while(1)

{

Motor_1_PRun(); //正转

delay_ms(2000); //延迟2秒

Motor_1_NRun(); //反转

delay_ms(2000); //延迟2秒

Motor_1_STOP(); //停止

delay_ms(2000);

}

}

推荐阅读

史海拾趣

Arduino公司的发展小趣事

随着Arduino平台的不断发展,为了满足不同项目和应用的需求,Arduino推出了多种不同规格和功能的主板。例如,Arduino Diecimila和Arduino Uno等主板的推出,进一步丰富了Arduino的产品线。这些主板各具特色,适用于各种场景,使得Arduino平台在物联网和嵌入式系统的开发中发挥了越来越重要的作用。

D1 International Inc公司的发展小趣事

在快速扩张的过程中,D1 International Inc公司始终坚守品质管理的原则。公司严格把控产品的每一个环节,从原材料采购到生产流程,再到最终的产品检验,都力求做到精益求精。这种对品质的执着追求,使得D1 International Inc公司的产品在市场上赢得了良好的口碑,也为公司的长期发展提供了有力保障。

Galil Motion Control Inc公司的发展小趣事

随着技术的不断成熟,D1 International Inc公司开始积极拓展市场。公司不仅在国内市场取得了显著的成果,还成功打入国际市场。与此同时,D1 International Inc公司也注重与其他企业的战略合作。通过与知名电子制造商的合作,D1 International Inc公司的产品线得到了极大的丰富,同时也提升了公司的品牌影响力。

DFI公司的发展小趣事

随着市场竞争的加剧,DFI意识到单一产品的竞争力有限。因此,公司开始寻求垂直整合的机会,与罗升等公司合作,共同开发智能制造的全面性解决方案。这一举措不仅使DFI能够提供更完整的产品线,还增强了其在行业中的竞争力。通过与合作伙伴的紧密合作,DFI成功推出了一系列具有竞争力的智能制造解决方案,赢得了市场的广泛认可。

富芯森美(FUXINSEMI)公司的发展小趣事

随着技术实力的不断提升,富芯森美开始积极拓展市场。公司凭借优质的产品和专业的服务,成功打入消费类电子、安防、工控、汽车电子等多个领域。同时,富芯森美还注重品牌建设,通过参加国内外知名展会、举办技术研讨会等方式,不断提升品牌知名度和影响力。这些努力使得富芯森美在电子行业中逐渐崭露头角,成为行业内的佼佼者。

HSMC公司的发展小趣事

武汉弘芯半导体制造有限公司(HSMC)于2017年11月在武汉市东西湖区临空港经济技术开发区正式成立。公司自成立之初便立下了宏伟的愿景——成为全球领先的CIDM(委托代工与芯片设计整合制造)晶圆厂之一。HSMC汇聚了来自全球半导体晶圆研发与制造领域的顶尖专家团队,致力于集成电路产业先进晶圆与封装制造技术的自主化,为我国电子科技业与芯片设计业贡献力量。

问答坊 | AI 解惑

RF公司:手机射频芯片发展最新趋势及动向

RF Micro Device公司高级市场经理 Brent Wilkins    今天的新一代蜂窝电话设计越来越复杂,需要提供多频段、多模式支持,具有蓝牙个人区域网络、GPS定位、WLAN等功能,而且超宽带和电视接收功能已经开始出现,此外像游戏、图像、音频和视频 ...…

查看全部问答>

工程师调查表

尊敬的工程师会员,您好! 请您帮助我们网站建设技术频道,我们需要您最最权威的数据。请您按照自己的想法填写附件表格并反馈给我们,对于您提供的信息,我们一定是慎重参考!非常感谢你们!你们的回复是我们网站发展的动力。…

查看全部问答>

s3c2410触摸屏程序中对外接晶体管控制的问题

《ARM Linux入门与实践》一书当中,关于触摸屏的那一节有几个地方不理解。 该程序的说明是:“代码并没有使用S3C2410A中的触摸屏控制器,而是通过直接控制FPIO的4个晶体管的导通和截止” P220: void Wait_Touch(void) {     XMON_O ...…

查看全部问答>

dll库加载的问题

自己写了一个实现tapi的库 怎么加载到windows ce中呢? 用的编译环境是EVC…

查看全部问答>

我的最新充电原理图提交

上次提交的原理图,由于美信没有提供MAX17005B充电管理芯片,导致无法进行下去。为此,重新在美信网站溜达一圈,按照以下原则,确定该次芯片选型和原理图设计。   1。 芯片没有停产,可以继续使用,美信提供样品。   2。 封装不能是QFN ...…

查看全部问答>

关于工业以太网问题请教

组建一个简单的工业以太网,一台x86工控机当服务器,用网线联一台工业以太网交换机,交换机再连一台PLC,PLC 连接底层设备。 假设服务器上我装的就是普通的windows XP操作系统,上面运行我的工控软件。 请问我这个算是工业以太网吗?工业以太网不 ...…

查看全部问答>

<50元的FPGA核心板,会否有朋友顶啊?

    近来忙着家事,有一段时间没有上来了,今天顺着2011-1-11,这么多棍棍的日子,上来溜达一下。     看到自从夏老师到网站上来座镇解答FPGA的相关问题,网站上FPGA的热情洋溢,很有气氛,觉得这里有蛮多朋友 ...…

查看全部问答>

有没申请过Cosmic公司免费的ST16K代码限制的编译器的?

一般申请要多久才能批呀还有申请时要注意什么我都申请快一天了这么还没呀…

查看全部问答>

高分拜请高手扔掉main函数?

main函数,我想大家都了解,只要你会C编程,你就会知道main?我想它是比你第一个 "hello world!"还早的程序。可是它的作用呢?我想不是每个会C编程的人都知道?如果 当你有一天可以对main说拜拜时,那你就算是入门了!这里高手如云,望 ...…

查看全部问答>

请问能否仅通过430的串口往里面烧写程序?

请问能否仅通过430的串口往里面烧写程序? 谢谢! 搜了一下,有很多卖BSL的,除了需要TXD、RXD外,还需要一些别的脚。 有没有这么一种软件?当430的串口与计算机串口通过MAX232之类的芯片一接,在电脑上运行这个软件,直接就把程序烧进去了。…

查看全部问答>