基于C语言的串口AT指令发送实例解析
void Set_Pdu_Mode(void)
{
u8 a = 1;
if(atKey == 1)//允许发送AT指令
{
atKey = 0;
UartSendStr("test start\r\n");//串口1输出开始提示
while(a != 9)
{
switch (a)
{
case 1:
a = Second_AT_Command("AT","OK");//如果a =9则表明最后一条语句发送完毕,跳出循环,否则一直进行指定指令的发送
delay2s();
if(a == 0) //如果正常发送,则进行下一步
a = 2;
break;
case 2:
a =Second_AT_Command("AT+CSTT=\"CMNET\"","OK");
delay2s(); if(a == 0) //如果正常发送,则进行下一步
a = 3;
break;
case 3:
a = Second_AT_Command("AT+CIICR","OK");
delay2s();
if(a == 0) //如果正常发送,则进行下一步
a = 4;
break;
case 4:
a = Second_AT_Command("AT+MCONFIG=\"test\",\"\",\"\"","OK");
delay2s();
if(a == 0) //如果正常发送,则进行下一步
a = 5;
break;
case 5:
a = Second_AT_Command("AT+MIPSTART=\"47.111.138.129\",\"1883\"","OK");
delay2s();
if(a == 0) //如果正常发送,则进行下一步
a = 6;
break;
case 6:
a = Second_AT_Command("AT+MCONNECT=1,60","OK");
delay2s();
if(a == 0) //如果正常发送,则进行下一步
a = 7;
break;
case 7:
a =Second_AT_Command("AT+MSUB=\"mqtt/topic\",0","OK");
delay2s();
if(a == 0) //如果正常发送,则进行下一步
a = 8;
break;
case 8:
a = Second_AT_Command("AT+MPUB=\"mqtt/topic\",0,0,\"strat\"","OK");
delay2s();
if(a == 0) //如果正常发送,则进行下一步
a = 9;
break;
defalut:
a = 1;
}
}
}
基于C语言的串口AT指令发送实例解析的更多相关文章
- 基于STM32之UART串口通信协议(二)发送
		
一.前言 1.简介 在上一篇UART详解中,已经有了关于UART的详细介绍了,也有关于如何使用STM32CubeMX来配置UART的操作了,而在该篇博客,主要会讲解一下如何实现UART串口的发送功能. ...
 - 《Selenium 2自动化测试实战 基于Python语言》中发送最新邮件无内容问题的解决方法
		
虫师的<Selenium 2自动化测试实战 基于Python语言>是我自动化测试的启蒙书 也是我推荐的自动化测试入门必备书,但是书中有一处明显的错误,会误导很多读者,这处错误就是第8章自动 ...
 - Siemens3508手机AT指令发送短信的实验
		
凡夫 最近利用Siemens3508旧手机做了AT指令发送短信的实验.有人可能认为我费那么大劲折腾累不累,告诉你这可是废物再利用,可以利用旧手机里的GSM/GPRS模块做无线远程多点分布数据采集.监控 ...
 - 基于JAVA语言的多线程技术
		
1.简介 多线程技术属于操作系统范围内的知识: 进程与线程 可以这么理解,一个应用程序就是一个进程,在一个进程中包含至少一个线程:进程就是线程的容器,真正工作.处理任务的是线程. 进程是操作系统分配资 ...
 - 基于Modbus的C#串口调试开发
		
说明:本文主要研究的是使用C# WinForm开发的串口调试软件(其中包含Modbus协议相关操作).Modbus相关协议可以查阅百度文库等,可参考: <http://wenku.baidu.c ...
 - 基于Swift语言开发微信、QQ和微博的SSO授权登录代码分析
		
前言 Swift 语言,怎么说呢,有一种先接受后排斥.又欢迎的感觉,纵观国外大牛开源框架或项目演示,Swift差点儿占领了多半,而国内尽管出现非常多相关技术介绍和教程,可是在真正项目开发中使用的占领非 ...
 - selenium2自动化测试实战--基于Python语言
		
自动化测试基础 一. 软件测试分类 1.1 根据项目流程阶段划分软件测试 1.1.1 单元测试 单元测试(或模块测试)是对程序中的单个子程序或具有独立功能的代码段进行测试的过程. 1.1.2 集成测试 ...
 - Docs-.NET-C#-指南-语言参考-预处理器指令:#line(C# 参考)
		
ylbtech-Docs-.NET-C#-指南-语言参考-预处理器指令:#line(C# 参考) 1.返回顶部 1. #line(C# 参考) 2015/07/20 借助 #line,可修改编译器的行 ...
 - Docs-.NET-C#-指南-语言参考-预处理器指令:#if 预处理指令
		
ylbtech-Docs-.NET-C#-指南-语言参考-预处理器指令:#if 预处理指令 1.返回顶部 1. #if(C# 参考) 2018/06/30 如果 C# 编译器遇到 #if 指令,最终是 ...
 - STM32 Bootloader基于ymodem传输协议串口IAP升级详解
		
硬件:stm32f103cbt6 软件:STM32F10x_StdPeriph_Lib_V3.5.0 文章目录 1 预备知识 2 Bootloader 2.1 启动流程 2.2 校验跳转地址是否有效 ...
 
随机推荐
- 使用Docker部署Tomcat
			
目录 使用Docker部署Tomcat 1. 获取镜像 2. 第一次启动tomcat 3.带参数启动 4.查看tomcat日志 5.时区问题 使用Docker部署Tomcat 1. 获取镜像 dock ...
 - Mac 上 snail svn 配置验证信息
			
这样就不用每次都得输入svn的账号 和 密码了
 - ASP.NET Core分布式项目实战(运行Consent Page)--学习笔记
			
任务21:运行Consent Page 修改 Config.cs 中的 RequireConsent 为 true,这样登录的时候就会跳转到 Consent 页面 修改 ConsentControll ...
 - Oracle-创建用户不带C##(Oracle 19c)
			
由于oracle从12c开始引入了容器(PDB和CDB).租户的概念.直接连接sysdba用户创建新用户时,会默认在CDB中创建公有用户,用户名需要以"C##"或"c## ...
 - Go 之烧脑的接口
			
基本定义 Go 官方对于接口的定义是一句话:An interface type is defined as a set of method signatures. 翻译过来就是,一个接口定义了一组方法 ...
 - Office Online Server Windows Server 2016 部署
			
一.准备"武器" 本文是通过虚拟机搭建 OOS 测试环境的,4567是3的前提,武器提取 le73 1.VMWare Workstation 17 Player 2.Windows ...
 - 2023sdut_python实验
			
 7-1 sdut-温度转换 n = input() n = float(n) c = 5.0*(n-32.0)/9.0 print("%.2f" %(c)) #其中,c为变量 ...
 - 【framework】DisplayContent简介
			
1 前言  DisplayContent 用于管理屏幕,一块屏幕对应一个 DisplayContent 对象,虽然手机只有一个显示屏,但是可以创建多个 DisplayContent 对象,如投屏时, ...
 - 两个数组的交集II
			
两个数组的交集II 给定两个数组,编写一个函数来计算它们的交集. 示例 输入:nums1 = [1,2,2,1], nums2 = [2,2] 输出:[2,2] 输入:nums1 = [4,9,5], ...
 - springboot中前端ajax如何给controller提交数组参数?
			
说明 我有个需求,前端批量添加一堆商品明细.也就是说会有一个商品ID,然后一堆商品明细,多行. 如此一来,针对后端接口肯定是要以数组或列表方式接收这个商品明细数组了. 前端代码 关键地方在于以form ...