stm32指令集合不区分大小写

发布者:innovator8最新更新时间:2018-10-06 来源: eefocus关键字:stm32  指令集合  大小写 手机看文章 扫描二维码
随时随地手机看文章

单片机中接收到奥串口的指令一般为字符串,如果使用strncmp比较是否为我们的指令集中的指令,则不能区分大小写,这里可以使用strcasecmp( )函数和strncasecmp( )函数,来对接收到的字符串指令进行接收比较,并且可以不区分大小写,包含头文件include“stdio.h”


下面对strcasecmp( )函数和strncasecmp( )函数的原型以及应用进行介绍:

strcasecmp( )函数说明:

 strcasecmp()用来比较参数s1和s2字符串,比较时会自动忽略大小写的差异。

返回值    若参数s1和s2字符串相同则返回0。s1长度大于s2长度则返回大于0 的值,s1 长度若小于s2 长度则返回小于0的值.


#include ”stdio.h“ 

#include “string.h” 

#include ”ctype.h“

int strcasecmp(const char *s1, const char *s2) 

    int c1, c2; 

    do { 

        c1 = tolower(*s1++); 

        c2 = tolower(*s2++); 

    } while(c1 == c2 && c1 != 0); 

    return c1 - c2; 


int main(void) 

    int n = 4; 

    char str1[] = "Acef"; 

    char str2[] = "ACEFd"; 

    printf("strcasecmp(str1, str2) = %d/n", strcasecmp(str1, str2)); 

    return 0; 


 

 

strncasecmp()函数说明:

strncasecmp()用来比较参数s1和s2字符串前n个字符,比较时会自动忽略大小写的差异

返回值   :若参数s1和s2字符串相同则返回0 s1若大于s2则返回大于0的值 s1若小于s2则返回小于0的值

 

 #include ”stdio.h“
#include “string.h”
#include ”ctype.h
 
int mystrncasecmp(const char *s1, const char *s2, int n) 

    int c1, c2; 
    do { 
        c1 = tolower(*s1++); 
        c2 = tolower(*s2++); 
    } while((--n > 0) && c1 == c2 && c1 != 0); 
    return c1 - c2; 

int main(void) 

    int n = 4; 
    char str3[] = "ABCf"; 
    char str4[] = "abcd"; 
    printf("mystrncasecmp(str3, str4, n) = %d/n", mystrncasecmp(str3, str4, n)); 
    return 0; 


关键字:stm32  指令集合  大小写 引用地址:stm32指令集合不区分大小写

上一篇:keil写STM32程序出现literaltreatedas"longlong"
下一篇:stm32使用SDIO方式+FATFS读写内存卡

推荐阅读最新更新时间:2024-03-16 16:14

STM32Keil下编程实现蜂鸣器长鸣
前言 基于STM32F103C8T6在Keil下编程实现蜂鸣器的长鸣 一、原理图 1.STM32F103C8T6 STM32F103C8T6是ST在2007年发布的一款MCU,截止目前ST已经发布了速度高达400MHz的STM32H7。三点好处,一是封装比较大,方便初学者焊接,二是价格低廉,学习成本比较低,三是网上有大量的资料供初学者学习使用。 2.BELL蜂鸣器 二、Keil代码 1.Beep.c 代码如下: #include stm32f10x.h #include Beep.h void BEEP_Init(void) { GPIO_InitTypeDef GPIO_Structure;/
[单片机]
STM32Keil下编程实现蜂鸣器长鸣
STM32移植lwip之建立web服务器
本篇目标:在之前能ping通pc机的工程基础上搭建web服务器,借鉴官方web服务器的程序与网页,能够用pc机浏览器访问web服务器,并返回设置的网页 材料准备: 基础工程:修改后能ping通pc机的工程(STM32官方移植lwip修改代码) 搭建工程:最终搭建好的web服务器工程(STM32搭建web服务器工程) 调试工具:用来调试tcp连接下的数据接收(网络调试助手) 测试浏览器:这里使用的是Chrome谷歌浏览器 ps:通过修改官方搭建web服务器的代码,来了解搭建的过程,其中暂时去掉了ssi和cgi的程序,仅仅实现网页数据的返回和网页的跳转,并将官方的代码简化到相对最简,以便以后的学习之用 浏览器请求指令探索
[单片机]
<font color='red'>STM32</font>移植lwip之建立web服务器
STM32 ADC转换时间
STM32F103XX的ADC的采样时钟最快14MHz,最快采样率1MHz。 ADC时钟: 这个ADC时钟是从哪来的呢。我们看下面这个STM32的时钟结构图: 我们大多使用STM32的最快PCLK2系统时钟72MHz。 ADCCLK的时钟由72MHz的6分频能瞒住14MHz以下的要求 为12MHz。 RCC_ADCCLKConfig(RCC_PCLK2_Div6); //72M/6=12,ADC最大时间不能超过14M ADC转换时间: 有如下公式: TCONV = 采样时间+ 12.5 个周期 其中12.5个周期是采集12位AD时间是固定的,另外一个采样时间可以取下面几个参数由SMPx 寄存器控制,每个通道可以单独配置
[单片机]
<font color='red'>STM32</font> ADC转换时间
STM32串口通信-USART全面讲解
通用同步异步收发器(Universal Synchronous Asynchronous Receiver and Transmitter)是一个全双工的串行通信设备;UART(Universal Asynchronous Receiver and Transmitter)是在USART基础上裁掉了同步通信功能,只有异步通信。 USART满足外部设备对工业标准NRZ异步串行数据格式的要求,并且使用了小数波特率发生器,可以提供多种波特率。USART支持同步单向通信和半双工单线通信;还支持局域互连网络、智能卡协议与LrDA SIR ENDEC规范;还支持DMA,可实现高速数据通信。 如下图是USART功能框图,我们将对此框图进
[单片机]
<font color='red'>STM32</font>串口通信-USART全面讲解
STM32 多个个APP的跳转
#define IapApplicationAddress 0x08000000//这里是要跳转的APP的起始地址。 typedef void (*pFunction)(void); uint32_t JumpAddress; unsigned int systime; pFunction Jump_To_Application; void JumtoIap(void){ JumpAddress = *(__IO uint32_t*) (IapApplicationAddress + 4); Jump_To_Application = (pFunction) JumpAddre
[单片机]
STM32开发笔记4: STM32F407 UART的使用方法
STM32F4内嵌4个通用异步/同步收发器(USART1、USART2、USART3、USART6)和两个通用异步收发器(UART4和UART5)。本文讲解此6个串行口,在异步模式下的使用方法,如不加说明,以USART1为例。 可以按照下述步骤,对通用异步串行口进行设置。 1、打开config.h文件,对如下图所示的宏进行设置,0x0c表示将当前串行口UART1的波特率设为115200bps,无效验。 2、打开main.c文件,可以在其中断服务函数中,完成接收逻辑的代码编写,如下图所示。此代码表明,当串行口收到1个字节的数据后,将触发串行口中断,在中断服务程序中,将接收到的1字节数据取出,送u8_Ua
[单片机]
<font color='red'>STM32</font>开发笔记4: STM32F407 UART的使用方法
STM32学习之路(二)——MDK-ARM开发过程简介
一,准备MDK-ARM+JLINK+STM32软件包 1,在 http://www.mcu123.com/news/Soft/embsof/arm/200908/505.html 下载RealView MDK-ARM 3.80a(MDK-ARM V3.80a,MDK3.80a)版本 mdk380a_mcu123.rar http://esoft.mcu123.com/MCU123_temp_0080309@/arm/mdk380a_mcu123.rar (注册机自行查找,安装过程略) 2,在 http://www.segger.com/cms/jlink-software.html 下载Software
[单片机]
意法半导体推出STM32互连型系列微控制器
      2009年3月11日,微控制器IC全球领先供应商意法半导体(纽约证券交易所代码:STM)推出一全新系列的STM32微控制器,新产品以片上集成各种高性能工业标准接口为主打特色,且STM32不同型号产品在引脚和软件上具有完美的兼容性,这将让更多的应用从中受益。       全新STM32互连型(Connectivity)系列微控制器增加一个全速USB(OTG)接口,使终端产品在连接另一个USB设备时既可以充当USB主机又可充当USB从机;还增加一个硬件支持IEEE1588精确时间协议(PTP)的以太网接口,用硬件实现这个协议可降低CPU开销,提高实时应用和联网设备同步通信的响应速度。       全新互连型系列还是
[半导体设计/制造]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved