
C语言
wubing9527
偏向于物联网控制方向,喜欢DIY
展开
-
linux 下获取系统时间 (C语言)
#include <stdlib.h>#include <time.h>int main(int argc,char **argv){ struct tm *nowTime; time_t nowTime_t; //get now Time time(&nowTime_t); nowTime = localtime(&...原创 2017-02-17 09:52:32 · 626 阅读 · 0 评论 -
stm32使用HSI倍频到48MHz后发现串口和定时器配置出现波特率和时间不对的问题解决----填坑
stm32使用HSI倍频到48MHz后发现串口和定时器配置出现波特率和时间不对,配置代码如下:/* Set HSION bit */ RCC->CR |= (uint32_t)0x00000001; // select HSI as PLL source RCC->CFGR |= (uint32_t)RCC_CFGR_PLLSRC_HSI_Div2...原创 2019-01-30 09:24:08 · 2923 阅读 · 3 评论 -
STC90RC52中断优先级引发的奇案
前段时间接了个项目,使用stc90rc52作为主控,需要输出一路4KHz-4.4KHz的方波,一路固定4KHz的方波和两路脉宽可调频率可调的方波输出,于是看了数据手册,发现4KHz-4.4KHz的方波可以是用单片机内部自带的定时器2可编程输出来做,然后4KHz的方波和两路频率可调的输出用定时器1产生0.125ms的中断来做,脉宽使用定时器0来定时产生。理论上确实没问题,功能也都实现了。问题来了...原创 2019-03-10 15:18:02 · 836 阅读 · 0 评论 -
关于单片机中数据结构占用空间大小的一个优化记录
有一个结构体如下:typedef struct test{unsigned char a;unsigned short b;unsigned char c;}test_t;test_t Test1;实际Test中有三个元素,一共是四个个字节,但是实际这个结构体占用了5个字节的空间,因为由于数据在内存中是对齐存放的。可以改变一下a、b、c的顺序来优化结构体的空间占用,如下:type...原创 2019-04-17 11:33:41 · 729 阅读 · 0 评论 -
记录ESP8266实现OTA和自己搭建服务器踩坑
ESP8266实现OTA的部分使用的官方SDK版本:ESP8266_NONOS_SDK 3.1使用SDK的时候主要注意两点1、根据自己的wifi模块来配置upgrade.h文件里面的两个定义:#define SPI_FLASH_SEC_SIZE 4096#define LIMIT_ERASE_SIZE 0x1000这两个定义改变的时候要同时修改CFG_HOLDER这个定义的...原创 2019-09-26 11:10:39 · 1532 阅读 · 2 评论