- 博客(17)
- 资源 (1)
- 收藏
- 关注
原创 PID的调参 小结
一般调节法:这种方法针对一般的 PID 控制系统所以称之为一般调节法;其中 Kp 是加快系统响应速度,提高系统的调节精度; Ki 用于消除稳态误差; Kd 改善系统的稳态性能。a. 在输出不振荡时,增大比例增益 P。b. 在输出不振荡时,减小积分时间常数 Ti。c. 在输出不振荡时,增大微分时间常数 Td。(它们三个任何谁过大都会造成系统的震荡。)一般步骤为:a. 确定比例增益 P :确定比例增益 P 时,首先去掉 PID 的积分项和微分项,一般是令 Ti=0、Td=0(具体见 PID
2021-07-02 11:22:18
6387
1
原创 74165和74164简单笔记
用以简单的扩展数据口,164串入并出,165并入串出,都是属于8位的移位寄存器74164是一款8位移位寄存器,串行输入并行输出,常用于端口扩展,引脚排列如下:VCC 电源 GND 地 CP时钟输入断 CR清除端,DSA,DSB数据输入端,当CR为低电平时Q0~Q7 输出均为低电平,当数据输入端任意一引脚为低电平时,禁止数据输入并在CP上升沿作用下决定Q0的状态.当任意一引脚为高电平的时候 允许另一引脚输入数据并且在CP上升沿的作用下决定Q0的状态在使用的时候经常把其中的一个设置永久高电平(74595有同样
2021-04-15 09:51:30
3177
转载 关于SX1308升压芯片的使用说明
最近使用SX1308芯片用来做项目,做个笔记,方便自己查看简介SX1308是一颗简单的BOOST芯片。如上图,输入宽压2V~24V,工作频率为固定的1.2MHz,内部4A电流限制,输出电压最高可到28V,最高效率可到97%。特色内置软起动功能,减小冲击电流,轻载自动切换为PFM模式,输入欠压锁定,电流限制以及过热保护功能。使用说明 如上图,特别注意使能脚(EN)驱动大于1.5V时芯片才会工作,小于0.4V时关闭,千万不要将EN脚悬空。布线时需注意1、为了减小电流环路面积,
2021-04-13 22:09:44
4217
3
原创 PT100学习2,数模转变
掌握要点1.电路使用的是差分放大电路图如下:2.PT100流过电流不应超过1mA3.模拟量转化为pt100计算公式/********************************************************************************@fun pt100_R_GET@brief PT100 电阻获取@param adc ADC amplifi 运放放大倍数@retval 无@author 之风@data
2021-04-12 23:03:35
986
转载 刚好最近做项目用到PT100,分享下PT100分度表的数组,测量温度范围:(-200℃~800℃)
const float Table_PT100[]={//℃ 0 1 2 3 4 5 &n
2021-04-12 21:18:04
594
原创 烧录程序提示 could not stop Cortex-M device! Please check the JTAG cable
解决方法:检查一下STM32复位管脚是不是0V,如果是0V的话并且你有上拉电阻,那么就断电后检查一下STM32的VCC和GND是否短路,我的是电阻和电容位置互换短路从而使RST无法拉高
2021-04-07 22:10:24
2738
原创 关于stm32g030c8t6使用过程钟踩过的坑
最近使用STM32G030来做项目,使用的过程发现有太多的坑了,折腾自己快要崩溃,主要问题还是初始化的过程中初始化失败,导致程序不运行。现在总结下遇到的问题:1.ADC使用多通道扫描模式用DMA传输数据,HAL_ADC_Start(&hadc1);这个开始必须要放在DMA初始化相关函数的后面。2.开启串口中断后导致程序异常不运行,最后把开启传偶中断函数放在main函数的最前面就可以正常运行3.程序是按顺序上之下运行,初始化时候要考虑好顺序关系。比如按下面的顺序进行初始化才可以正常的运行/
2021-03-19 12:05:00
7937
2
原创 VS Code 退出全屏 快捷键 F11
最近使用vs code浏览C代码,无意中进入了全屏却退不出来,查了一下资料得知下面的方法 ,进入全屏/退出全屏 ,的快捷键都是 F11 ;
2021-02-11 22:22:45
3675
1
原创 VS Code 打开文件中文乱码解决方法
VS CODE 打开文件中文乱码解决方案选择菜单【文件file】 --> 【选项】–> 【设置Settings】 --> 【搜索Auto guess encoding】 “files.autoGuessEncoding” --> 勾选选即可。
2021-02-11 19:36:39
623
原创 强制转化规则继续研究
如果一个16位的正整形数,最高位为1,如果对它进行强制转化为8位有符号类型,则最高位会变成有符号位的符号位。举个例子uint16_t data=32765; 对应的二进制为 1000 0000 0000 0011如果对它进行强制转化为int8_t的有符号位 最后变成 1000 0011 结果为-3,由上可见,强制转化是考虑最高位的符号位的。uint16_t data1=32765; int8_t data2=(int8_t)data;printf("data2...
2020-12-11 22:16:57
166
原创 C语言关于有符号和无符号变量相互赋值的探讨
在我们写程序的过程中应该常常会用的数据类型的强制转化,下面我们来研究看看。研究1:有符号变量转化位无符号变量会怎么转换,下面是代码例子#include <stdio.h>int main (void){ signed char temp1=-10; unsigned char temp2=0; for(;;) { temp2=temp1; pri...
2020-09-19 01:05:10
8052
原创 关于小端模式的单片机取结构体的地址转成16位 32 位的总结
首先说明一下什么事小端模式,小端模式就是在单片机的内存地址中,低地址存储一个16位或者32位或者64位变量的最低八位,然后往上递增。比如在下面的例子中,定义一个结构体typedef struct { uint16_t man1_sta; /*人物1 状态 01 站立 23 摔倒*/ int16_t man1_voltage; /*人物1 电压 */ int16_t man1_temperature; /*人物1 温度 */ ...
2020-09-08 23:16:48
482
原创 C语言 三角函数用法
在C语言便准库中,要使用三角函数需要把度转变为弧度的形式,准换公式 deg/180*pi测试#include <stdio.h>#include <math.h>#define My_Pi 3.14159/********************************************************************************* @fun My_Sin* @brief sin求值* @param 无*...
2020-08-20 00:07:50
11292
1
原创 关于C语言有符号变量 32 16 8位转换
测试1 如图:结论1 系统会自动继承最高位的符号位,而不是抛弃。测试2如图:结论2系统会自动继承最高位的符号位,但是数据溢出回出错。
2020-08-19 23:44:23
1337
转载 函数指针和指针函数的区别
指针函数:顾名思义,它的本质是一个函数,不过它的返回值是一个指针。其声明的形式如下所示ret *func(args, ...);其中,func是一个函数,args是形参列表,ret *作为一个整体,是func函数的返回值,是一个指针的形式。下面举一个具体的实例来做说明:# include <stdio.h># include <stdlib.h>#include <windows.h>int sum;int* p = ∑/*..
2020-06-28 17:41:39
445
原创 关于从事研发两年的总结与展望
旧年辞去,新年到来,元旦没有放假,也没有活动安排,算了算已经广漂了648天,回想这一年多的时间,的确成长了许多,同时也实现的毕业一年的目标,但是不能停歇,未来还有两年三年....的目标等着。记得18年要找工作实习,本来打算去北京的,最后没有去,反而花了一千买了资料在家闭关学习45天,就这样年过后,一个人来到广州,开始了我的广漂之旅,从此在研发的这条不归路上无法自拔。18年3月13号乘上动车,...
2020-01-01 09:57:06
552
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人