<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[qq_37443333的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/qq_37443333</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; qq_37443333]]></copyright><item><title><![CDATA[【QT】QFile读写操作]]></title><link>https://blog.youkuaiyun.com/qq_37443333/article/details/113800090</link><guid>https://blog.youkuaiyun.com/qq_37443333/article/details/113800090</guid><author>qq_37443333</author><pubDate>Mon, 15 Feb 2021 14:59:26 +0800</pubDate><description><![CDATA[选择文件
①#include 
②调用对话框
方法一（推荐）
QString fileName = QfileDialog:getOpenFileName(this,"选择文件",“d:\\”);
if(fileName.isEmpty() == true)
{
	QMessageBox::warning(this,"warning","select faild");
	return;
}

③打开所选文件
QFile file(fileName);
if( !file.open(QFile::Readon]]></description><category></category></item><item><title><![CDATA[【数模matlab】数据建模：主成分分析(PCA)]]></title><link>https://blog.youkuaiyun.com/qq_37443333/article/details/108314488</link><guid>https://blog.youkuaiyun.com/qq_37443333/article/details/108314488</guid><author>qq_37443333</author><pubDate>Mon, 31 Aug 2020 08:31:59 +0800</pubDate><description><![CDATA[简介
PCA是一种属降维方法，将众多具有一定相关性的变量重组为一组新的相互无关的综合变量，可以用作降维或评价（建议不用，因为新综合变量很难解释）。此方法在实际运用中有一个难点，就是选择主成分后，需要注意主成分实际含义的解释（难点）。
PCA步骤
1、原始数据标准化处理

2、计算样本相关系数矩阵

3、计算相关系数矩阵的特征值以及相应的特征向量

4、选择主成分并写出表达式
根据贡献率选出主成分
5、计算主成分得分：样本数据*主成分特征向量

6、进一步分析

实现代码

% Read data from ]]></description><category></category></item><item><title><![CDATA[【数模matlab】数据建模：逻辑回归(Logistic回归)]]></title><link>https://blog.youkuaiyun.com/qq_37443333/article/details/108307186</link><guid>https://blog.youkuaiyun.com/qq_37443333/article/details/108307186</guid><author>qq_37443333</author><pubDate>Sun, 30 Aug 2020 16:05:43 +0800</pubDate><description><![CDATA[简介
逻辑回归（Logistic Regression）主要解决二分类问题，用来表示某件事情发生的可能性。例如：
● 一封邮件是垃圾邮件的肯能性（是、不是）
● 你购买一件商品的可能性（买、不买）
● 广告被点击的可能性（点、不点）
本质
假设数据服从这个分布，然后使用极大似然估计做参数的估计。
matlab做Logistic回归分析

对数变换后可以得到

这样可以将Logistic回归转换为线性回归问题，但是仅仅取对数导致P只有0和1的区别，因为失去了实际意义，实际运用中会定义一个概率函数π，此时π为连]]></description><category></category></item><item><title><![CDATA[【数模matlab】数据建模：云模型]]></title><link>https://blog.youkuaiyun.com/qq_37443333/article/details/108307043</link><guid>https://blog.youkuaiyun.com/qq_37443333/article/details/108307043</guid><author>qq_37443333</author><pubDate>Sun, 30 Aug 2020 15:48:50 +0800</pubDate><description><![CDATA[云模型
用于描述处理不确定性问题
基础概念
基本单位：
“云”或者“云滴”
云的表达方式：
利用联合密度（x,µ）表示，µ是隶属度，µ-&gt;1则确定性越高
云模型三个特征：
期望：云滴在论域空间分部的期望，一般用符号Ex表示；
熵：不确定性程度，有离散程度和模糊程度共同决定，一般用符号En表示；
超熵：用来度量熵的不确定性，亦即熵的熵，一般用符号He表示。
云模型触发机制【触发方式直接写成一个funtion】
正向云触发
1、生成以En为期望，以He为方差的正态随机数En；
2、生成以Ex为期望，以En]]></description><category></category></item><item><title><![CDATA[【数模matlab】拟合与插值]]></title><link>https://blog.youkuaiyun.com/qq_37443333/article/details/108223946</link><guid>https://blog.youkuaiyun.com/qq_37443333/article/details/108223946</guid><author>qq_37443333</author><pubDate>Sun, 30 Aug 2020 15:32:08 +0800</pubDate><description><![CDATA[多项式拟合
拟合又称曲线逼近，不要求一定过数据点
指令拟合
X = [1:9];
Y = [9,7,6,3,-1,2,5,7,20];  //对X/Y数据进行拟合
FitPoly = polyfit(X,Y,5); //对数据点进行5次多项式拟合，返回值是拟合函数
NewX = linspace(0,9); //产生0~9线性等间距的100个数据
NewY = polyval(FitPoly,NewX);//计算拟合函数在自变量NewX对应的函数值
figure('name','Data Curve Fit]]></description><category></category></item><item><title><![CDATA[matlab绘制动态图]]></title><link>https://blog.youkuaiyun.com/qq_37443333/article/details/107014322</link><guid>https://blog.youkuaiyun.com/qq_37443333/article/details/107014322</guid><author>qq_37443333</author><pubDate>Mon, 29 Jun 2020 10:11:59 +0800</pubDate><description><![CDATA[常用的包括两种方式：plot方式及drawnow方式
以导弹跟踪问题为例子。
位于坐标原点的A船向位于其正东⽅20个单位的B 船发射导弹，导弹始终对准B船， B船以时速V单位（常数）沿东北⽅向逃逸。若导弹的速度为3V，导弹的射程是50个单位，画出导弹运⾏的曲线，导弹是否能在射程内击中B船？

plot方式
原理
一定循环次数后画一下移动后的点（若想看动态效果一定要pause一小段时间）
代码
clc;clear
DeltaT = 0.0000001;
n = 1000000000; % 导弹最长运行时间10]]></description><category></category></item><item><title><![CDATA[[蓝桥杯]Readme]]></title><link>https://blog.youkuaiyun.com/qq_37443333/article/details/95372135</link><guid>https://blog.youkuaiyun.com/qq_37443333/article/details/95372135</guid><author>qq_37443333</author><pubDate>Wed, 10 Jul 2019 19:52:25 +0800</pubDate><description><![CDATA[本人在蓝桥杯单片机拿到了国二，省一的成绩，想把经验都分享给大家，博客里有所有笔记供大家参考。
我在备赛过程的全部代码都已上传csdn，大家需要的话就自行下载吧
https://download.youkuaiyun.com/download/qq_37443333/11317608

...]]></description><category></category></item><item><title><![CDATA[蓝桥杯国赛备赛]]></title><link>https://blog.youkuaiyun.com/qq_37443333/article/details/89716847</link><guid>https://blog.youkuaiyun.com/qq_37443333/article/details/89716847</guid><author>qq_37443333</author><pubDate>Wed, 10 Jul 2019 16:45:46 +0800</pubDate><description><![CDATA[常用需记忆处
蜂鸣器
	P2 = 0xa0;	//选通触发器
	buzzer = 0;	//蜂鸣器不叫		//sbit buzzer = P0^6;
	P2 = 0x00	//不选通触发器

流水灯
	P2 = 0x80;	//使能Y4C
	P0 = ~(0x01&lt;&lt;i);
	P2 = 0x00;	//不使能Y4C，给P0赋值后一定要不使能Y4C

蜂鸣器、继电器
	P2 = 0xa0...]]></description><category></category></item><item><title><![CDATA[[蓝桥杯国赛]练手第八届省赛题目]]></title><link>https://blog.youkuaiyun.com/qq_37443333/article/details/90194208</link><guid>https://blog.youkuaiyun.com/qq_37443333/article/details/90194208</guid><author>qq_37443333</author><pubDate>Wed, 10 Jul 2019 16:45:25 +0800</pubDate><description><![CDATA[题目为基于单片机的电子钟程序设计与调试
分析
程序如何宏观规划(十分重要)
特点：切换界面多
方法：多个界面时用一个变量display_mode来管理，按键按下后对display_mode赋值，在while(1)每2ms程序里写if(display_mode==…)来完成功能
按键调整RTC时间
思路：
按键后，记录当前RTC的值，即时分秒，根据其他按键操作，对记录下的变量操作，最后再对RTC赋值...]]></description><category></category></item><item><title><![CDATA[[蓝桥杯国赛]第六届国赛题模拟教训]]></title><link>https://blog.youkuaiyun.com/qq_37443333/article/details/90240781</link><guid>https://blog.youkuaiyun.com/qq_37443333/article/details/90240781</guid><author>qq_37443333</author><pubDate>Wed, 10 Jul 2019 16:45:05 +0800</pubDate><description><![CDATA[教训
①超声波用定时器1要用12T模式，定义超声波的距离有关变量都要用u16！！！
void Timer1Init(void)		//@11.0592MHz
{
	AUXR &amp;= 0xBF;//定时器时钟12T模式
	TMOD  &amp;= 0x0f;		//设置定时器模式
	TL1 = 0;		//设置定时初值
	TH1 = 0;		//设置定时初值
	TF1 = 0;		//清除TF...]]></description><category></category></item><item><title><![CDATA[[蓝桥杯国赛]AD/DA]]></title><link>https://blog.youkuaiyun.com/qq_37443333/article/details/90271807</link><guid>https://blog.youkuaiyun.com/qq_37443333/article/details/90271807</guid><author>qq_37443333</author><pubDate>Wed, 10 Jul 2019 16:44:48 +0800</pubDate><description><![CDATA[序言
按照时序图配置即可及说明配置即可


AD操作代码
u8 read_adc(u8 add)
{
	u8 temp;
	IIC_Start();
	IIC_SendByte(0x90);
	IIC_WaitAck();
	IIC_SendByte(add);
	IIC_WaitAck();
	
	IIC_Start();
	IIC_SendByte(0x91);
	IIC_WaitAck();...]]></description><category></category></item><item><title><![CDATA[[蓝桥杯国赛]pwm呼吸灯]]></title><link>https://blog.youkuaiyun.com/qq_37443333/article/details/90246089</link><guid>https://blog.youkuaiyun.com/qq_37443333/article/details/90246089</guid><author>qq_37443333</author><pubDate>Wed, 10 Jul 2019 16:44:29 +0800</pubDate><description><![CDATA[分析
假设要一个f=1KHZ的呼吸灯
T=1/f=1ms，故将100us定时时可将1ms分成10份，将高电平分X份（X&lt;=10）则低电平为10-X份
占空比为X/10。这可以实现0％、10％、20％…、90％、100％的占空比。大概60~120ms左右改变一次比较好，也可以选用120ms
让呼吸灯从百分10到百分90之间切换
代码
//例如1khz的PWM呼吸灯

#include "STC...]]></description><category></category></item><item><title><![CDATA[[蓝桥杯国赛]按键双击/多击触发]]></title><link>https://blog.youkuaiyun.com/qq_37443333/article/details/90437728</link><guid>https://blog.youkuaiyun.com/qq_37443333/article/details/90437728</guid><author>qq_37443333</author><pubDate>Wed, 10 Jul 2019 16:44:00 +0800</pubDate><description><![CDATA[思路同按键长按，在key_state_2里判断如何没有松开的时候加一，如果我设置一个标志让按键按下一次后标志位置1，这样我就能统计按下了几次，这样就可以实现双击和三击的功能，程序如下，key_press=0x77是长按部分，key_press=0xee是双击部分
case KEY_STATE_2:
if(key_press == NO_KEY)
{
	key_state=KEY_STATE_0;
...]]></description><category></category></item><item><title><![CDATA[[蓝桥杯国赛]按键长按]]></title><link>https://blog.youkuaiyun.com/qq_37443333/article/details/90271278</link><guid>https://blog.youkuaiyun.com/qq_37443333/article/details/90271278</guid><author>qq_37443333</author><pubDate>Wed, 10 Jul 2019 16:43:42 +0800</pubDate><description><![CDATA[按键长按实现功能的思路是：
如果按下后一个变量会自加，满足一定量时候，让一个标志为1，我们就可以用这个标志去实现我们想要的功能
//节选代码
case KEY_STATE_2:
			if(key_press == NO_KEY)
			{
				key_state = KEY_STATE_0;
			}
			else
			{
				if(key_press==0x77)	//按键是S4
...]]></description><category></category></item><item><title><![CDATA[[蓝桥杯国赛]第三届国赛题目模拟]]></title><link>https://blog.youkuaiyun.com/qq_37443333/article/details/90374691</link><guid>https://blog.youkuaiyun.com/qq_37443333/article/details/90374691</guid><author>qq_37443333</author><pubDate>Wed, 10 Jul 2019 16:43:26 +0800</pubDate><description><![CDATA[难点1

我的思路：定一个记录持续时间的变量，每秒加1，并将当前记时赋给一个变量past_relay_sustain_time（用作当不满足小于30cm时候接着定时，直到5s关闭蜂鸣器）当5s后去关掉蜂鸣器
但是存在一个问题就是触发蜂鸣器亮时，满足距离小于30，但是触发后就物体就离开了，此时距离不小于30，所以在else里使用past_relay_sustain_time模仿距离小于30时触发继电...]]></description><category></category></item><item><title><![CDATA[[蓝桥杯国赛]NE555]]></title><link>https://blog.youkuaiyun.com/qq_37443333/article/details/90313162</link><guid>https://blog.youkuaiyun.com/qq_37443333/article/details/90313162</guid><author>qq_37443333</author><pubDate>Wed, 10 Jul 2019 16:43:05 +0800</pubDate><description><![CDATA[如果使用了测频率的话
定时器按照如下分配
定时器0：计数器0模式





定时器0
定时器1
定时器2




模式选择
计数
定时
定时


功能
中断中统计脉冲数

数码管显示和按键扫描


void Timer0Init(void)		//1毫秒@11.0592MHz
{
	AUXR |= 0x80;		//定时器时钟1T模式
	TMOD &amp;= 0x04;		//设置技数模式
	T...]]></description><category></category></item><item><title><![CDATA[【蓝桥杯国赛】第七届国赛题模拟]]></title><link>https://blog.youkuaiyun.com/qq_37443333/article/details/90217453</link><guid>https://blog.youkuaiyun.com/qq_37443333/article/details/90217453</guid><author>qq_37443333</author><pubDate>Wed, 10 Jul 2019 16:42:46 +0800</pubDate><description><![CDATA[修改测量值
要求描述：
循环切换选择时、分、秒，对应的显示单元 1 1  秒间隔亮灭，通过 “ 加、减 ” 按键调整当前选择的时间单位
我的想法：
针对闪烁：
使用一个1s取反一次的变量即可
修改测量值：
注意这里不是动态修改（我多次弄错导致麻烦了很多），而是按下按键后值定住，然后进行修改
方法是保存下当前变量值，然后修改变量值即可，例如下面shi,fen,miao是读正常模式下eeprom里的，...]]></description><category></category></item><item><title><![CDATA[[蓝桥杯国赛]第七届国赛模拟总结]]></title><link>https://blog.youkuaiyun.com/qq_37443333/article/details/90302201</link><guid>https://blog.youkuaiyun.com/qq_37443333/article/details/90302201</guid><author>qq_37443333</author><pubDate>Wed, 10 Jul 2019 16:42:23 +0800</pubDate><description><![CDATA[框框闪烁
方法一：
利用定时器，定义一个1s取反的标志位
方法二（RTC中推荐使用）：
扛扛一般出现在rtc中，故也可以对秒%2，为1时框框亮，为0时框框灭

加减按键选择、调整选择位置
要点①：只有在第一次按下时保存一下数据，然后以后对这个保存的数据进行操作（不能对一直更新变化的进行操作）
要点②：通过设置index来选择位置（！保存时转十进制方面后面的加减操作）
//设第一个全局变量setti...]]></description><category></category></item><item><title><![CDATA[[蓝桥杯国赛]常见错误]]></title><link>https://blog.youkuaiyun.com/qq_37443333/article/details/90448693</link><guid>https://blog.youkuaiyun.com/qq_37443333/article/details/90448693</guid><author>qq_37443333</author><pubDate>Wed, 10 Jul 2019 16:42:01 +0800</pubDate><description><![CDATA[错误1
现象
C51编译警告“*** WARNING L1: UNRESOLVED EXTERNAL SYMBOL”





WARNING L1: UNRESOLVED EXTERNAL SYMBOL



SYMBOL:  ?C_START
MODULE:  .STARTUP.obj (?C_STARTUP)





WARNING L2: REFERENCE MADE TO UNRESO...]]></description><category></category></item><item><title><![CDATA[[蓝桥杯国赛]串口通讯]]></title><link>https://blog.youkuaiyun.com/qq_37443333/article/details/90107700</link><guid>https://blog.youkuaiyun.com/qq_37443333/article/details/90107700</guid><author>qq_37443333</author><pubDate>Wed, 10 Jul 2019 16:41:40 +0800</pubDate><description><![CDATA[找到STCF1的例程，定时器2串口1（只有串口1可以用来进行通讯）
bit busy=0;
unsigned char rx_buffer[];
unsigned char rx_buffer_size=0;

①创建uart.c和uart.h文件
②赋值函数SendString()
③赋值SendData()删除奇偶检验部分
④写Uart1_Init_time2部分
打开stc波特率发生选择串口...]]></description><category></category></item></channel></rss>