其实早就应该写完这个哈夫曼树,只不过最近有点没有心情学习。对于哈夫曼树的构造,我总结了以下几步:
阅读全文
我这两天写程序的时候,使用了大量的宏定义去开启和关闭代码块。但是我发现每次我切换一个宏定义的时候就会将所以的stm32工程中的所有文件进行重新编译,耗费太长时间,效率不如之前用注释代码块的方式。所以我仔细看了看。发现每次编译stm32hal库的时间是最长的,那么我就可以将所有的hal库文件生成一个静态库,让编译的时候连接即可。
堆其实是也是一种二叉树,不过他的排序方式更加舒服,对于需要升序或者降序排列的数据非常有用。
用习惯了cmake,cmake的编译输出比makefile好看许多。对于stm32cubemx生成的makefile工程,我是否可以转换成cmake的工程呢?
最近换了双系统,发现还是linux下面写程序爽。windows还是比较适合打游戏233. 这篇文章记录一下linux下开发stm32的一些东西。
最近用c++写的一个程序,我想用一个const char *p对一个char head[2]赋值,我使用strcpy赋值之后一直出现错误。我就写了个小程序去验证了一下。
const char *p
char head[2]
strcpy
我的orangepi型号是zero puls2,全志H5。我使用spidev对ads1118进行驱动,其中有不少坑,在此记录。
我想在OrangePi Zero中打开Spidev,编写一些应用层的驱动。
最后好久没写数据结构了,今天我把之前写的函数都写成C++的了。舒服的用一波C++中的queue和stack。 废话少说直接上代码(这次又调整了打印二叉树的程序 美滋滋)
最近在linux下移植i2c的传感器驱动。移植了才发现各个设备的i2c读写都不太一样,对于这几个方式我做一个小总结。 首先我使用的是linux应用层通用的i2c读写,我的读写默认是使用smbus协议进行读写的。
A Believing Heart Is Your Magic