esp32串口打印汉字好像 有问题,sscom无法识别...
esp32定时器的使用和stm32还是有一些区别的,esp32是通过一个定时器句柄来操作,不需要关心那个定时器组,哪个定时器,而stm32则是需要自己选择哪一个定时器,大致上也是差不多一个过程大致流程需要一个全局的 gptimer_handle_t 类型的变量:围绕这...
期待你的精彩评论 加入1965人围观esp32定时器的使用和stm32还是有一些区别的,esp32是通过一个定时器句柄来操作,不需要关心那个定时器组,哪个定时器,而stm32则是需要自己选择哪一个定时器,大致上也是差不多一个过程大致流程需要一个全局的 gptimer_handle_t 类型的变量:围绕这...
期待你的精彩评论 加入1965人围观
采用了结构体来确定数据结构,然后使用socker发送不了0x00,正常socker是可以发送0x00的
结构体定义
// 起始帧+结束帧
struct _YmodemStartEndFrame
{
uint8_t frameHeader; // 帧头
uint8_t packetNumber; // 包号
uint8_t packetNumberR; // 包号反码
uint8_t NUL[PACKET_SIZE]; // 数据存储区
uint8_t crc16H; // CRC校验位高
uint8_t crc16L; // CRC校验位低
};
最近踩的一个坑,stm32挂载好了一个fatfs,串口打印正常,但是只要是插入电脑,此时,往电脑中存入文件,都很正常然后复位stm32,就会导致fatfs重新格式化!!!文件全丢!
电阻线性变化和对数变化
使用qt的窗口api在置顶和取消置顶的时候,会闪烁一下,这就很烦
目的:现有一个全选复选框,和多个列表内的复选框,要实现一个全选,子复选框(列表内的复选框)全部选中,反之,则全取消,同样,子复选框的选择也会反过来影响全选复选框
大意了!
读取wk2124 FIFO缓冲区
/*===================================================================================
功能:读取wk2124子串口的FIFO的数据
*port: 1~12,表示串口的标号(该串口标号由1个wk2124芯片片选将1个spi接口转换为12个串口)
*buf:用于接受数据的缓冲区
*len:要接受的数据长度(最大长度为FIFO中已经存在的数据长度)
*返回:所读取的子串口数据长度
*备注:gwh
====================================================================================*/
uint16_t WK_PortRecvData(uint8_t port, void *buf, uint16_t len)
{
uint8_t state = 0;
uint8_t nread = 0;
WK_CS_handler(port); // 片选三个wk2124中的一个
port = port % 4;
if (port == 0)
{
port = 4;
}
state = WK_ReadSReg(port, WK2XXX_FSR); // 读wk2124的子串口FIFO状态寄存器
if (state & WK2XXX_RDAT) // 接收FIFO非空
{
nread = WK_ReadSReg(port, WK2XXX_RFCNT); // 查询FIFO中的数据量
nread = (len >= nread ? nread : len);
WK_ReadFIFO(port, buf, nread); // 读取FIFO中的数据
}
return nread; // 返回实际读取到的数据长度
}
真的难受,原理图和实际引脚没有对上
原因
立创eda中的原理图:供应商编号:C277944
应避免使用使用宏定义 带参数的表达式,因为会导致多次求值,导致结果和预期不符
例如 #define max(a,b) (a)>(b)?a:b
上述的这个宏定义带参表达式,在使用带有++,--方式时,就会导致重复求值,该表达式,一共进行两次求值,一次是在判断 a是否大于b,另一次则是,输出max(a,b)结果的时候
举个例子
区别还是挺大的,要注意辨别,尤其是在多个变量的时候
都可以用来定义一个别名,
#define otherName Name
typedef Name otherName;
区别在于,多个变量定义的时候,尤其在定义指针的时候
#define D_otherName Name*
typedef Name* T_otherName;
例如:
D_otherName a,b; 这个扩展为: Name *a,b; 在这里 a变量表示指针,而b变量则不是指针