本代码为编码开关代码,编码开关也就是数字音响中的 360度旋转的数字音量以及显示器上用的(单键飞梭开 关)等类似鼠标滚轮的手动计数输入设备。 我使用的编码开关为5个引脚的,其中2个引脚为按下 转轮开关(也就相当于鼠标中键)。另外3个引脚用来 检测旋转方向以及旋转步数的检测端。引脚分别为a,b,c b接地a,c分别接到P2.0和P2.1口并分别接两个10K上拉 电阻,并且a,c需要分别对地接一个104的电容,否则 因为编码开关的触点抖动会引起轻微误动作。本程序不 使用定时器,不占用中断,不使用延时代码,并对每个 细分步数进行判断,避免一切误动作,性能超级稳定。 我使用的编码器是APLS的EC11B可以参照附件的时序图 编码器控制流水灯最能说明问题,下面是以一段流水 灯来演示。
上传时间: 2017-07-03
上传用户:gaojiao1999
【问题描述】 在一个N*N的点阵中,如N=4,你现在站在(1,1),出口在(4,4)。你可以通过上、下、左、右四种移动方法,在迷宫内行走,但是同一个位置不可以访问两次,亦不可以越界。表格最上面的一行加黑数字A[1..4]分别表示迷宫第I列中需要访问并仅可以访问的格子数。右边一行加下划线数字B[1..4]则表示迷宫第I行需要访问并仅可以访问的格子数。如图中带括号红色数字就是一条符合条件的路线。 给定N,A[1..N] B[1..N]。输出一条符合条件的路线,若无解,输出NO ANSWER。(使用U,D,L,R分别表示上、下、左、右。) 2 2 1 2 (4,4) 1 (2,3) (3,3) (4,3) 3 (1,2) (2,2) 2 (1,1) 1 【输入格式】 第一行是数m (n < 6 )。第二行有n个数,表示a[1]..a[n]。第三行有n个数,表示b[1]..b[n]。 【输出格式】 仅有一行。若有解则输出一条可行路线,否则输出“NO ANSWER”。
标签: 点阵
上传时间: 2014-06-21
上传用户:llandlu
实验源代码 //Warshall.cpp #include<stdio.h> void warshall(int k,int n) { int i , j, t; int temp[20][20]; for(int a=0;a<k;a++) { printf("请输入矩阵第%d 行元素:",a); for(int b=0;b<n;b++) { scanf ("%d",&temp[a][b]); } } for(i=0;i<k;i++){ for( j=0;j<k;j++){ if(temp[ j][i]==1) { for(t=0;t<n;t++) { temp[ j][t]=temp[i][t]||temp[ j][t]; } } } } printf("可传递闭包关系矩阵是:\n"); for(i=0;i<k;i++) { for( j=0;j<n;j++) { printf("%d", temp[i][ j]); } printf("\n"); } } void main() { printf("利用 Warshall 算法求二元关系的可传递闭包\n"); void warshall(int,int); int k , n; printf("请输入矩阵的行数 i: "); scanf("%d",&k); 四川大学实验报告 printf("请输入矩阵的列数 j: "); scanf("%d",&n); warshall(k,n); }
上传时间: 2016-06-27
上传用户:梁雪文以
#include "iostream" using namespace std; class Matrix { private: double** A; //矩阵A double *b; //向量b public: int size; Matrix(int ); ~Matrix(); friend double* Dooli(Matrix& ); void Input(); void Disp(); }; Matrix::Matrix(int x) { size=x; //为向量b分配空间并初始化为0 b=new double [x]; for(int j=0;j<x;j++) b[j]=0; //为向量A分配空间并初始化为0 A=new double* [x]; for(int i=0;i<x;i++) A[i]=new double [x]; for(int m=0;m<x;m++) for(int n=0;n<x;n++) A[m][n]=0; } Matrix::~Matrix() { cout<<"正在析构中~~~~"<<endl; delete b; for(int i=0;i<size;i++) delete A[i]; delete A; } void Matrix::Disp() { for(int i=0;i<size;i++) { for(int j=0;j<size;j++) cout<<A[i][j]<<" "; cout<<endl; } } void Matrix::Input() { cout<<"请输入A:"<<endl; for(int i=0;i<size;i++) for(int j=0;j<size;j++){ cout<<"第"<<i+1<<"行"<<"第"<<j+1<<"列:"<<endl; cin>>A[i][j]; } cout<<"请输入b:"<<endl; for(int j=0;j<size;j++){ cout<<"第"<<j+1<<"个:"<<endl; cin>>b[j]; } } double* Dooli(Matrix& A) { double *Xn=new double [A.size]; Matrix L(A.size),U(A.size); //分别求得U,L的第一行与第一列 for(int i=0;i<A.size;i++) U.A[0][i]=A.A[0][i]; for(int j=1;j<A.size;j++) L.A[j][0]=A.A[j][0]/U.A[0][0]; //分别求得U,L的第r行,第r列 double temp1=0,temp2=0; for(int r=1;r<A.size;r++){ //U for(int i=r;i<A.size;i++){ for(int k=0;k<r-1;k++) temp1=temp1+L.A[r][k]*U.A[k][i]; U.A[r][i]=A.A[r][i]-temp1; } //L for(int i=r+1;i<A.size;i++){ for(int k=0;k<r-1;k++) temp2=temp2+L.A[i][k]*U.A[k][r]; L.A[i][r]=(A.A[i][r]-temp2)/U.A[r][r]; } } cout<<"计算U得:"<<endl; U.Disp(); cout<<"计算L的:"<<endl; L.Disp(); double *Y=new double [A.size]; Y[0]=A.b[0]; for(int i=1;i<A.size;i++ ){ double temp3=0; for(int k=0;k<i-1;k++) temp3=temp3+L.A[i][k]*Y[k]; Y[i]=A.b[i]-temp3; } Xn[A.size-1]=Y[A.size-1]/U.A[A.size-1][A.size-1]; for(int i=A.size-1;i>=0;i--){ double temp4=0; for(int k=i+1;k<A.size;k++) temp4=temp4+U.A[i][k]*Xn[k]; Xn[i]=(Y[i]-temp4)/U.A[i][i]; } return Xn; } int main() { Matrix B(4); B.Input(); double *X; X=Dooli(B); cout<<"~~~~解得:"<<endl; for(int i=0;i<B.size;i++) cout<<"X["<<i<<"]:"<<X[i]<<" "; cout<<endl<<"呵呵呵呵呵"; return 0; }
标签: 道理特分解法
上传时间: 2018-05-20
上传用户:Aa123456789
SP1105是一款电流模式PWM/PSM控制的DC/DC升压控制器。它采用同步整流技术,无需外置肖特基二极管,开关电流达5A,为单芯锂电池升压到5V输出提供一个简便、高效的电源解决方案。其内置补偿电路及保护电路,以减少外围组件。高达500KHz的开关频率可使电感和输出电容小型化,从而节约PCB空间。SP1105内置了过温保护、输出短路保护及soft start电路,保证了产品供电系统的稳定性。
标签: 1220F 1220 SP 40 8A 同步整流 降压
上传时间: 2019-03-25
上传用户:lryang
对某四轮独立驱动电动汽车轮毂电机进行研究,设计一种永磁无刷直流电机控制器.以STM32F103RBT6芯片为基础,对电机驱动电路、采样电路和保护电路分别进行硬件设计与分析;同时,采用模块化软件设计方案,对该控制器的软件系统进行升级.实验验证表明:所设计的电机控制器能使电机响应迅速、转速稳定、无超调,且电动车动力输出性能良好.A permanent magnet brushless direct current motor controller was designed by studying the hub motor of a four-wheel independent drive electric vehicle.Based on STM32 F103RBT6 chip,the hardware design and analysis of motor drive circuit,sampling circuit and protection circuit were carried out respectively.At the same time,modular software design scheme was adopted to upgrade the software system of the controller.Experimental results show that the designed motor controller can ensure the motor fast response,stable speed,no overshoot,and good power output performances.
上传时间: 2022-03-26
上传用户:qingfengchizhu
配电网中,各种配电终端的电流、电压、有功功率及无功功率等模拟量的采集是配电网自动化的重要环节。这些模拟量的采集也是各种仪器和家用电器的必要功能。因此,设计了基于嵌入式STM32F103单片机的交流电压、交流电流及有功功率的采集系统,通过电压互感器TV1005M和电流互感器TA1005M分别检测交流电压和交流电流值;屏幕或者手机APP和WiFi模块互联后,可以实时显示交流电压、交流电流、功率及电量值;通过设定阈值功率,可以实现对电流的监控和对电路的保护。In the distribution network,the collection of analog,such as current,voltage,active power,and reactive power at various distribution terminals is a very important part of distribution network automation. These analog acquisitions are also for various instruments and household appliances. Very important technology. Therefore,an AC voltage,AC current and active power acquisition system based on embedded STM32 F103 machine is designed,and AC voltage and AC current values are detected by voltage transformer TV1005 M and current Transformer TA1005 M respectively;After the screen or mobile phone APP and WiFi modules are interconnected,AC voltage,AC current,power,and power values can be displayed in real time;By setting the threshold power,the current can be monitored and the circuit can be protected.
上传时间: 2022-03-27
上传用户:shjgzh
本文介绍了一种基于低负载系数采样电阻的、可用于电感负载的精密可调恒流源的设计方案文章首先分析了恒流源基本原理与串联负反馈式恒流源电路,论述了影响恒流源稳度的主要因索以及误差分配原则,然后介绍了可用于电感负载的可调精密恒流源的基本框架,主要包括:低负荷系数采样电阻以及基准电压模块、单片机最小系统、主电源模块、调整管压降反馈电路、保护与补偿电路电源管理电路以及电流测试电路。该设计主要完成了以下工作:第一,制成了可以输出0-10V之间任意电压值的高精度电压基准模,短时间内输出电压的相对标准差达234×10,电压稳定度(时间漂移)为34×10Vh。将其作为恒流源的电压参考源,最终实现了0-1A可调功能。第二,完成了19低负荷系数采样电阻的测试与制作,通过实验测得其负载系数为3.58×10°gW温度系数为034ppm℃,长期稳定性为±048pm30h第三,通过设计感性负载补偿电路、调整电路结构、调整控制算法,最终使恒流源适用于感性负载。第四,设计了主电源控制方法,实现了恒流源的自动调节,最终使得本设计在输出0-1A之间任何电流携带300W以下任何负载都能保证同样的精度,第五,设计了调整管压降反馈电路,单片机通过视管管制比电倾出电,实取了词整管底降的自动,解块了由于负载变化引起的调整管漏源电流下降所导致的电流漂移。最终的测试结果表明,正常工作时设备的输出1A电流相对标准差为297×103,电流稳定度(时间漂移)为-3.6×10730min,可调恒流源的微分非线性为0.59SB,最大负载能力300W,输出阻抗120MQ关键词可调恒流源感性负载高稳定性电压基准
标签: 恒流源
上传时间: 2022-04-02
上传用户:
EG8010 是一款数字化的、功能很完善的自带死区控制的纯正弦波逆变发生器芯片,应用于 DC-DC-AC 两级功率变换架构或 DC-AC 单级工频变压器升压变换架构,外接 12MHz 晶体振荡器,能实现高精度、失真和谐波都很小的纯正弦波 50Hz 或 60Hz 逆变器专用芯片。该芯片采用 CMOS 工艺,内部集成 SPWM 正弦发生器、死区时间控制电路、幅度因子乘法器、软启动电路、保护电路、RS232 串行通讯接口和 12832 串行液晶驱动模块等功能。
标签: 正弦波逆变器
上传时间: 2022-05-31
上传用户:
随着新理论、新器件、新技术的不断出现或成熟,功率超声技术在国民经济各个部门中日益广泛应用。超声波电源为超声波换能器提供电能,超声波换能器将电能转换为动能,完成超声波清洗、防垢除垢等功能。本文主要对高频超声波电源进行了理论分析与设计。 首先对超声波电源基本拓扑结构进行了分析,提出了超声波电源功放电路可以采用的三种方案:半桥功率放大电路、全桥功率放大电路、推挽功率放大电路。通过对比分析了各种方案的优点和缺点,确定了超声波电源功率放大电路的方案。针对超声波电源的具体要求,设计了整流滤波电路,功率放大电路、驱动电路、缓冲电路、功率反馈电路、保护电路。其中,给出了整流滤波电路和功率放大电路的参数计算。 其次对超声波换能器的特性进行了分析,介绍了超声波换能器的串联谐振频率和并联谐振频率。然后对几种常用的匹配网络进行了分析,包括单个电感的匹配、电感-电容匹配、改进的电感-电容匹配,分析了其优点和缺点。 然后由于超声波电源需具有性能高、功率大、成本低的特点,要求能较好适应超声波换能器阻抗变化、频率漂移等所带来的疑难问题。本文介绍了超声波电源几种常见的频率跟踪方案。本文研究的是一种传统的自激式超声波电源,串联谐振频率在20KHz左右,频率跟踪采用负载分压式反馈系统,在以前手动调节电感的基础上,通过在反馈回路添加通过AVR单片机控制数字电感来跟踪超声波换能器的谐振频率,易操作,能稳定运行。 最后在理论设计的基础上,对超声波电源各个组成电路进行了实际制作,在超声波电源与超声波换能器匹配无误、工作稳定后,对有关电路进行了现场试验验证。实验结果表明,该超声波电源具有一定的使用价值。
上传时间: 2022-06-08
上传用户: