ADS8684/ADS8688驱动程序
使用
利用ADS8688采集互感器电压信号,使用软件SPI。
硬件电路
模拟信号输入
ADS8688外围电路
变量及宏定义
//位带操作#define BITBAND(addr, bitnum) ((addr & 0xF0000000)+0x2000000+((addr &0xFFFFF)<<5)+(bitnum<<2))
#define MEM_ADDR(addr) *((volatile unsigned long *)(addr))
#define BIT_ADDR(addr, bitnum) MEM_ADDR(BITBAND(addr, bitnum)) //IO口地址映射#define GPIOA_ODR_Addr (GPIOA_BASE+12) //0x4001080C
#define GPIOB_ODR_Addr (GPIOB_BASE+12) //0x40010C0C
#define GPIOC_ODR_Addr (GPIOC_BASE+12) //0x4001100C
#define GPIOD_ODR_Addr (GPIOD_BASE+12) //0x4001140C #define GPIOA_IDR_Addr (GPIOA_BASE+8) //0x40010808
#define GPIOB_IDR_Addr (GPIOB_BASE+8) //0x40010C08
#define GPIOC_IDR_Addr (GPIOC_BASE+8) //0x40011008
#define GPIOD_IDR_Addr (GPIOD_BASE+8) //0x40011408 //IO口操作,只对单一的IO口,确保n的值小于16#define PAout(n) BIT_ADDR(GPIOA_ODR_Addr,n) //输出
#define PAin(n) BIT_ADDR(GPIOA_IDR_Addr,n) //输入 #define PBout(n) BIT_ADDR(GPIOB_ODR_Addr,n) //输出
#define PBin(n) BIT_ADDR(GPIOB_IDR_Addr,n) //输入 #define PCout(n) BIT_ADDR(GPIOC_ODR_Addr,n) //输出
#define PCin(n) BIT_ADDR(GPIOC_IDR_Addr,n) //输入 #define PDout(n) BIT_ADDR(GPIOD_ODR_Addr,n) //输出
#define PDin(n) BIT_ADDR(GPIOD_IDR_Addr,n) //输入 /**************************************引脚定义*************************************************/#define ADS8688_CS PAout(4)
#define ADS8688_SCK PAout(5)
#define ADS8688_RST PBout(0)
#define ADS8688_MOSI PAout(7)#define ADS8688_MISO1 PAin(6)
#define ADS8688_MISO2 PCin(4)
#define ADS8688_MISO3 PCin(5) /**************************************ADS8688寄存器********************************************///与命令寄存器相关的命令#define NO_OP 0x0000
#define STDBY 0x8200
#define PWR_DN 0x8300
#define RST 0x8500
#define AUTO_RST 0xA000
#define MAN_Ch_0 0xC000
#define MAN_CH_1 0xC400
#define MAN_Ch_2 0xC800
#define MAN_Ch_3 0xCC00
#define MAN_Ch_4 0xD000
#define MAN_Ch_5 0xD400
#define MAN_Ch_6 0xD800
#define MAN_Ch_7 0xDC00
#define MAN_AUX 0xE000//与程序寄存器相关的命令#define WRITE 1
#define READ 0#define AUTO_SEQ_EN 0x01
#define Channel_Power_Down 0x02
#define Feature_Select 0x03#define CH7_EN 0x80
#define CH6_EN 0x40
#define CH5_EN 0x20
#define CH4_EN 0x10
#define CH3_EN 0x08
#define CH2_EN 0x04
#define CH1_EN 0x02
#define CH0_EN 0x01 #define CH7_PD 0x80
#define CH6_PD 0x40
#define CH5_PD 0x20
#define CH4_PD 0x10
#define CH3_PD 0x08
#define CH2_PD 0x04
#define CH1_PD 0x02
#define CH0_PD 0x01#define Channel_0_Input_Range 0x05
#define Channel_1_Input_Range 0x06
#define Channel_2_Input_Range 0x07
#define Channel_3_Input_Range 0x08
#define Channel_4_Input_Range 0x09
#define Channel_5_Input_Range 0x0A
#define Channel_6_Input_Range 0x0B
#define Channel_7_Input_Range 0x0C #define VREF_B_25 0x00 //通道输入范围:±2.5×VREF
#define VREF_B_125 0x01 //通道输入范围:±1.25×VREF
#define VREF_B_0625 0x02 //通道输入范围:±0.625×VREF
#define VREF_U_0_25 0x05 //通道输入范围:0-2.5×VREF
#define VREF_U_0_125 0x06 //通道输入范围:0-1.25×VREF#define Ch_0_Hysteresis 0x15
#define Ch_0_High_Threshold_MSB 0x16
#define Ch_0_High_Threshold_LSB 0x17
#define Ch_0_Low_Threshold_MSB 0x18
#define Ch_0_Low_Threshold_LSB 0x19 #define Ch_7_Hysteresis 0x38
#define Ch_7_High_Threshold_MSB 0x39
#define Ch_7_High_Threshold_LSB 0x3A
#define Ch_7_Low_Threshold_MSB 0x3B
#define Ch_7_Low_Threshold_LSB 0x3C #define Command_Read_Back 0x3F/*******************************变量声明************************************/extern u8 Rxh[3]; //存储输出数据的高8位
extern u8 Rxl[3]; //存储输出数据的低8位extern u16 ADC1_Data[7]; //存储 ADC1 8个通道的输出数据
extern u16 ADC2_Data[7]; //存储 ADC2 8个通道的输出数据
extern u16 ADC3_Data[7]; //存储 ADC3 8个通道的输出数据extern u16 Transfer_Data[21]; //存储3个 ADC 21个通道的输出数据/*******************************函数声明************************************/void SPI_GPIO_Init(void);
void SPI_ReadWriteByte(u8 Tx_Data, u8 *MISO1, u8 *MISO2, u8 *MISO3);
void SPI_ReadWriteByte11(u8 Tx_Data, u8 *MISO1, u8 *MISO2, u8 *MISO3);
void ADS8688_WriteCmdReg(u16 cmd);
void Enter_AUTO_RST_Mode(void);
void ADS8688_WriteProgramRegister(u8 Addr, u8 data);
void ADS8688_ReadProgramRegister(u8 Addr);
void Set_Auto_Scan_Sequence(u8 seq);
void Set_CH_Range_Select(u8 ch, u8 range);
void Set_Channel_Power_Down(u8 pwd);
void ADS8688_Init(void);
void Get_AUTO_RST_Mode_Data(u8 chn);
void Data_Transfer(void);
函数功能
/*===============================================================
函数名称:SPI_GPIO_Init函数功能:模拟SPI端口初始化输入参数:无返 回 值:无
================================================================*/
void SPI_GPIO_Init(void)
{GPIO_InitTypeDef GPIO_InitStructure;RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOB | RCC_APB2Periph_GPIOC, ENABLE); //使能PC端口时钟GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4 | GPIO_Pin_5 | GPIO_Pin_7; //ADS8688_CS->PA4、ADS8688_SCK->PA5、ADS8688_MOSI->PA7GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; //推挽输出GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; //IO口速度为50MHzGPIO_Init(GPIOA, &GPIO_InitStructure); //根据设定参数初始化端口GPIO_ResetBits(GPIOA,GPIO_Pin_4 | GPIO_Pin_5 | GPIO_Pin_7); //PA4、PA5、PA7输出低电平GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0; //ADS8688_RST->PB0GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; //推挽输出GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; //IO口速度为50MHz
GPIO_SetBits(GPIOB, GPIO_Pin_0); //PB0输出高电平 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6; //ADS8688_MISO1->PA6GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING; //浮空输入 GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; //IO口速度为50MHz GPIO_Init(GPIOA, &GPIO_InitStructure); //根据设定参数初始化端口GPIO_ResetBits(GPIOA, GPIO_Pin_6); //PA6输入低电平GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4 | GPIO_Pin_5; //ADS8688_MISO2->PC4,ADS8688_MISO3->PC5GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING; //浮空输入 GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; //IO口速度为50MHz GPIO_Init(GPIOC, &GPIO_InitStructure); //根据设定参数初始化端口GPIO_ResetBits(GPIOC,GPIO_Pin_4 | GPIO_Pin_5); //PC4、PC5输入低电平
}
/*===============================================================
函数名称:SPI_ReadWriteByte函数功能:模拟SPI读写8位数据,上升沿写数据,下降沿读数据输入参数:Tx_Data:写入的数据,MISO1:ADC1输出数据的指针,MISO2:ADC2输出数据的指针,MISO3:ADC3输出数据的指针返 回 值:无
================================================================*/
void SPI_ReadWriteByte(u8 Tx_Data, u8 *MISO1, u8 *MISO2, u8 *MISO3)
{u8 i = 0;for(i = 0; i < 8; i++){ADS8688_SCK = 0; //上升沿写入8位数据if(Tx_Data & (1 << (7 - i))){ADS8688_MOSI = 1;}else{ADS8688_MOSI = 0;}ADS8688_SCK = 1; //下降沿读取8位数据*MISO1 <<= 1; if(ADS8688_MISO1){*MISO1 |= 1; }*MISO2 <<= 1;if(ADS8688_MISO2){*MISO2 |= 1; }*MISO3 <<= 1;if(ADS8688_MISO3){*MISO3 |= 1; }ADS8688_SCK = 0; }
}
/*===============================================================
函数名称:ADS8688_WriteCmdReg函数功能:写ADS8688命令寄存器输入参数:cmd:写入的命令返 回 值:无
================================================================*/void ADS8688_WriteCmdReg(u16 cmd)
{ ADS8688_CS = 0;SPI_ReadWriteByte((cmd & 0xFF00) >> 8, Rxh, Rxh+1, Rxh+2); SPI_ReadWriteByte(cmd & 0xFF, Rxh, Rxh+1, Rxh+2);ADS8688_CS = 1;
}
/*===============================================================
函数名称:Enter_AUTO_RST_Mode函数功能:进入AUTO_RST模式输入参数:无返 回 值:无
================================================================*/void Enter_AUTO_RST_Mode(void)
{ADS8688_WriteCmdReg(AUTO_RST);
}
/*===============================================================
函数名称:ADS8688_WriteProgramRegister函数功能:向程序寄存器中写入地址和数据输入参数:Addr:地址位:BIT[15:9]、读写位:BIT8,data:数据位:BIT[7:0]返 回 值:无
================================================================*/void ADS8688_WriteProgramRegister(u8 Addr, u8 data)
{ADS8688_CS = 0;SPI_ReadWriteByte((Addr << 1) | WRITE, Rxh, Rxh+1, Rxh+2);SPI_ReadWriteByte(data, Rxh, Rxh+1, Rxh+2);ADS8688_CS = 1;
}/*===============================================================
函数名称:ADS8688_ReadProgramRegister函数功能:读取程序寄存器中的数据输入参数:Addr:地址位:BIT[15:9]、读写位:BIT8返 回 值:data:读取的8位数据
================================================================*/void ADS8688_ReadProgramRegister(u8 Addr)
{ ADS8688_CS = 0;SPI_ReadWriteByte((Addr << 1) | READ, Rxh, Rxh+1, Rxh+2);SPI_ReadWriteByte(0xFF, Rxh, Rxh+1, Rxh+2);SPI_ReadWriteByte(0xFF, Rxh, Rxh+1, Rxh+2); //24个SCLK周期后,可以读取8位数据ADS8688_CS = 1;
}
/*===============================================================
函数名称:Set_Auto_Scan_Sequence函数功能:设置自动扫描通道顺序输入参数:seq:所选的扫描通道返 回 值:无
================================================================*/void Set_Auto_Scan_Sequence(u8 seq)
{ADS8688_WriteProgramRegister(AUTO_SEQ_EN, seq);
}/*===============================================================
函数名称:Set_CH_Range_Select函数功能:设置通道输入范围输入参数:ch(通道地址),可选参数:Channel_n_Input_Range,n=0-7range(输入范围),可选参数:VREF_B_25、VREF_B_125、VREF_B_0625、VREF_U_0_25、VREF_U_0_125
返 回 值:无
==================================== ============================*/
void Set_CH_Range_Select(u8 ch, u8 range)
{ ADS8688_WriteProgramRegister(ch, range);
}/*===============================================================
函数名称:Set_Channel_Power_Down函数功能:设置通道输入范围输入参数:pwd:0x00(通道全部上电),0xFF(通道全部掉电)
返 回 值:无
==================================== ============================*/ void Set_Channel_Power_Down(u8 pwd)
{ ADS8688_WriteProgramRegister(Channel_Power_Down, pwd);
}/*===============================================================
函数名称:ADS8688_Init函数功能:ADS8688初始化输入参数:无返 回 值:无
================================================================*/
void ADS8688_Init(void)
{SPI_GPIO_Init(); //模拟SPI端口初始化Set_CH_Range_Select(Channel_0_Input_Range, VREF_B_25); //设置通道0输入范围为:±2.5×VREFSet_CH_Range_Select(Channel_1_Input_Range, VREF_B_25); //设置通道1输入范围为:±2.5×VREFSet_CH_Range_Select(Channel_2_Input_Range, VREF_B_25); //设置通道2输入范围为:±2.5×VREF Set_CH_Range_Select(Channel_3_Input_Range, VREF_B_25); //设置通道3输入范围为:±2.5×VREFSet_CH_Range_Select(Channel_4_Input_Range, VREF_B_25); //设置通道4输入范围为:±2.5×VREFSet_CH_Range_Select(Channel_5_Input_Range, VREF_B_25); //设置通道5输入范围为:±2.5×VREFSet_CH_Range_Select(Channel_6_Input_Range, VREF_B_25); //设置通道6输入范围为:±2.5×VREFSet_Channel_Power_Down(0x80); //通道0-6上电Set_Auto_Scan_Sequence(0x7F); //自动扫描通道0-6Enter_AUTO_RST_Mode(); //进入自动扫描通道模式(具有复位功能)
}/*===============================================================
函数名称:Get_AUTO_RST_Mode_Data函数功能:读取AUTO_RST模式下的输出数据输入参数:chn:总通道号
返 回 值:无
================================================================*/
void Get_AUTO_RST_Mode_Data(u8 chn)
{ u16 i = 0;for(i=0; i<chn; i++){ADS8688_CS = 0;SPI_ReadWriteByte(0x00, Rxh, Rxh+1, Rxh+2); //先写后读SPI_ReadWriteByte(0x00, Rxl, Rxl+1, Rxl+2);SPI_ReadWriteByte(0xFF, Rxh, Rxh+1, Rxh+2);SPI_ReadWriteByte(0xFF, Rxl, Rxl+1, Rxl+2);SPI_ReadWriteByte(0xFF, Rxh, Rxh+1, Rxh+2);SPI_ReadWriteByte(0xFF, Rxl, Rxl+1, Rxl+2);SPI_ReadWriteByte(0xFF, Rxh, Rxh+1, Rxh+2);SPI_ReadWriteByte(0xFF, Rxl, Rxl+1, Rxl+2);ADS8688_CS = 1;ADC1_Data[i] = (Rxh[0] << 8) | Rxl[0];ADC2_Data[i] = (Rxh[1] << 8) | Rxl[1];ADC3_Data[i] = (Rxh[2] << 8) | Rxl[0];}
}
/*===============================================================
函数名称:Data_Transfer函数功能:排序输入通道输入参数:无返 回 值:无
================================================================*/
void Data_Transfer(void)
{ Transfer_Data[0] = ADC1_Data[5]; //通道1 ADC转换数据Transfer_Data[1] = ADC1_Data[4]; //通道2 ADC转换数据Transfer_Data[2] = ADC1_Data[3]; //通道3 ADC转换数据Transfer_Data[3] = ADC1_Data[2]; //通道4 ADC转换数据Transfer_Data[4] = ADC1_Data[1]; //通道5 ADC转换数据Transfer_Data[5] = ADC1_Data[0]; //通道6 ADC转换数据Transfer_Data[6] = ADC1_Data[6]; //通道7 ADC转换数据Transfer_Data[7] = ADC2_Data[5]; //通道8 ADC转换数据Transfer_Data[8] = ADC2_Data[4]; //通道9 ADC转换数据Transfer_Data[9] = ADC2_Data[3]; //通道10 ADC转换数据Transfer_Data[10] = ADC2_Data[2]; //通道11 ADC转换数据Transfer_Data[11] = ADC2_Data[1]; //通道12 ADC转换数据Transfer_Data[12] = ADC2_Data[0]; //通道13 ADC转换数据Transfer_Data[13] = ADC2_Data[6]; //通道14 ADC转换数据Transfer_Data[14] = ADC3_Data[5]; //通道15 ADC转换数据Transfer_Data[15] = ADC3_Data[4]; //通道16 ADC转换数据Transfer_Data[16] = ADC3_Data[3]; //通道17 ADC转换数据Transfer_Data[17] = ADC3_Data[2]; //通道18 ADC转换数据Transfer_Data[18] = ADC3_Data[1]; //通道19 ADC转换数据Transfer_Data[19] = ADC3_Data[0]; //通道20 ADC转换数据Transfer_Data[20] = ADC3_Data[6]; //通道21 ADC转换数据
}
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
相关文章
- C语言调试工具GDB【1】安装和初步
1.什么是GDB ubuntu上可以用来调试C,C程序的debug工具。 2 如何安装GDB? 保证你的电脑上已经装有gcc、g、cmake。 1. 下载最新的gdbwget https://ftp.gnu.org/gnu/gdb/gdb-10.1.tar.gz 2. 解压包tar -xzvf gdb-10.1.tar.gz 3. 生成makefilecd gdb-10…...
2024/4/19 16:24:17 - word,excel,ppt在线预览功能
微软官网本身提供了在线预览的API 首先将要预览的文档转成.docx,.xlsx,.pptx格式的文件。 然后需要把预览的文件url编码 路径:http://tool.chinaz.com/Tools/URLEncode.aspx 以下是支持在线预览链接的示例 --ppt http://view.officeapps.live.com/op/view.aspx?…...
2024/4/25 22:16:02 - Android(三十五):ViewPager 页面切换
展示 源码 布局 <?xml version"1.0" encoding"utf-8"?> <RelativeLayout xmlns:android"http://schemas.android.com/apk/res/android"android:layout_width"match_parent"android:layout_height"match_parent"…...
2024/4/15 13:51:54 - 从零开始 DIY 智能家居 - 基于 ESP32 的智能紫外线传感器模块
文章目录前言硬件选择二、使用步骤获取代码设备控制命令:设备和协议初始化流程:配置设备信息回调函数注册数据获取与上报流程总结前言 做了这么多传感器都是自己玩,这次家里人看不下去了,非得让我整一个紫外线传感器,…...
2024/4/15 13:52:09 - Windows 通过bat脚本启动Eureka,Cassandra和redis-server
在桌面放的有eureka-server-1.0-SNAPSHOT.jar,cassandra.bat,在D盘放的有redis-server.exe,每次都要逐一点开有点麻烦;于是可以在桌面创建一个.bat文件,写上如下指令,保存;点击这个.bat文件就可以实现一键打开这3个服务; echo off start java -jar eureka-server-1.0-SNAPSHOT.…...
2024/4/19 7:47:22 - 创建Linux虚拟机
配置虚拟机,及其配置 shiftq 推出vim命令模式 ctrll xshell命令行置顶 rm -f 删除 配置虚拟机 文件:vm虚拟机,linux操作系统,创建新的模拟机之后,配置网络 点击编辑,点击虚拟网络编辑器,更…...
2024/4/15 13:51:49 - 线性回归算法、代价函数
参考视频:https://www.bilibili.com/video/BV164411b7dx?p6&spm_id_frompageDriver 如何确定 的值: 使输入的x尽量接近对应的y 也就是希望h(x)和y之间的差值尽量小 即(h(x)-y)^2 这个代价函数也被称为平方误差函数 2…...
2024/4/15 13:52:09 - java压缩视频
<!-- https://mvnrepository.com/artifact/ws.schild/jave-core --> <dependency><groupId>ws.schild</groupId><artifactId>jave-core</artifactId><version>3.2.0</version> </dependency> 下面这个是根据电脑系统引用…...
2024/4/15 13:52:04 - 在python中配置web服务器
在python中配置web服务器 Python3提供了小型Web服务器软件的功能,可以很方便地进行Web页面的开发和测试。以 Windows操作系统为例,具体过程如下: (1)通过执行cmd,进入 Windows控制台 (2&…...
2024/4/16 22:44:17 - 不使用excel插件直接下载excel文件
$data为要下载的有表头的二维数组header("Accept-Ranges: bytes"); header("Content-type:application/vnd.ms-excel"); header("Content-Disposition:filename" . date("Ymd", time()) . ".xlsx");$flag 0; foreach ($dat…...
2024/4/19 9:40:21 - win10虚拟机Oracle VM VirtualBox安装和使用教程
VMware虚拟机的市场占有率及更好的客户体验是其他同类产品无法替代的。 不讨论VMware和Virtual BOX,Hyper-V哪个好用,能使用最满意。 如果你是个人新手用户,推荐你使用 VMWare Workstation Player和virtual box 如果要更全面一点,稳定一点…...
2024/4/15 13:52:14 - C# 反射获取对象实例和给类对象、Winform控件赋值
//设置控件textpublic void setFormValue(Control controls,object moldClass){if (moldClass ! null&& controls !null){var content moldClass.GetType().GetProperties();int count content.Count();for (int i 0; i < count; i){var controlsFind controls.…...
2024/4/15 13:51:59 - unity 坦克大战 (一)
本周学习了坦克大战的初步实现,使用unity重现坦克大战。 选项界面搭建,裁剪好图片搭至以下样式。 创建新场景,实现转场效果。 代码如下: using System.Collections; using System.Collections.Generic; using UnityEngine; usin…...
2024/4/15 13:52:09 - 06/31Day 孤尽训练营笔记分享
任务: T31购票系统日志、异常、错误码设计 内容、实操: 1、完成购票系统的日志 2、错误码与异常处理的设计 产出结果: 日志设计文档、错误码设计文档、异常处理设计文档 日志 日志就是记录程序的运行轨迹,方便…...
2024/4/24 17:22:39 - 前端面试题:js的预编译与运行时
前端面试中有时候会被问到你了解js的编译时和运行时吗? 不知道你们遇到过没,反正小编遇到过哈! 这道题搞懂了,说明你前端基础数比较扎实的! 今天咱们就来说一说这个难啃的骨头。 首先我们了解下编译时发生了什么&a…...
2024/4/20 1:25:18 - 同步练习(Java SE(三))
案例一: 方法练习 需求: 设计一个方法用于打印两个数中的较大数 分析: 1.定义一个方法,用于打印两个数字中的较大数,例如getMax() 2.方法中定义两个变量,用于保存两个数字 3.使用分支语句两种情况对两个数字的大小关系进行处理 4.在main()方…...
2024/4/15 13:51:59 - Java SE(三)
1.IDEA快捷键 快速生成语句 快速生成main()方法: psvm,回车 快速生成输出语句: sout,回车 内容辅助键 CtrlAltspace(内容提示,代码补全等) 注释 单行: 选中代码,Ctrl/,再来一次,就是取消 多行:选中代码&…...
2024/4/19 17:29:29 - Hive的基本操作
三、查询操作 ▎【3.1】查询hive中哪些数据库 show databases; 在没有创建其他数据库之前,hive会提供一个默认的数据库给我们使用default 在操作HiveQL在不指定数据库的前提下所有的操作都是在默认default数据中执行的 hive的数据库名和表名不区分大小写 ▎…...
2024/4/16 22:44:19 - js常见兼容性问题?
1) 滚动条: document.documentElement.scrollTop || document.body.scrollTop; 2) 获取非行内样式兼容 高版本浏览器为:window.getComputedStyle(obj,伪类)["属性"] 不获取伪类的时候可以不写或者写false/…...
2024/4/18 12:16:49 - 同源策略是什么? (面试题)
同源策略:是浏览器的一个安全功能,不同源的客户端脚本在没有明确的授权下,不能读写对方资源; 同源策略限制了从一个源加载的文档或者脚本 ,如何与来自另一个资源进行交互,这是一个用于隔离潜在恶意文件的重…...
2024/4/15 13:51:54
最新文章
- [网络安全] apt攻击是什么?
什么是APT攻击:APT攻击的主要特征包括:APT攻击的防御措施:零基础入门学习路线视频配套资料&国内外网安书籍、文档网络安全面试题 什么是APT攻击: APT(Advanced Persistent Threat,高级持续性威胁&…...
2024/4/27 4:48:27 - 梯度消失和梯度爆炸的一些处理方法
在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言,在此感激不尽。 权重和梯度的更新公式如下: w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...
2024/3/20 10:50:27 - 机器学习——模型融合:平均法
机器学习——模型融合:平均法 在机器学习领域,模型融合是一种通过结合多个基本模型的预测结果来提高整体模型性能的技术。模型融合技术通常能够降低预测的方差,提高模型的鲁棒性,并在一定程度上提高预测的准确性。本文将重点介绍…...
2024/4/19 15:45:44 - 蓝桥杯加训
1.两只塔姆沃斯牛(模拟) 思路:人和牛都记录三个数据,当前坐标和走的方向,如果人和牛的坐标和方向走重复了,那就说明一直在绕圈圈,无解 #include<iostream> using namespace std; const i…...
2024/4/23 12:04:51 - 实现窗口拖拽移动
import Vue from "vue"; /* * 定义公共js里,在入口文件main.js中import; * 给elementUI的dialog上加上 v-dialogDrag 指令就可以实现弹窗的全屏和拉伸了。 */ // v-dialogDrag: 弹窗拖拽水平方向伸缩 Vue.directive(dialogDrag, { bind(e…...
2024/4/21 18:20:44 - 【外汇早评】美通胀数据走低,美元调整
原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...
2024/4/26 18:09:39 - 【原油贵金属周评】原油多头拥挤,价格调整
原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...
2024/4/26 20:12:18 - 【外汇周评】靓丽非农不及疲软通胀影响
原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...
2024/4/26 23:05:52 - 【原油贵金属早评】库存继续增加,油价收跌
原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...
2024/4/27 4:00:35 - 【外汇早评】日本央行会议纪要不改日元强势
原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...
2024/4/25 18:39:22 - 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响
原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...
2024/4/25 18:39:22 - 【外汇早评】美欲与伊朗重谈协议
原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...
2024/4/26 21:56:58 - 【原油贵金属早评】波动率飙升,市场情绪动荡
原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...
2024/4/25 16:48:44 - 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试
原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...
2024/4/26 16:00:35 - 【原油贵金属早评】市场情绪继续恶化,黄金上破
原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...
2024/4/25 18:39:16 - 【外汇早评】美伊僵持,风险情绪继续升温
原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...
2024/4/25 18:39:16 - 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势
原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...
2024/4/26 19:03:37 - 氧生福地 玩美北湖(上)——为时光守候两千年
原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...
2024/4/26 22:01:59 - 氧生福地 玩美北湖(中)——永春梯田里的美与鲜
原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...
2024/4/25 18:39:14 - 氧生福地 玩美北湖(下)——奔跑吧骚年!
原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...
2024/4/26 23:04:58 - 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!
原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...
2024/4/25 2:10:52 - 「发现」铁皮石斛仙草之神奇功效用于医用面膜
原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...
2024/4/25 18:39:00 - 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者
原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...
2024/4/26 19:46:12 - 广州械字号面膜生产厂家OEM/ODM4项须知!
原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...
2024/4/25 18:38:58 - 械字号医用眼膜缓解用眼过度到底有无作用?
原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...
2024/4/25 18:38:57 - 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...
解析如下:1、长按电脑电源键直至关机,然后再按一次电源健重启电脑,按F8健进入安全模式2、安全模式下进入Windows系统桌面后,按住“winR”打开运行窗口,输入“services.msc”打开服务设置3、在服务界面,选中…...
2022/11/19 21:17:18 - 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。
%读入6幅图像(每一幅图像的大小是564*564) f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...
2022/11/19 21:17:16 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...
win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面,在等待界面中我们需要等待操作结束才能关机,虽然这比较麻烦,但是对系统进行配置和升级…...
2022/11/19 21:17:15 - 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...
有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows,请勿关闭计算机”的提示,要过很久才能进入系统,有的用户甚至几个小时也无法进入,下面就教大家这个问题的解决方法。第一种方法:我们首先在左下角的“开始…...
2022/11/19 21:17:14 - win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...
置信有很多用户都跟小编一样遇到过这样的问题,电脑时发现开机屏幕显现“正在配置Windows Update,请勿关机”(如下图所示),而且还需求等大约5分钟才干进入系统。这是怎样回事呢?一切都是正常操作的,为什么开时机呈现“正…...
2022/11/19 21:17:13 - 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...
Win7系统开机启动时总是出现“配置Windows请勿关机”的提示,没过几秒后电脑自动重启,每次开机都这样无法进入系统,此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一:开机按下F8,在出现的Windows高级启动选…...
2022/11/19 21:17:12 - 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...
有不少windows10系统用户反映说碰到这样一个情况,就是电脑提示正在准备windows请勿关闭计算机,碰到这样的问题该怎么解决呢,现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法:1、2、依次…...
2022/11/19 21:17:11 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...
今天和大家分享一下win7系统重装了Win7旗舰版系统后,每次关机的时候桌面上都会显示一个“配置Windows Update的界面,提示请勿关闭计算机”,每次停留好几分钟才能正常关机,导致什么情况引起的呢?出现配置Windows Update…...
2022/11/19 21:17:10 - 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...
只能是等着,别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚,只能是考虑备份数据后重装系统了。解决来方案一:管理员运行cmd:net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...
2022/11/19 21:17:09 - 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?
原标题:电脑提示“配置Windows Update请勿关闭计算机”怎么办?win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢?一般的方…...
2022/11/19 21:17:08 - 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...
关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!关机提示 windows7 正在配…...
2022/11/19 21:17:05 - 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...
钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...
2022/11/19 21:17:05 - 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...
前几天班里有位学生电脑(windows 7系统)出问题了,具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面,长时间没反应,无法进入系统。这个问题原来帮其他同学也解决过,网上搜了不少资料&#x…...
2022/11/19 21:17:04 - 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...
本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法,并在最后教给你1种保护系统安全的好方法,一起来看看!电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中,添加了1个新功能在“磁…...
2022/11/19 21:17:03 - 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...
许多用户在长期不使用电脑的时候,开启电脑发现电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机。。.这要怎么办呢?下面小编就带着大家一起看看吧!如果能够正常进入系统,建议您暂时移…...
2022/11/19 21:17:02 - 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...
配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!配置windows update失败 还原更改 请勿关闭计算机&#x…...
2022/11/19 21:17:01 - 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...
不知道大家有没有遇到过这样的一个问题,就是我们的win7系统在关机的时候,总是喜欢显示“准备配置windows,请勿关机”这样的一个页面,没有什么大碍,但是如果一直等着的话就要两个小时甚至更久都关不了机,非常…...
2022/11/19 21:17:00 - 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...
当电脑出现正在准备配置windows请勿关闭计算机时,一般是您正对windows进行升级,但是这个要是长时间没有反应,我们不能再傻等下去了。可能是电脑出了别的问题了,来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...
2022/11/19 21:16:59 - 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...
我们使用电脑的过程中有时会遇到这种情况,当我们打开电脑之后,发现一直停留在一个界面:“配置Windows Update失败,还原更改请勿关闭计算机”,等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢࿰…...
2022/11/19 21:16:58 - 如何在iPhone上关闭“请勿打扰”
Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...
2022/11/19 21:16:57