//***************************************************voidSingle_Write_HMC5883(ucharREG_Address,ucharREG_data){HMC5883_Start();//起始信号HMC5883_SendByte(SlaveAddress);//发送设备地址+写信号HMC5883_SendByte(REG_Address);//内部寄存器地址,请参考中文pdfHMC5883_SendByte(REG_data);//内部寄存器数据,请参考中文pdfHMC5883_Stop();//发送停止信号}//********单字节读取内部寄存器*************************ucharSingle_Read_HMC5883(ucharREG_Address){ucharREG_data;HMC5883_Start();//起始信号HMC5883_SendByte(SlaveAddress);//发送设备地址+写信号HMC5883_SendByte(REG_Address);//发送存储单元地址,从0开始HMC5883_Start();//起始信号HMC5883_SendByte(SlaveAddress+1);//发送设备地址+读信号REG_data=HMC5883_RecvByte();//读出寄存器数据HMC5883_SendACK(1);HMC5883_Stop();//停止信号returnREG_data;}//******************************************************////连续读出HMC5883内部角度数据,地址范围0x3~0x5////******************************************************voidMultiple_read_HMC5883(void){uchari;HMC5883_Start();//起始信号HMC5883_SendByte(SlaveAddress);//发送设备地址+写信号HMC5883_SendByte(0x03);//发送存储单元地址,从0x3开始HMC5883_Start();//起始信号HMC5883_SendByte(SlaveAddress+1);//发送设备地址+读信号for(i=0;i<6;i++)//连续读取6个地址数据,存储中BUF{BUF[i]=HMC5883_RecvByte();//BUF[0]存储数据if(i==5){HMC5883_SendACK(1);//最后一个数据需要回NOACK}else{HMC5883_SendACK(0);//回应ACK}}HMC5883_Stop();//停止信号Delay5ms();}//初始化HMC5883,根据需要请参考pdf进行修改****voidInit_HMC5883(){Single_Write_HMC5883(0x02,0x00);//}
2024/2/2 6:29:11 73KB HMC5883L QMC5883L
1
实现I2C正确读写AT24C02,基于STM32CUBE,读写使用HAL_I2C_Mem_Write,HAL_I2C_Mem_Read,写函数需单个字节写入。
2024/1/10 17:09:26 6.94MB STM32F103 cube
1
本代码实现了读MPU6050三轴6个数据,用其中的GY和AZ、AX结合融合滤波算法,解出X单轴角度,并在黑金开发板的EP4C15F17C8芯片上调试成功,±5°范围内LED灯灭,左右摆动时相应左右灯亮。
顶层模块每隔5ms,发出一个is_read高电平,下面的模块读取一次数据,并计算,更新LED状态。
有关计算都用的ip核,占用资源很大。
代码随笔,希望对小小小小白有所帮助。
压缩包里面有代码.v和doc随笔。
2023/12/23 9:08:19 9.06MB verilog MPU6050
1
从执行体程序库中的CLLogger类可知,通过缓存要写入文件中的数据,能够提高读写磁盘的性能请编写一个文件操作的封装类,其要求如下:需要提供open/read/write/lseek/close等函数的封装函数该类要提供数据缓存服务。
调用该类的写操作接口时,数据要首先写到缓存,然后再根据策略写到文件中。
调用该类的读操作接口时,该类能根据策略缓存读出的数据读写缓存要保持一致性
2023/12/11 18:15:17 3KB Linux 实验
1
usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Text;usingSystem.Windows.Forms;usingSystem.Data.SqlClient;usingSystem.Configuration;namespacePhoneBook{publicpartialclassfrmMain:Form{publicfrmMain(){InitializeComponent();}privatestringstrConn=System.Configuration.ConfigurationManager.AppSettings["ConnectionString"];privatevoidfrmMain_Load(objectsender,EventArgse){LoadGroup();if(trvGroup.Nodes.Count>0){trvGroup.SelectedNode=trvGroup.Nodes[0];LoadList();}else{lvContact.Clear();}}privatevoidLoadGroup(){try{trvGroup.Nodes.Clear();SqlConnectionconn=newSqlConnection(strConn);SqlCommandcmd=newSqlCommand();cmd.Connection=conn;cmd.CommandText="selectdistinct组别from联系人where用户名='"+tsslUserName.Text+"'";conn.Open();SqlDataReadersdr=cmd.ExecuteReader();while(sdr.Read()){trvGroup.Nodes.Add(sdr[0].ToString());}sdr.Close();conn.Close();}catch{}}privatevoidLoadList(){if(trvGroup.Nodes.Count==0){lvContact.Clear();return;}if(trvGroup.SelectedNode.Index>=0){stringstrGroup=trvGroup.SelectedNode.Text;try{lvContact.Clear();lvContact.Columns.Add("姓名",100);lvContact.Columns.Add("工作
2023/12/9 9:50:34 1.54MB C# 管理系统
1
①可以实现下列命令:login用户登录dir列文件目录create创建文件delete删除文件open打开文件close关闭文件read读文件write写文件2.②列目录时要列出文件名、物理地址、保护码和文件长度.③源文件可以进行读写保护.
1
使用面向连接的套接字编程,通过图2来表示其时序。
套接字工作过程如下:服务器首先启动,通过调用socket()建立一个套接字,然后调用bind()将该套接字和本地网络地址联系在一起,再调用listen()使套接字做好侦听的准备,并规定它的请求队列的长度,之后就调用accept()来接收连接。
客户在建立套接字后就可调用connect()和服务器建立连接,连接一旦建立,客户机和服务器之间就可以通过调用read()和write()来发送和接收数据。
最后,待数据传送结束后,双方调用close()关闭套接字。
2023/11/24 9:12:40 178KB TCP/IP 网络
1
ThaiphoonBurner是一个专门用于对电脑内存条SPD信息修改或复制的工具,通过该软件能够直接对内存条中的SPD数据进行重写,当然你也能够在安全模式下修改,ThaiphoonBurner目前支持下列芯片组有:nVidianForce2/3/4,SiS96x,IntelPIIX4/ICHx,VIAVT82Cxxx/VT82xx,最新的版本与DDR-IISPD数据分析完全兼容。
有需要的朋友们可以下载试试!haiphoon_Burner内存SPD刷写错误解决方法用好的内存条启动系统我的是win7,进入睡眠模式把要改的内存条插进插槽唤醒计算机打开SPD软件可以看到,那根要改的内存是能看到的就可以改了!使用教程首先选择工具栏中的[EEPROM]选择,我们就会看到系统中读取两组内存SPD信息的项目“ReadSPDat50h”、“ReadSPDat52h”,分别对应内存插槽上的“DIMM1”和“DIMM3”的内存模组;也可以直接点击工具栏--Read图片,选择要读取的SPD信息。
在读取内存SPD信息时,你要确定自己的内存插在那个DIMM(内存槽)上,呵呵,可别搞错了;这个可根据CPU-Z的检测信息判断即可,插槽#1,即代表在第一个DIMM上,即50H。
(注意:如果主板上只有一条内存,那么其只显示“ReadSPDat50h”或“ReadSPDat52h”其中一个的)。
更改DDR2内存条SPD信息thaiphoonburner教程首先读取50h的内存信息,也就是原厂的那一条,待内存SPD信息读取完毕后,选择FILE--SaveDumpas,输入保存的文件名,我们就可以将其另存为一个以“THP”为后缀的文件了(一会要将这个信息刷入JS送的那条中)。
然后再读取51h的那一条(这一步很重要呀,一定要先保存原来的信息,以备于刷新失败好再刷回来)。
读取SPD时间大约在10秒钟左右。
2023/11/9 22:56:46 1.06MB Thaiphoon Bu
1
我们的必选题目是设计一个多用户文件系统,理解文件系统的层次结构,完成基本的文件系统create、open、close、read/write等基本功能,并实现文件保护操作。
实现以此为基础加入自己设计功能的小型文件系统。
选题我选的是模拟吃水果。
必选题目给出了源码,用eclipse运行,没有数据库数据(之前被盗了,也没有备份所以这点是比较抱歉的)我的课程设计是答辩后又单独发给老师的,所以成绩基本上是优秀,所以我想对各位还是有参考意义的。
1
Demo_Voltage_Read.vi会对使用labview的同学有帮助
2023/11/9 1:13:28 7KB labview
1
共 99 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡