6K+ 次浏览
Arduino中的remove函数可以帮助您从字符串中删除一个或多个字符。语法:myString.remove(index, count)其中,index指的是删除操作的起始索引。请注意,Arduino中的索引从0开始。因此,在字符串“Hello”中,'H'的索引为0,'e'的索引为1,以此类推。count参数是可选的,它指定要删除的字符数。如果您没有指定count,则将删除从index开始到字符串末尾的所有字符。如果您将count指定为3,则将删除从index位置开始的3个字符…… 阅读更多
4K+ 次浏览
有时,字符串可能包含前导或尾随空格。Arduino有一个trim()函数,可以删除字符串中所有这些前导/尾随空格。语法:String1.trim()其中String1是要修剪的字符串。请注意,此函数不返回任何值。String1本身会被修改。示例:以下示例对此进行了说明 −void setup() { // 在此处放置您的设置代码,仅运行一次: Serial.begin(9600); Serial.println(); String string1 = " Hello World! "; Serial.println(string1); string1.trim(); Serial.println(string1); } void loop() { // 在此处放置您的主代码,重复运行: }输出串口监视器的输出是…… 阅读更多
705 次浏览
就像indexOf()帮助识别字符串中子字符串的第一次出现一样,lastIndexOf()函数帮助识别最后一次出现。这是因为lastIndexOf()执行反向搜索,而indexOf()执行正向搜索。语法:myString.lastIndexOf(substr)其中substr是在myString中搜索的子字符串。它可以是字符或字符串。与indexOf()一样,此函数还接受一个可选的from参数,如果您希望反向搜索从特定索引开始,则可以使用此参数。在这种情况下,语法为:语法:myString.lastIndexOf(substr, from)与indexOf()一样,此函数要么返回字符串中子字符串的最后一个索引,要么返回-1,如果没有匹配…… 阅读更多
656 次浏览
Arduino中的indexOf()函数从开头扫描字符串,并返回字符串中指定子字符串的第一个索引。语法:语法:myString.indexOf(substr)其中substr是要搜索的子字符串。它可以是字符或字符串类型。或者,您可以提供一个不同的起始点来开始搜索,在这种情况下,语法为:语法:myString.indexOf(substr, from)其中from是搜索应开始的索引。此函数返回字符串中子字符串第一次出现的索引,如果找不到匹配项,则返回-1。示例:void setup() { // 在此处放置您的设置代码,…… 阅读更多
764 次浏览
我们知道可以使用String1.equals(String2)来判断Arduino中String1和String2是否相等。但是,此函数区分大小写。因此,即使只有一个字符的大小写不同,此函数也会返回false。人们用来执行两个字符串的不区分大小写比较的一种策略是将两个字符串都转换为小写,然后进行比较。但是,Arduino有一个函数可以忽略大小写比较两个字符串。正如您猜到的那样,该函数是equalsIgnoreCase。示例:下面给出了一个示例实现 −void setup() { // 在此处放置您的…… 阅读更多
38K+ 次浏览
结构体只是一个不同类型变量的集合。Arduino中的结构体模拟C语言中的结构体。因此,如果您熟悉C结构体,Arduino结构体应该不成问题。结构体声明语法如下:语法:struct structName{ item1_type item1_name; item2_type item2_name; . . . itemN_type itemN_name; }示例如下:示例:struct student{ String name; int age; int roll_no; }结构体的元素使用.(点)表示法访问。此表示法可用于读取结构体的元素或更改…… 阅读更多
830 次浏览
如果您希望挂起FreeRTOS中的任务,可以使用vTaskSuspend()函数。语法:语法:void vTaskSuspend( TaskHandle_t xTaskToSuspend );如您所见,它将要挂起的任务的句柄作为参数,并且不返回任何值。可以使用vTaskResume()恢复挂起的任务。语法:语法:void vTaskResume( TaskHandle_t xTaskToResume );这同样需要要恢复的任务的句柄,并且不返回任何值。为了查看示例,我们将逐步完成以下代码:https://exploreembedded.com/wiki/Task_Suspend_and_Resume如您所见,最初声明了四个任务句柄,并在…… 阅读更多
1K+ 次浏览
信号量和互斥锁是用于在FreeRTOS中实现任务同步的工具/机制。通常,两个任务需要共享一个资源,或者一个任务需要告诉另一个任务它空闲/等待。信号量和互斥锁在这里很有帮助。在本文中,我们将了解信号量和互斥锁的概念。信号量信号量是任务之间的同步机制。更具体地说,它是一种信号机制。处于等待状态的任务可能会收到一个信号量,告诉它执行一些工作。一旦任务完成该工作,它就会将信号量返回。实际上,这是由…… 阅读更多
872 次浏览
默认情况下,在Windows机器上,Arduino将所有草图保存在C:\Users\\Documents\Arduino中。现在,无论出于何种原因,您可能希望更改此默认位置。一个常见的原因是C盘存储空间有限,您希望将草图保存到具有足够可用空间的驱动器中。为了更改默认位置,请转到文件→首选项。在打开的对话框中,第一个输入字段是草图位置。单击它旁边的“浏览”按钮并选择您想要的目标路径。更改路径后,单击确定。现在,如果您尝试保存新的…… 阅读更多
浏览量:980
Arduino IDE 的默认字体大小对于某些开发者来说可能有点小。为了增大字体大小,请依次点击 文件 → 首选项。在打开的对话框中,更改“编辑器字体大小”的值。默认值为 12。您可以将其设置为自己舒适的值。点击“确定”,更改会立即反映在您的 IDE 中。