原创 ESP8266 NOW

ESP-NOW是一種短數據傳輸、無連接的快速通信技術。兩個設備不需要連接路由器就可以進行數據交互。 https://blog.csdn.net/yannanxiu/article/details/74905888 https://blog

原创 OneNET NB 學習筆記三 接收數據處理與回覆過程

本文分析基於固件OneNET-Demo_v5(適配M5310sp3) //main函數中,循環調用 int main() { // 省略一段......... do { ret = nbiot_d

原创 C語言 數組

int a[] = {1, 2, 3, 4}; int *ptr = a + 1;            //a+1表示表示的是數組a的第一個元素的地址 printf("%d", *(ptr - 1)); 輸出結果爲 1。 int a

原创 Lua 字符串

原文鏈接Lua 字符串字符串或串(String)是由數字、字母、下劃線組成的一串字符。Lua 語言中字符串可以使用以下三種方式來表示:單引號間的一串字符。雙引號間的一串字符。[[和]]間的一串字符。以上三種方式的字符串實例如下:strin

原创 C 引用和指針

原文鏈接 引用是什麼 引用不是重新定義一個變量,而是給一個已經存在的變量取的別名。  語法:類型& 引用變量名=已定義的變量名  引用的特點:  1、一個變量可以有多個別名。  2、引用必須初始化。  3、引用只能在初始化的時候使用一次,

原创 strcpy、strncpy、memcpy的實現

char *myStrcpy(char *dest, const char *src) { if(dest == NULL || src == NULL) return NULL; char *

原创 函數中的*p、p[]的區別

#include <stdio.h> char *test() { char *p = "hello world"; return p; } int main() { char *p = test(); printf("%

原创 C 預處理器

源代碼—>預處理—>編譯—>優化—>彙編—>鏈接—>可執行的文件。   預處理器運算符 C 預處理器提供了下列的運算符來幫助您創建宏: 宏延續運算符(\) 一個宏通常寫在一個單行上。但是如果宏太長,一個單行容納不下,則使用宏延續運算符(\

原创 C 語言 共用體(聯合體)union

幾個不同的變量共享一段內存的結構,稱爲“共用體”類型的結構。 定義共用體類型變量的一般形式爲: union 共用體名 {     成員表列 }變量表列; 例如: union Data { int i;        //表示不

原创 ESP8266 設置開機透傳

AT+CWMODE=1//設置WiFi工作在透傳模式 AT+CWJAP_DEF="XX","YYY"//設置要鏈接的wifi名稱、密碼,並進行連接 //設置TCP/IP AT+SAVETRANSLINK=1,"192.168.1.

原创 排序算法

  #include <stdio.h> //quick sort void QuickSort(int *a, int l, int r) { if(l < r) { int i = l, j = r

原创 #define

#include<stdio.h> #define MIN(x, y) ((x) <= (y) ? (x) : (y)) #define Square(x) (x) * (x) int main() { int a[] = { 3

原创 C語言 指向函數的指針

        函數指針:如果在程序中定義了一個函數,在編譯時,編譯系統爲函數代碼分配一段存儲空間,這段存儲空間的起始地址(又稱入口地址)稱爲這個函數的指針。         可以定義一個紙箱函數的指針變量,用來存放一個函數的起始地址,這

原创 Linux任務前後臺的切換 命令

原文 Shell支持作用控制,有以下命令實現前後臺切換:   1. command & 讓進程在後臺運行   2. jobs 查看後臺運行的進程   3. fg %n 讓後臺運行的進程n到前臺來   4. bg %n 讓進程n到後

原创 linux設備樹詳解

原文 在Linux3.x版本後,arch/arm/plat-xxx和arch/arm/mach-xxx中,描述板級細節的代碼(比如platform_device、i2c_board_info等)被大量取消,取而代之的是設備樹,其目錄位於