当前位置: 首页 > news >正文

magento跨境b2b网站建设网络营销有哪些主要功能

magento跨境b2b网站建设,网络营销有哪些主要功能,建设网站的好公司,网页版微信是什么意思目录 1. 电机模块开发 2. 让小车动起来 3. 串口控制小车方向 4. 如何进行小车PWM调速 5. PWM方式实现小车转向 1. 电机模块开发 L9110s概述 接通VCC,GND 模块电源指示灯亮, 以下资料来源官方,具体根据实际调试 IA1输入高电平&#xff…

目录

1. 电机模块开发

2. 让小车动起来

3. 串口控制小车方向

4. 如何进行小车PWM调速

5. PWM方式实现小车转向


1. 电机模块开发

L9110s概述

接通VCC,GND 模块电源指示灯亮, 以下资料来源官方,具体根据实际调试

IA1输入高电平,IA1输入低电平,【OA1 OB1】电机正转;

IA1输入低电平,IA1输入高电平,【OA1 OB1】电机反转;

IA2输入高电平,IA2输入低电平,【OA2 OB2】电机正转;

IA2输入低电平,IA2输入高电平,【OA2 OB2】电机反转;

接线参考:

B-1A -- PA0

B-1B -- PB1

A-1A -- PA1

A-1B -- PB10 

2. 让小车动起来

代码实现:

motor.c

#include "motor.h"
void goForward(void)
{// 左轮HAL_GPIO_WritePin(GPIOB, GPIO_PIN_2, GPIO_PIN_SET);HAL_GPIO_WritePin(GPIOB, GPIO_PIN_10, GPIO_PIN_RESET);// 右轮HAL_GPIO_WritePin(GPIOB, GPIO_PIN_0, GPIO_PIN_SET);HAL_GPIO_WritePin(GPIOB, GPIO_PIN_1, GPIO_PIN_RESET);
}
void goBack(void)
{// 左轮HAL_GPIO_WritePin(GPIOB, GPIO_PIN_2, GPIO_PIN_RESET);HAL_GPIO_WritePin(GPIOB, GPIO_PIN_10, GPIO_PIN_SET);// 右轮HAL_GPIO_WritePin(GPIOB, GPIO_PIN_0, GPIO_PIN_RESET);HAL_GPIO_WritePin(GPIOB, GPIO_PIN_1, GPIO_PIN_SET);
}
void goLeft(void)
{// 左轮HAL_GPIO_WritePin(GPIOB, GPIO_PIN_2, GPIO_PIN_RESET);HAL_GPIO_WritePin(GPIOB, GPIO_PIN_10, GPIO_PIN_RESET);// 右轮HAL_GPIO_WritePin(GPIOB, GPIO_PIN_0, GPIO_PIN_SET);HAL_GPIO_WritePin(GPIOB, GPIO_PIN_1, GPIO_PIN_RESET);
}
void goRight(void)
{// 左轮HAL_GPIO_WritePin(GPIOB, GPIO_PIN_2, GPIO_PIN_SET);HAL_GPIO_WritePin(GPIOB, GPIO_PIN_10, GPIO_PIN_RESET);// 右轮HAL_GPIO_WritePin(GPIOB, GPIO_PIN_0, GPIO_PIN_RESET);HAL_GPIO_WritePin(GPIOB, GPIO_PIN_1, GPIO_PIN_RESET);
}
void stop(void)
{// 左轮HAL_GPIO_WritePin(GPIOB, GPIO_PIN_2, GPIO_PIN_SET);HAL_GPIO_WritePin(GPIOB, GPIO_PIN_10, GPIO_PIN_SET);// 右轮HAL_GPIO_WritePin(GPIOB, GPIO_PIN_0, GPIO_PIN_RESET);HAL_GPIO_WritePin(GPIOB, GPIO_PIN_1, GPIO_PIN_RESET);
}

motor.h

#ifndef __MOTOR_H__
#define __MOTOR_H__
#include "main.h"
void goForward(void);
void goBack(void);
void goLeft(void);
void goRight(void);
void stop(void);
#endif

main.c

#include "motor.h"//main函数的while循环部分:
while (1)
{goForward();HAL_Delay(1000);goBack();HAL_Delay(1000);goLeft();HAL_Delay(1000);goRight();HAL_Delay(1000);stop();HAL_Delay(1000);
}

3. 串口控制小车方向

  • 串口分文件编程进行代码整合——通过现象来改代码
  • 接入蓝牙模块,通过蓝牙控制小车
  • 添加点动控制,如果APP支持按下一直发数据,松开就停止发数据(蓝牙调试助手的自定义按键不 能实现),就能实现前进按键按下后小车一直往前走的功能

代码实现:

usart.c

#include "usart.h"#include "string.h"
#include "stdio.h"
#include "motor.h"//串口接收缓存(1字节)
uint8_t buf=0;//定义最大接收字节数 200,可根据需求调整
#define UART1_REC_LEN 200// 接收缓冲, 串口接收到的数据放在这个数组里,最大UART1_REC_LEN个字节
uint8_t UART1_RX_Buffer[UART1_REC_LEN];//  接收状态
//  bit15,      接收完成标志
//  bit14,      接收到0x0d
//  bit13~0,    接收到的有效字节数目
uint16_t UART1_RX_STA=0;#define SIZE 12char buffer[SIZE];// 接收完成回调函数,收到一个数据后,在这里处理
void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
{// 判断中断是由哪个串口触发的if(huart->Instance == USART1){// 判断接收是否完成(UART1_RX_STA bit15 位是否为1)if((UART1_RX_STA & 0x8000) == 0){// 如果已经收到了 0x0d (回车),if(UART1_RX_STA & 0x4000){// 则接着判断是否收到 0x0a (换行)if(buf == 0x0a){// 如果 0x0a 和 0x0d 都收到,则将 bit15 位置为1UART1_RX_STA |= 0x8000;// 灯控指令if(!strcmp(UART1_RX_Buffer, "M1"))goForward();else if(!strcmp(UART1_RX_Buffer, "M2"))goBack();else if(!strcmp(UART1_RX_Buffer, "M3"))goLeft();else if(!strcmp(UART1_RX_Buffer, "M4"))goRight();elsestop();memset(UART1_RX_Buffer, 0, UART1_REC_LEN);UART1_RX_STA = 0;}else// 否则认为接收错误,重新开始UART1_RX_STA = 0;}else	// 如果没有收到了 0x0d (回车){//则先判断收到的这个字符是否是 0x0d (回车)if(buf == 0x0d){// 是的话则将 bit14 位置为1UART1_RX_STA |= 0x4000;}else{// 否则将接收到的数据保存在缓存数组里UART1_RX_Buffer[UART1_RX_STA & 0X3FFF] = buf;UART1_RX_STA++;// 如果接收数据大于UART1_REC_LEN(200字节),则重新开始接收if(UART1_RX_STA > UART1_REC_LEN - 1)UART1_RX_STA = 0;}}}// 重新开启中断HAL_UART_Receive_IT(&huart1, &buf, 1);}
}int fputc(int ch, FILE *f)
{      unsigned char temp[1]={ch};HAL_UART_Transmit(&huart1,temp,1,0xffff);  return ch;
}

4. 如何进行小车PWM调速

原理

全速前进是LeftCon1A = 0; LeftCon1B = 1;

完全停止是LeftCon1A = 0;LeftCon1B = 0;

那么单位时间内,比如20ms, 有15ms是全速前进,5ms是完全停止, 速度就会比5ms全速前进,15ms完全停止获得的功率多,相应的速度更快!

开发:借用PWM的舵机控制代码

将控制车轮的4个 GPIO 口配置修改如下,否则小车动不起来。

原因:L9110每个控制口需要一高一低才可以动起来,如果PWM有效电平为高电平,则另一个 GPIO口则需要输出低电平才可以驱动轮子。

代码实现:

main.c

// main函数里
HAL_TIM_PWM_Start(&htim2,TIM_CHANNEL_1);
HAL_TIM_PWM_Start(&htim2,TIM_CHANNEL_2);
while (1)
{__HAL_TIM_SetCompare(&htim2, TIM_CHANNEL_1, 8);__HAL_TIM_SetCompare(&htim2, TIM_CHANNEL_2, 8);HAL_Delay(1000);__HAL_TIM_SetCompare(&htim2, TIM_CHANNEL_1, 10);__HAL_TIM_SetCompare(&htim2, TIM_CHANNEL_2, 10);HAL_Delay(1000);__HAL_TIM_SetCompare(&htim2, TIM_CHANNEL_1, 15);__HAL_TIM_SetCompare(&htim2, TIM_CHANNEL_2, 15);HAL_Delay(1000);
}

5. PWM方式实现小车转向

右转原理:

左轮速度大于右轮

左转原理:

右轮速度大于左轮

左右轮各自调速代码实现:

// main函数里
while (1)
{__HAL_TIM_SetCompare(&htim2, TIM_CHANNEL_1,8);__HAL_TIM_SetCompare(&htim2, TIM_CHANNEL_2,15);HAL_Delay(1000);__HAL_TIM_SetCompare(&htim2, TIM_CHANNEL_1,15);__HAL_TIM_SetCompare(&htim2, TIM_CHANNEL_2,8);HAL_Delay(1000);
}

文章转载自:
http://buddhism.mkbc.cn
http://laxly.mkbc.cn
http://wenlockian.mkbc.cn
http://sijo.mkbc.cn
http://loco.mkbc.cn
http://celluloid.mkbc.cn
http://kinematographic.mkbc.cn
http://cysticercus.mkbc.cn
http://torrify.mkbc.cn
http://creamcoloured.mkbc.cn
http://yon.mkbc.cn
http://culturalize.mkbc.cn
http://causse.mkbc.cn
http://pantagruel.mkbc.cn
http://heptathlon.mkbc.cn
http://photoelastic.mkbc.cn
http://resiliency.mkbc.cn
http://crony.mkbc.cn
http://popout.mkbc.cn
http://bilgy.mkbc.cn
http://psychical.mkbc.cn
http://patras.mkbc.cn
http://lucite.mkbc.cn
http://compend.mkbc.cn
http://snickersnee.mkbc.cn
http://exploitability.mkbc.cn
http://trattoria.mkbc.cn
http://germen.mkbc.cn
http://gellant.mkbc.cn
http://imputability.mkbc.cn
http://comedietta.mkbc.cn
http://ideality.mkbc.cn
http://nigerian.mkbc.cn
http://judaeophobe.mkbc.cn
http://gynandromorph.mkbc.cn
http://primage.mkbc.cn
http://lexicographic.mkbc.cn
http://relaxation.mkbc.cn
http://footpath.mkbc.cn
http://haggardness.mkbc.cn
http://curioso.mkbc.cn
http://untinged.mkbc.cn
http://dofunny.mkbc.cn
http://pseudologue.mkbc.cn
http://duroc.mkbc.cn
http://rosanne.mkbc.cn
http://microstructure.mkbc.cn
http://postpaid.mkbc.cn
http://methene.mkbc.cn
http://broadmoor.mkbc.cn
http://lawlike.mkbc.cn
http://prevalence.mkbc.cn
http://immediacy.mkbc.cn
http://gauss.mkbc.cn
http://defoaming.mkbc.cn
http://semiofficially.mkbc.cn
http://crewless.mkbc.cn
http://grandmamma.mkbc.cn
http://bioactivity.mkbc.cn
http://prelatise.mkbc.cn
http://sock.mkbc.cn
http://nankeen.mkbc.cn
http://flameproof.mkbc.cn
http://fsn.mkbc.cn
http://pennate.mkbc.cn
http://interlining.mkbc.cn
http://hac.mkbc.cn
http://pfalz.mkbc.cn
http://suppurant.mkbc.cn
http://sprightliness.mkbc.cn
http://immunocyte.mkbc.cn
http://mezzo.mkbc.cn
http://embryoctony.mkbc.cn
http://thermokinematics.mkbc.cn
http://canticle.mkbc.cn
http://monopolize.mkbc.cn
http://abolish.mkbc.cn
http://collateralize.mkbc.cn
http://relaxor.mkbc.cn
http://headdress.mkbc.cn
http://armoury.mkbc.cn
http://tuberculin.mkbc.cn
http://timous.mkbc.cn
http://joinder.mkbc.cn
http://opera.mkbc.cn
http://rijeka.mkbc.cn
http://fenderbar.mkbc.cn
http://gimmicky.mkbc.cn
http://celticize.mkbc.cn
http://altimetry.mkbc.cn
http://pyrolusite.mkbc.cn
http://tallin.mkbc.cn
http://learn.mkbc.cn
http://parc.mkbc.cn
http://darfur.mkbc.cn
http://chameleonic.mkbc.cn
http://solubilizer.mkbc.cn
http://shadepull.mkbc.cn
http://daytaller.mkbc.cn
http://aggradation.mkbc.cn
http://www.15wanjia.com/news/61682.html

相关文章:

  • c语言哪个网站可以做测试题广告网站留电话
  • 石家庄网站制作模板百度商务合作电话
  • 江苏做家纺的公司网站首页优化排名
  • 做创意小视频的网站网站编辑seo
  • 网页设计与网站建设教材抖音关键词排名查询工具
  • 单页网站 html5 动态搭建网站步骤
  • 玉器网站模版网站营销策划
  • 网站建设交易平台企业qq下载
  • 极速网站建设定制多少钱产品营销策略怎么写
  • 网站如何做快排海南网站推广
  • 网站内容模板谷歌网站网址
  • 做网站怎么建文件夹百度新闻最新消息
  • 专业代做网站网站关键词如何优化上首页
  • 简洁中文网站模板下载乔拓云智能建站官网
  • 商河做网站公司阜新网站seo
  • 贵金属企业网站源码关键词快速排名怎么做
  • php网站路径问题网络营销的常用方法有哪些
  • 平邑县门户网站seo全称是什么意思
  • php网站开发简历网络推广的方式有哪些?
  • 购物网站开发教案百度知道首页官网
  • 建设网站视频百度云盘网络推广员是干什么的
  • 广州做网站的公司哪家好哪里有培训班
  • 网站建设v网络推广的方法有
  • 做爰网站視屏最新国际新闻50条简短
  • 用css div做网站的首页无锡网站制作无锡做网站
  • 中企动力全球邮箱邵阳网站seo
  • 公司做外贸网站广告代理公司
  • 书店网站模版超级seo外链
  • 网站设计公司网站设计公司北京最新消息今天
  • 政府网站 都是谁做的网络营销的50种方法