資源簡介
本例程通過stm32f103使用WiFi-ESP8266 WiFi模塊與外界進行數(shù)據(jù)傳輸, 即ESP8266 WIFI模塊STA TCPClent透傳測試實驗

代碼片段和文件信息
#include?“esp8266_drive.h“
#include?“SysTick.h“
#include???
#include???
#include?
#include?“sta_tcpclent_test.h“
#include?“esp8266_public.h“
struct?STRUCT_USART_Fram?ESP8266_Fram_Record_Struct?=?{?0?};
void?USART3_Init(u32?bound)
{
?? GPIO_InitTypeDef?GPIO_InitStructure;
USART_InitTypeDef?USART_InitStructure;
NVIC_InitTypeDef?NVIC_InitStructure;
?
RCC_APB1PeriphClockCmd(RCC_APB1Periph_USART3?ENABLE);
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB?ENABLE);
?? GPIO_InitStructure.GPIO_Pin?=?GPIO_Pin_10;?//PB10
?? GPIO_InitStructure.GPIO_Speed?=?GPIO_Speed_50MHz;
?? GPIO_InitStructure.GPIO_Mode?=?GPIO_Mode_AF_PP; //復用推挽輸出
?? GPIO_Init(GPIOB?&GPIO_InitStructure);
???
?? GPIO_InitStructure.GPIO_Pin?=?GPIO_Pin_11;//PB11
?? GPIO_InitStructure.GPIO_Mode?=?GPIO_Mode_IN_FLOATING;//浮空輸入
?? GPIO_Init(GPIOB?&GPIO_InitStructure);//初始化GPIOB?11??
??
//Usart3?NVIC?配置
?? NVIC_InitStructure.NVIC_IRQChannel?=?USART3_IRQn;
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority=0?;//搶占優(yōu)先級0
NVIC_InitStructure.NVIC_IRQChannelSubPriority?=?0; //子優(yōu)先級0
NVIC_InitStructure.NVIC_IRQChannelCmd?=?ENABLE; //IRQ通道使能
NVIC_Init(&NVIC_InitStructure); //根據(jù)指定的參數(shù)初始化VIC寄存器
??? //USART3?初始化設置
USART_InitStructure.USART_BaudRate?=?bound;//串口波特率
USART_InitStructure.USART_WordLength?=?USART_WordLength_8b;//字長為8位數(shù)據(jù)格式
USART_InitStructure.USART_StopBits?=?USART_StopBits_1;//一個停止位
USART_InitStructure.USART_Parity?=?USART_Parity_No;//無奇偶校驗位
USART_InitStructure.USART_HardwareFlowControl?=?USART_HardwareFlowControl_None;//無硬件數(shù)據(jù)流控制
USART_InitStructure.USART_Mode?=?USART_Mode_Rx?|?USART_Mode_Tx; //收發(fā)模式
?? USART_Init(USART3?&USART_InitStructure);?//初始化串口3
?? USART_ITConfig(USART3?USART_IT_RXNE?|?USART_IT_IDLE?ENABLE);//開啟串口接受和總線空閑中斷
??
USART_Cmd(USART3?ENABLE);????????????????????//使能串口3?
}
void?USART3_IRQHandler(?void?)
{
u8?ucCh;
if(USART_GetITStatus(?USART3?USART_IT_RXNE?)?!=?RESET?)
{
ucCh??=?USART_ReceiveData(?USART3?);
if(ESP8266_Fram_Record_Struct?.InfBit?.FramLength?(?RX_BUF_MAX_LEN?-?1?)?)?
{
//預留1個字節(jié)寫結束符
ESP8266_Fram_Record_Struct?.Data_RX_BUF[?ESP8266_Fram_Record_Struct?.InfBit?.FramLength?++?]??=?ucCh;
}??????????????????????
}
? ?
if(?USART_GetITStatus(?USART3?USART_IT_IDLE?)?==?SET?)?????????????????????????????????????????//數(shù)據(jù)幀接收完畢
{
???? ESP8266_Fram_Record_Struct?.InfBit?.FramFinishFlag?=?1;
ucCh?=?USART_ReceiveData(?USART3?);??????????????????????????????????????????????????????????????//由軟件序列清除中斷標志位(先讀USART_SR,然后讀USART_DR)
TcpClosedFlag?=?strstr?(?ESP8266_Fram_Record_Struct?.Data_RX_BUF?“CLOSED\r\n“?)???1?:?0;
?? }
}
void?USART2_Init(u32?bound)
{
?? GPIO_InitTypeDef?GPIO_InitStructure;
USART_InitTypeDef?USART_InitStructure;
NVIC_InitTypeDef?NVIC_InitStructure;
?
RCC_APB1PeriphClockCmd(RCC_APB1Periph_USART2?ENABLE);
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA?ENABLE);
?? GPI
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2018-10-05?11:02??ESP8266\APP\
?????目錄???????????0??2018-10-05?10:50??ESP8266\APP\esp8266\
?????目錄???????????0??2018-10-05?16:45??ESP8266\APP\esp8266\ESP8266_drive\
?????文件???????11091??2018-10-05?16:45??ESP8266\APP\esp8266\ESP8266_drive\esp8266_drive.c
?????文件????????2520??2016-08-27?10:06??ESP8266\APP\esp8266\ESP8266_drive\esp8266_drive.h
?????目錄???????????0??2018-10-05?10:50??ESP8266\APP\esp8266\ESP8266_Public\
?????文件????????2186??2016-07-30?15:11??ESP8266\APP\esp8266\ESP8266_Public\esp8266_public.c
?????文件?????????223??2016-07-30?15:16??ESP8266\APP\esp8266\ESP8266_Public\esp8266_public.h
?????目錄???????????0??2018-10-05?16:50??ESP8266\APP\esp8266\STA_TCPClent_Test\
?????文件????????1467??2018-10-05?16:50??ESP8266\APP\esp8266\STA_TCPClent_Test\sta_tcpclent_test.c
?????文件?????????490??2018-10-05?16:28??ESP8266\APP\esp8266\STA_TCPClent_Test\sta_tcpclent_test.h
?????目錄???????????0??2018-10-05?11:02??ESP8266\APP\system\
?????文件??????????29??2016-04-26?15:45??ESP8266\APP\system\system.c
?????文件????????2079??2016-06-18?09:25??ESP8266\APP\system\system.h
?????目錄???????????0??2018-10-05?11:02??ESP8266\APP\SysTick\
?????文件????????1403??2016-06-23?13:47??ESP8266\APP\SysTick\SysTick.c
?????文件?????????160??2016-06-18?09:29??ESP8266\APP\SysTick\SysTick.h
?????目錄???????????0??2018-10-05?14:08??ESP8266\APP\usart\
?????文件????????2901??2018-10-05?14:08??ESP8266\APP\usart\usart.c
?????文件?????????340??2016-07-29?17:28??ESP8266\APP\usart\usart.h
?????目錄???????????0??2018-10-05?10:49??ESP8266\Libraries\
?????目錄???????????0??2018-10-05?10:49??ESP8266\Libraries\CMSIS\
?????目錄???????????0??2018-10-05?10:49??ESP8266\Libraries\CMSIS\CM3\
?????目錄???????????0??2018-10-05?10:49??ESP8266\Libraries\CMSIS\CM3\CoreSupport\
?????文件???????17273??2015-12-04?15:57??ESP8266\Libraries\CMSIS\CM3\CoreSupport\core_cm3.c
?????文件???????85714??2015-12-04?15:57??ESP8266\Libraries\CMSIS\CM3\CoreSupport\core_cm3.h
?????目錄???????????0??2018-10-05?10:49??ESP8266\Libraries\CMSIS\CM3\DeviceSupport\
?????目錄???????????0??2018-10-05?10:49??ESP8266\Libraries\CMSIS\CM3\DeviceSupport\ST\
?????目錄???????????0??2018-10-05?10:49??ESP8266\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\
?????文件???????26297??2015-12-04?15:57??ESP8266\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\Release_Notes.html
?????目錄???????????0??2018-10-05?10:49??ESP8266\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\
............此處省略517個文件信息
評論
共有 條評論