![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C语言
文章平均质量分 79
萌哒兽
学无止境
展开
-
WIN C模拟键盘鼠标动作
#include "stdio.h"#include "windows.h"#include "time.h"/******************************************************************* * @brief : 按下某个按键,不松开 * @param : 按键,普通键盘形式为'A',特殊按键形式为VT_TAB * @return : none*********************************************原创 2020-12-10 10:40:51 · 301 阅读 · 0 评论 -
C:从环形缓冲区提取帧数据
嵌入式平台如何从数据流中提取一帧数据?通过实例来说明问题:A作为主机(上位机软件),B作为从机(STM32)硬件和电机连接,A和B之间通过串口通讯,使A能间接的控制电机正反转,速度等。协议初定:问题一:怎么判断帧数据开始信息?通过定义一个固定的帧头,作为数据开始信号。记为0x01。问题二:如何判断帧的长度?帧的长度可以选择固定长度或可变长度。固定长度逻辑简单,检测到帧头后,往后读取固定的长度即可。可变长度灵活度高,一帧数据可以携带更多的信息量。那么可以在帧头后增加一个字节作为长度,记为.原创 2020-10-22 11:11:26 · 2176 阅读 · 1 评论 -
C:printf使用debug模式调试
一、可变参数宏可变参数宏是C语言与C++语言的函数宏的参数个数可以是0个或多个。声明语法:逗号后面三个句点’’…",表示一个参数或多个参数。宏扩展时,使用特殊标识符__VA_ARGS__来替换所传递的参数。如果可变参数为空,在__VA_ARGS__前面加上##直接自动去掉可变参数前的逗号,否则编译报错。#define debug(format,...) printf(format, ##__VA_ARGS__)//等效于#define debug(format,args...) pr原创 2020-09-16 09:51:59 · 2392 阅读 · 0 评论 -
C:环形缓冲区的实现
C文件:/************************************************************* * @brief : 环形缓冲区设计,可移植任意C平台。 * @author : 萌哒兽 * @date : 2020-07-21(更新) * @note : 使用前调用 RingBuffInit(); 来初始化缓冲区。 *************************************************************/#in原创 2020-07-21 10:04:35 · 521 阅读 · 0 评论 -
C:数组转换十六进制式的字符串输出。
ESP8266由于需要用到MD5加密,加密过后的数据是一个数组,需要把这个数组以十六进制的形式通过网络接口发送出去。由于网络接口不能使用printf函数,不能使用%02x之类的格式转换。所以就先把数组变成字符串,然后再发送。重要的一个细节:转换完成后末尾一定要加上 \r\n !!!否则无法当做字符串处理。比如MD5加密过的数组为:RawData[6] = {159,36,153,原创 2017-12-05 17:32:34 · 7175 阅读 · 0 评论