
单片机
HES_C
最求
展开
-
stm32c8t6运行freertos
目前主要优化了系统的资源占用,编译情况如下,代码控制在10K,RAM控制在7K,版本:FreeRTOS V9.0.0。1-不使用freeRTOS的内存管理。运行了6个task,正常运行。2-组件不能用动态方式。3-任务不能用动态方式。原创 2022-08-22 17:18:20 · 629 阅读 · 0 评论 -
感受一下SPL06气压计+APM三阶互补的高度融合
不得不说,spl06气压计很强,原始数据也比较干净,短时间可以保持在30cm内浮动,滤波后在10cm内浮动。就是这么夸张。使用APM的三阶互补滤波融合出 高度,速度,效果也很不错。 可以看到,融合出来的速度也逼近于0,融合出来的高度的短时间漂移可以在5cm内,长时间会飘的很夸张(几米,几十米,几百米),这个就是气压计的通病了。具体还没有用到小飞机上试,后续试一下效果,现在...原创 2020-04-02 20:10:57 · 4756 阅读 · 4 评论 -
关于SPL06的使用
SPL06网上的质料实在是太少了,一个datasheet都要捣腾半天。代码在优快云确实不少,要的积分也不少啊。SPL01的封装是一个比较坑的地方,虽然引脚和BMP820一样,但是上面的气孔就是瞎几把乱放的,来看看手册的引脚图。那个小圆点有多少人会认为是那个气孔(其实是焊盘上的点),也没有标明那到底是啥标志。来看看bmp280的引脚图。我就问你香不香?这样的图难道不好吗。...原创 2020-03-31 17:49:42 · 11009 阅读 · 12 评论 -
51单片机机器周期和定时器0使用
先说机器周期,最近玩51单片机,发现里面有强大的内部时钟,下载的居然可以随意修改,很骚。比以前的51确实好玩多了。感觉现在用51做东西完全不比32差了,还不知道性能怎么样。不好意思跑题了。这里先想一个问题,如果我改变了频率,程序中的延时函数,或者定时器,串口这些频率都变了,需要自己重新算才行。 51单片机的一个机器周期等于12个振荡周期,振荡周期其实就是晶振的...原创 2020-01-09 20:26:02 · 2063 阅读 · 1 评论 -
stc15XX单片机的EPROM读写
关于51单片机新增的EPROM功能就不做介绍了,几年没碰51,没想到都发展到如此地步了,非常不错。下面是一个EPROM读写的驱动。读写内部内存,不管是flash或是EPROM都离不开如下几个步骤:读操作:1 解锁此功能2读取内存上内容3上锁此功能u8 EEPROM_read(u16 address) //读数据{ u8 vl; IAP_CMD=0x01; I...原创 2020-01-09 20:00:32 · 1892 阅读 · 0 评论 -
单片机控制三极管
单片机控制三极管如果你高中的物理知识还没有全部还给体育老师,那么你应该知道,三极管可以放大电流。看下面这个电路图,如果单片机输出低电平0V,没有电流流过,自然也不能放大,LED不发光,我们可以定义一下:低电平关闭三极管。如果单片机输出高电平5V,经过电阻以后,会有一个很小的电流流过,三极管放大电流,LED发光,同样可以定义:高电平打开三极管。简单的估算:假设经过电阻的电流是1ma,转载 2017-05-12 22:57:18 · 3860 阅读 · 0 评论 -
单片机AD转换
sfr ADC_RES=0xBD; 声明 转换结果寄存器转换出来的分数保存在这个寄存器里,范围0~255。假如写程序 a=ADC_RES; a就获得转换结果了。sfr P1ASF=0x9D 声明 P1口模拟功能寄存器 设置P1.7引脚对应的程序是: P1ASF=0x80; sfr ADC_CONTR=0xBC 声明 模数转换寄存器 .这个寄存器里面参数较转载 2017-05-12 23:06:53 · 4661 阅读 · 0 评论 -
CT107D蓝桥杯单片机编程LED(1)
主要介绍CT107D的LED操作原创 2017-03-07 19:13:14 · 3621 阅读 · 0 评论 -
单片机用AD测量电池电压的值
单片机的引脚最大输入电压一般为3.3V或者5.0V,电流是25ma,40ma而电池一般有3.3V-36V不等,电流也是好几A,超过5.0的电池一接到单片机AD口,可能和三星手机一样。所有我们需要从电压电流2方面来入手考虑。1、电压转变为5V以内。 众所周知,用电阻串联可以将电压分散。两个阻值一样的电阻串联,则每个电阻两端的电压为总电压的一半。 如果要将12V变为5V,则只需翻译 2017-07-27 15:28:13 · 21017 阅读 · 1 评论 -
简单分压电路,检测电压用
输入任何三个值计算,然后按一下计算按钮。电阻分流分压总电阻计算公式设R1,R2并联,通过它们的电流为I1和I2U1=U2I1*R1=I2*R2I1/I2=R2/R1I1/(I1+I2)=R2/(R1+R2) I2/(I1+I2)=R1/(R1+R2)设R1,R2串联,通过它们的电压为U1和U2I1=I2U1/R1=U2/R2翻译 2017-09-04 09:49:22 · 17268 阅读 · 0 评论 -
串口(流数据)协议封装,拆包解析
功能:对数据进行封包,加入校验,简单加密2.主要解析及返回数据 使用说明:1.主函数调用初始化函数wifi_buff_init()2.串口中断调用add_message_queue()3.主函数循环处理analyze_queue()解释说明:此协议固定协议长度为12加密码0x03f74个帧头 48 45 53 5a校验2个字节原创 2017-10-28 09:53:18 · 8959 阅读 · 4 评论 -
实现位变量反转功能
//////////////////////////////////////////////////////// 在51单片机中有个特殊的变量 sbit (位变量)用它做一个变量反转是很简单的, nuber=!nuber就实现了。为什么需要这个功能呢?下面看一个程序 假设 LED是一个灯,LED=1为亮,LED=0为灭。 那么我想要他200毫秒闪烁, while(1) {原创 2017-12-01 17:10:52 · 1276 阅读 · 0 评论 -
51单片机串口波特率计算
对于11.0592M晶振bot=256-(11059200/9600/32) 此处波特率为960011.0592M晶振可以支持基本波特率对于12M晶振有所不同bot=256-(1200000/4800/32) 此处波特率为480012M这里波特率设置不能超过4800,因为超过后,时钟误差过大,在通讯的时候某些数据就会乱码。原创 2017-04-04 14:08:58 · 5021 阅读 · 1 评论 -
51单片机寄存器介绍
1、IE中断允许寄存器 EA:EA=0时,所有中断禁止(即不产生中断);EA=1时,各中断的产生由个别的允许位决定ET2:定时2溢出中断允许(8052用1允许, 0禁止)ES:串行口中断允许(1允许, 0禁止)ET1):定时1中断允许(1允许, 0禁止)EX1:外中断INT1中断允许(1允许, 0禁止)ET0:定时器0中断允许(1允许, 0禁止)EX0:外部中断INT0的中断允原创 2017-04-04 13:47:06 · 1744 阅读 · 1 评论 -
DS1302蓝桥杯官方驱动
DS1302驱动翻译 2017-03-19 19:20:41 · 2359 阅读 · 0 评论 -
CT107D蓝桥杯串口实例(3)
CT107D蓝桥杯串口实例原创 2017-03-07 21:25:15 · 3087 阅读 · 0 评论 -
CT107D蓝桥杯IIC驱动通用所有单片机(7)
IIC驱动翻译 2017-03-09 13:35:52 · 1441 阅读 · 0 评论 -
51单片机pwm信号模拟
51pwm模拟原创 2017-03-14 21:21:57 · 4439 阅读 · 3 评论 -
CT107D蓝桥杯EEPROM使用(8)
EEPROM使用原创 2017-03-09 14:28:40 · 4023 阅读 · 2 评论 -
CT107D蓝桥杯动态数码管实例(4)
CT107D蓝桥杯动态数码管实例原创 2017-03-07 22:06:54 · 5828 阅读 · 0 评论 -
CT107D蓝桥杯独立键盘运用(5)
独立键盘及消抖原创 2017-03-08 13:46:54 · 3141 阅读 · 3 评论 -
CT107D蓝桥杯超声波模块(6)
超声波使用原创 2017-03-08 14:14:26 · 6802 阅读 · 1 评论 -
CT107D蓝桥杯DS18B20使用
单总线驱动,和DS18B20使用原创 2017-03-10 16:31:05 · 4978 阅读 · 3 评论 -
CT107D蓝桥杯矩阵键盘使用
矩阵键盘原创 2017-03-10 19:31:46 · 5374 阅读 · 0 评论 -
CT107D蓝桥杯外部中断
外部中断原创 2017-03-10 20:19:36 · 1963 阅读 · 0 评论 -
CT107D蓝桥杯蜂鸣器和继电器(2)
CT107D蜂鸣器和继电器使用原创 2017-03-07 21:00:31 · 6782 阅读 · 2 评论 -
CT107D蓝桥杯DS1302实例(数码管时钟)
DS1302操作原创 2017-03-19 19:17:57 · 6029 阅读 · 0 评论