标题: STM32+ESP8266遥控Wifi小车程序设计与安卓APP使用资料下载 [打印本页]
作者: 就那一点 时间: 2018-1-23 11:08
标题: STM32+ESP8266遥控Wifi小车程序设计与安卓APP使用资料下载
Wifi遥控小车使用说明
本例程采用ESP8266 wifi模块与STM32串口连接,并提供AT指令封装库与STM32通讯,实现如下的通讯方式:
1、硬件部分
Wifi模块丝印图即引脚如下:
硬件连接如下:
2、手机APP部分
APP部分我们采用常用的APP wifi调试软件 ITEAD WIFI,安装完成后打开

如下界面,点击Set up进入设置:
进入后会自动获取到手机的IP,注意手机是连接到一个路由器下的,支持局域网内调试,先设置端口,一般是 8080
然后设置指令,我们使用到了如下红框内的指令,指令协议可以参考工程文件interface.h有如下描述:
//指令定义
#define COMM_STOP 'I'//停止
#define COMM_UP 'A'//前进
#define COMM_DOWN 'B'//后退
#define COMM_LEFT 'C'//左转
#define COMM_RIGHT 'D'//右转
指令设置好之后就可以启动服务了,如下点击开始就好了
设置完成后如下,这里记下服务端IP和端口号,我这里是 192.168.31.195,端口 8080 ,然后返回:
3、stm32软件部分
设置完APP软件后,再来修改我们的工程文件,打开工程“wifi遥控小车”,打开main.c文件,修改红框内信息:
HOST_NAME和HOST_PORT为手机上面的IP和端口号,SSID为您的路由器名,PSD为路由器密码,修改好后重新编译后下载。
下载完成复位一下,就可以运行了,程序会自动连接手机开启的服务,实现TCP/IP通信,连接成功后,看手机端的设置会有如下提示:
本程序还是用了串口1来输出调试信息,将串口1连接电脑后也会在串口调试助手看到如下信息:
连接成功后即可在如下界面按键,操作小车运行:

如有其他问题请先详细参考wifi模块资料以及本实验程序。
stm32单片机源程序:
- /********************************* 深圳市航太电子 *******************************
- * 实 验 名 :小车蓝牙遥控实验
- * 实验说明 :使用手机连接蓝牙模块后,通过手机发送指令来控制小车
- * 实验平台 :航太ARM单片机开发板
- * 连接方式 :请参考interface.h文件
- * 注 意 :指令必须连续发送才会使小车动作,若停止发送指令,则小车会停止
- ****************************************************************************************/
- #include "stm32f10x.h"
- #include "interface.h"
- #include "LCD1602.h"
- #include "IRCtrol.h"
- #include "motor.h"
- #include "uart.h"
- #include "ESP8266.h"
- #include "serialportAPI.h"
- #include <stdlib.h>
- #include <stdio.h>
- //全局变量定义
- unsigned int speed_count=0;//占空比计数器 50次一周期
- char front_left_speed_duty=SPEED_DUTY;
- char front_right_speed_duty=SPEED_DUTY;
- char behind_left_speed_duty=SPEED_DUTY;
- char behind_right_speed_duty=SPEED_DUTY;
- unsigned char tick_5ms = 0;//5ms计数器,作为主函数的基本周期
- unsigned char tick_1ms = 0;//1ms计数器,作为电机的基本计数器
- unsigned char tick_200ms = 0;//刷新显示
- unsigned int tick_3s = 0;//隔3s断线检测
- char ctrl_comm = COMM_STOP;//控制指令
- unsigned char continue_time=0;
- unsigned char wifi_rec_flag=0;//蓝牙控制标志位
- #define HOST_NAME "192.168.31.195" //主机IP
- #define HOST_PORT 8080 //主机端口
- #define SSID "Hantech" //路由器名
- #define PSD "hantechinternet" //密码
- #define RECVBUF_SIZE 16
- unsigned char buffer[RECVBUF_SIZE] = {0};
- int main(void)
- {
- USART1Conf(9600);
- DBG("system begin");
- delay_init();
- GPIOCLKInit();
- UserLEDInit();
- LCD1602Init();
- TIM2_Init();
- MotorInit();
- ServoInit();
- // USART3Conf(9600);
- while(1)
- {
- DBG("chang baud");
-
- UartBegin(115200,&USART3Conf,&PutChar);//每次设置完波特率后需要做一点延时
- delay(500);
- SetBaud(19200);
- UartBegin(19200,&USART3Conf,&PutChar);//更改波特率到19200
- delay(500);
- if(0 != SetBaud(19200))//在新波特率下检查是否成功
- {
- break;//成功就退出
- }
- }
- while(0 == WifiInit(SSID,PSD,HOST_NAME,HOST_PORT));
-
- while(1)
- {
- if(SerialAvailable() > 5)//接收到至少5个字符
- {
- int len;
- len = recv(buffer, RECVBUF_SIZE, 100);
- if (len > 0)
- {
- char inChar;
- inChar = buffer[0];
- // send(buffer, len);
- if (ctrl_comm != inChar || continue_time == 1)
- {
- wifi_rec_flag = 1;
- ctrl_comm = inChar;
- }
- continue_time = 60;//更新持续时间
- tick_3s = 0;//心跳包周期
- }
- }
-
- if(tick_5ms >= 5)
- {
- tick_5ms = 0;
- tick_200ms++;
- if(tick_200ms >= 40)
- {
- tick_200ms = 0;
- tick_3s++;
- LEDToggle(LED_PIN);
- if(tick_3s >= 15)//15*200=3000
- {
- tick_3s = 0;
- //定时检查连接是否正常,如果不正常,wifi复位重新连接
- if (getSystemStatus() != STATUS_GETLINK)
- {
- DBG("TCP unlink");
- while(!WifiInit(SSID,PSD,HOST_NAME,HOST_PORT));
- }else
- {
- DBG("TCP link tick");
- }
- }
- }
- //continue_time--;//200ms 无接收指令就停车
- if(continue_time == 0)
- {
- continue_time = 1;
- CarStop();
- }
- //do something
- if(wifi_rec_flag == 1)//接收到红外信号
- {
- wifi_rec_flag = 0;
- switch(ctrl_comm)
- {
- case COMM_UP: CarGo();break;
- case COMM_DOWN: CarBack();break;
- case COMM_LEFT: CarLeft();break;
- case COMM_RIGHT: CarRight();break;
- case COMM_STOP: CarStop();break;
- default : break;
- }
- LCD1602WriteCommand(ctrl_comm);
- DBG("recv COMM");
- }
- }
-
- }
- }
复制代码
全部资料下载(stm32源码+app+资料):
11.wifi遥控小车实验.7z
(1.65 MB, 下载次数: 801)
作者: ldclovehy 时间: 2018-2-1 10:47
挺不错的源程序,很有用
作者: 打工鱼 时间: 2018-3-7 23:01
需要app下一个
作者: billtest36 时间: 2018-3-16 09:55
太好了 感謝版主您的分享
作者: 76711031 时间: 2018-3-22 22:49
看看资料
作者: aking991 时间: 2018-3-31 16:48
可惜我还没会STM32的单片机
作者: qxs_ 时间: 2018-4-15 16:13
很想下载这个材料怎么办,但是没有足够的黑币,看来我要加油了
作者: lxz1400810216 时间: 2018-4-16 19:00
学习学习
作者: leuku 时间: 2018-5-30 14:30
感谢分享
作者: liuyuxi1123 时间: 2018-6-7 13:21
我正要学习遥操作
作者: 菊一文字 时间: 2018-8-22 17:22
大家共同学习,我分享的esp8266:http://www.51hei.com/bbs/dpj-132715-1.html
作者: 风和日丽233 时间: 2018-9-17 09:07
新手下载观摩
作者: mhj258258 时间: 2018-11-14 10:21
看上去不错谢谢
作者: wuqiang0102 时间: 2018-12-8 16:19
怎么下载
作者: qwertabcd 时间: 2018-12-8 17:30
这东西好,就是没黑笔
作者: whkang 时间: 2018-12-10 14:28
支持一下,最近一直在做8266相关的东西。哈哈
作者: hozhiwen 时间: 2018-12-10 22:45
请问你是用什么软件编写手机APP的呢?可经公布编手机APP软件吗?
作者: hhhhhhtt 时间: 2019-1-16 17:09
观察学习
作者: HXXXX 时间: 2019-1-20 16:12
请问电机和STM32是怎么连接的 那个引脚接电机
作者: 刚哥哥 时间: 2019-3-13 09:14
我看马达引脚定义8个,四个轮子都单独控制的吗?
作者: zhanglijin 时间: 2019-3-17 22:01
用手机网络可以使用吗?
作者: IoTram 时间: 2019-3-18 14:43
今年年初,ESP-EYE的参考设计正式上线,这绝对是近来AIoT应用的最接地气方案之一。令许多用户惊喜的是,利用ESP-EYE这设计,就可以轻易试水人脸识别的开发。
这里和还没注意到的各位朋友分享一下!
以下是入门指南 :
https://github.com/espressif/esp ... ng_Started_Guide.md
基于搭载 ESP32 芯片、200 W 像素摄像头、数字麦克风、8 MB PSRAM 和 4 MB Flash,开发者就可动手人脸识别的 AI 应用开发。重点来了: 因为有图传功能,用上PSRAM,就可作为内存缓冲功能,存储计算空间多了,视觉上的识别性能表现当然更优。而我的公司就是生产PSRAM的厂商。需要PSRAM可以找我啊 !
利用ESP-EYE能开发的应用方面,我来举例一下:
最主打的,应该是 : 门禁、考勤、自动售卖设备、智能储物锁、VIP识别系统,这些基於人脸识别的系统,都可利用ESP EYE的基础去进行深度开发。
另外,识物应用也有很广泛的应用可能性。如工厂生产线的图像检查、警报装置、环境监察、农作物品质分类。
此外,该开发板还支持 Wi-Fi 图像传输、Micro USB 调试和供电,可以实现语音唤醒,可协助用户开发高度集成的 AI 解决方案。
希望以上一些分享能对大家有帮助,欢迎交流~~
作者: wang8128 时间: 2019-3-21 13:16
绝对支持,谢谢分享
作者: 西点钟灵毓秀 时间: 2019-3-21 15:34
STM32+ESP8266遥控Wifi小车程序设计与安卓APP使用资料下载
作者: yxhall 时间: 2019-3-27 02:15
好棒的样子,赞,好想试试
作者: liumeizhoufind7 时间: 2019-4-14 01:35
很好很强大
作者: 199610123 时间: 2019-4-29 08:52
四轮和两轮
作者: 199610123 时间: 2019-4-29 08:53
四轮和两轮小车操作起来有差别的嘛?这个程序
作者: 强强96 时间: 2019-5-4 17:04
敢问楼主大神,怎么改动让小车变为点动???
作者: 强强96 时间: 2019-5-4 17:05
这个程序输出的是8口,两个机的,只接前面4个io就行
作者: 强强96 时间: 2019-5-4 17:21
点动问题解决了,请问下怎么改成AP模式,手机连8266
作者: lysoon 时间: 2019-6-11 14:00
一直需要这个例子,谢谢分享
作者: lysoon 时间: 2019-6-11 14:01
挺不错的源程序,很有用
作者: aaaaaa。 时间: 2019-6-12 16:12
谢谢大佬分享
作者: shuixinshi 时间: 2019-6-29 11:26
怎么下了都是空白的
作者: 没有名字 时间: 2019-8-2 20:32
电机驱动用的什么?
作者: chang51hei 时间: 2019-8-9 16:36
不知道怎么改为在AP模式下
作者: chang51hei 时间: 2019-8-9 16:39
怎么改为在ESP8266的AP模式下,STM32和手机通信进行小车控制
作者: QSM980405 时间: 2019-8-22 14:37
好东西,谢谢
作者: 马51hei33 时间: 2019-9-7 21:40
麻烦问一下编程用的是什么软件,是keil吗?还是别的?
作者: qcwy16 时间: 2019-12-6 09:37
挺不错的,学习一下
作者: kklkjhs 时间: 2020-5-9 13:13
学习学习
作者: magicfu 时间: 2020-5-10 00:15
感谢牛人分享,很不错
作者: 小小张。。 时间: 2020-11-13 23:59
非常有用感谢分享
作者: 40560335 时间: 2020-11-14 00:33
感谢分享,这个APP挺有意思,收藏了
作者: sdfkdsnfksfsdg 时间: 2020-12-17 15:35
支持一下,最近一直在做8266相关的东西。哈哈
作者: 天下无敌 时间: 2020-12-20 19:22
绝对支持,谢谢分享
作者: 6663 时间: 2021-5-10 19:50
思路清晰
作者: 涛之雨 时间: 2022-3-23 09:20
学习一下,要是再有仿真图就更好了
欢迎光临 (http://www.51hei.com/bbs/) |
Powered by Discuz! X3.1 |