Stm32f103c8
类别:集成电路(IC)
家庭:嵌入式-微控制器
总线宽度:32-位
速度:72MHz
外围设备:DMA,电机控制PWM,PWM,温度传感器
输入/输出数:37
程序存储器容量:64KB (64K x 8)
程序存储器类型:FLASH
RAM容量:20K x 8
电压-电源(Vcc/Vdd):2 V ~ 3.6 V
数据转换器:A/D 10x12b
振荡器型:内部
工作温度:-40°C ~ 85°C
封装/外壳:48-LQFP
包装:托盘
1.2外围模块资源清单
模块 驱动芯片 相关引脚 寄存器使用
LED1、LED2、LED3 \ PB11—LED1(1亮)
PB14—LED2(1亮)
PA11—LED1(1亮) GPIOA、GPIOB
KEY1、KEY2、KEY3 \ PA0—KEY1(1代表按键动作)
PA8—KEY2(0代表按键动作)
PB10—KEY3(0代表按键动作) GPIOA、GPIOB
继电器 \ PB1 GPIOB
全彩RGB灯珠 P9813 PB9-----------RGB_DATA
PB8-----------RGB_CLK GPIOB
wifi模块 Esp8266 PA2-----------USART2_TX
PA3-----------USART2_RX GPIOA、USART2
直流电机 L9110s PB4—motorA(tim3ch1)
PB5—motorB(tim3ch2) GPIOB、TIM3
步进电机 Lb1936 PA7–A相
PA6–A反相
PA5–B相
PA4–B反相 GPIOA、TIM1
温湿度传感器 dht11 PB3–DHT11_DATA GPIOB、SysTick
oled屏 Sh1106 复位:OLED_RES-----------PB6
片选:OLED_CS-----------PB7
数据、命令:OLED_D/C-----------PB12
时钟线:OLED_SCLK-----------PB13
输入OLED_SDIN-----------PB15
时钟线PB13和输入PB15用作SPI复用功能 GPIOB、SPI2
红外接收头 \ PA1—TIM2_CH2 GPIOA、TIM2
1.3一张图了解一下
1.4 编程流程图了解一下
二、各模块的使用
下载接口连接方式
简单元器件如LED、KEY、继电器不赘述,这里提到的模块有wifi模块、OLED屏、温湿度传感器、rgb全彩灯珠、小型步进电机和直流电机。
2.1 wifi模块:esp8266
2.1.1 初始化(AT固件烧录)
Esp8266可以使用串口通信与pc端交换数据,使用到引脚VCC、GND、UTXD、URXD。
第一步:
打开烧录软件
下载的固件在网站上下载,
注意:要烧录的文件所放的路径不要太深。
本模块采用的是安信可出厂默认 AT固件,固件下载地址如下:
http://wiki.ai-thinker.com/esp8266/sdk
第二步
点击start开始下载,必要时进行复位,load模式。
下载成功后,打开串口调试助手,波特率设置为76800,然后复位,得到如下信息:
2.1.2 常用指令
相关手册:
波特率改为115200
指令1:发送 AT测试指令:AT\r\n
回复
AT
OK
指令2:WIFI 模式设置指令:AT+CWMODE_DEF=1
回复
AT+CWMODE_DEF=1
OK
注:station模式(客户端模式)
在此模式下,模块相当于一个客户端,可以链接到其他路由器发出的 WIFI 信号。
softAP 模式(软路由模式)
在此模式下,模块本身相当于一个路由器,其他设备可以链接到该模块发送的信号。
station+softAP 模式(混合模式)
在此模式下,模块可在与其他设备链接的同时充当路由器,结合上面两种模式的综合。
指令3:WIFI 模式查询指令:AT+CWMODE?
回复
AT+CWMODE?
+CWMODE:1 //1:station 模式 2:softAP 模式 3:station+softAP 模式
OK
指令4:连接 AP 指令:AT+CWJAP_DEF=”mwh”,”123123123”
回复
AT+CWJAP_DEF=“mwh”,“123123123”
WIFI CONNECTED
WIFI GOT IP
OK
注:本设置会保存到 flsh system parameter 区域
指令5:断开与 AP连接指令:AT+CWQAP
回复
AT+CWQAP
OK
WIFI DISCONNECT
指令6:WIFI 模式设置指令:AT+CWMODE_DEF=2
回复
AT+CWMODE=2
OK
指令7:配置 softAP 参数指令:AT+CWSAP_DEF=“mwh_esp8266”,“123123123”,5,3
回复
AT+CWSAP_DEF=“mwh_esp8266”,“123123123”,5,3
OK
注:本设置会保存到 flsh system parameter 区域
指令8:查询连接到 ESP8266 softAP 的 stations 信息指令:AT+CWLIF
回复
AT+CWLIF
192.168.4.2,b8:ee:65:e0:5f:34
OK
2.1.3 STA模式连接 TCP Server 透传
TCP(Transmission Control Protocol,传输控制协议)是基于连接的协议,也就是说,在正式收发数据前,必须和对方建立可靠的连接。一个 TCP 连接必须要经过三次“握手”才能建立起。
TCP 协议能为应用程序提供可靠的通信连接,使一台计算机发出的字节流无差错地发往网络上的其他计算机,对可靠性要求高的数据通信系统往往使用 TCP 协议传输数据。
注:指令后面一般要加\r\n
1.配置 WiFi 模组工作模式为单 STA模式,并把配置保存在 flash
指令:AT+CWMODE_DEF=1
响应:OK
连接路由器,保存在 flash
指令:AT+CWJAP_DEF=“118”,“88826131”
响应:OK
查询 ESP8266 IP 地址
指令:AT+CIFSR
响应:+CIFSR:STAIP,“192.168.0.108”
+CIFSR:STAMAC,“b4:e6:2d:53:ee:04”
连接 TCP 服务器
指令:AT+CIPSTART=“TCP”,“192.168.0.106”,8080
响应:OK
5.开启透传模式传输数据
指令:AT+CIPMODE=1
响应:OK
7.结束穿透模式
指令:+++
响应:
注:后面不用加\r\n
9.断开与 AP 的连接
指令:AT+CWQAP
响应:OK
另:开启服务器模拟
A:开启服务器
B:查询IP
打开CMD