本代码为编码开关代码,编码开关也就是数字音响中的 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
AT89S52是一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash 存储器。使用Atmel 公司高密度非 易失性存储器技术制造,与工业80C51 产品指令和引脚完 全兼容。片上Flash允许程序存储器在系统可编程,亦适于 常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统 可编程Flash,使得AT89S52为众多嵌入式控制应用系统提 供高灵活、超有效的解决方案。
上传时间: 2013-11-27
上传用户:bruce5996
实验源代码 //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
SOPC,是一种特殊的嵌入式系统,即由单个芯片完成整个系统的主要逻辑功能,具有灵活的设计方式,可裁减、可扩充、可升级,并具备软硬件在系统可编程的功能
上传时间: 2020-03-01
上传用户:Vincent丶
工业生产和科学研究过程中,流量测量必不可少,由于超声波流量计可以将超声换能器火装在管道外面进行非接触测量,无需中断管道,设计和安装方便,并且满足大部分工业生产的精度要求,近年来得到了广泛应用.本设计采用了多脉冲时差法测量技术,增强了系统的抗干扰性,改善了测量效果。系统的硬件部分以MSP430F155为控制核心,选用了高精度时间数字转换器TDC-GPI和复杂可编程逻辑器件spl.S11032等芯片.充分发挥了ispL.S1032的在系统可编程性,设计了超声波退耦合脉冲定时器、抗干扰滤波器、数字单稳态触发器等电路,实现了多脉冲的时间差测量,进一步提高了硬件抗干扰性,并且完成了系统时钟同步和电平转换的任务。通过芯片内部的门电路传播时延实现系统传播时间的测量,可以达到较高的测量精度,与传统的通过高速数字计数器测时的方式相比,有很大的优势,可以在较低的频率下完成电路的设计,避免了高频电路设计中所带来的更繁杂的电磁兼容等方面的问题。软件设计是基于嵌入式实时操作系统Small RTOS 430的实现.Small RTOS 430是由IC/OS-I和Small RTOS 51经过改写和移植而来,最大限度的减少了操作系统本身的代码量和所需的内存空间,整个软件系统以任务为单位,任务的实现相互独立,简化了软件的开发过程,缩短了开发周期,增强了系统的可靠性本文设计的时差法超声波流量计,采用了TDC-GPI测量传播时间差,保证了较高的测量精度;使用ispLS1032完成了多脉冲情况下时间差的确定和超声波退耦合脉冲定时器、抗干扰滤波器等硬件抗干扰电路,改善了超声波流量计的测量效果.
标签: 超声波流量计
上传时间: 2022-06-21
上传用户:得之我幸78
首先,论文研究的室内导航是基于手动配置或者自动化程序构建的owM网络,而不是现有商场的WiFi热点,增加了网络的可控性,同时导航系统也可以更好的利用网络的特点。OwM网络节点由OpenWrt系统的路由器构成,OpenWrt系统可编程,因此整个网络可以按照需求自定义功能。其次,导航系统以店铺邻接关系数据库作为简单的室内地图数据,店铺管理人员通过导航软件录入店铺邻接关系,通过分布式数据库的同步,得到完整店铺邻接关系数据,即简易室内地图,有效地解决室内地图缺少的问题。这种获得室内地图的方法,相比其他方法更简单,成本更低。最后,店铺邻接关系数据库又是基于OwM网络的分布式数据库,作为简单的室内地图数据,有效的避免了集中式数据库组织上的缺点,提高了系统的可靠性。Mesh网络具有自组织、多跳的特点,但是数据访问时间长。基于owM网络的室内导航,结合了Mesh网络和分布式数据库的优点,既实现网络自组织、多跳功能,同时缩短了数据库访问时间,降低了数据传输的代价。基于OWM网络的室内导航系统有效地结合了OpenWrt.Mesh网络和分布式数据库的优点,后续可以采用聚类算法缩减顶点个数,缩短导航时间,网络节点连接方式可以考虑网桥,实现全网通信。关键词:室内导航;OpenWrt;OwM网络;分布式数据库
上传时间: 2022-06-23
上传用户:得之我幸78
STC12C5A60S2单片机是深圳宏晶科技有限公司的典型单片机产品,采用了增强型8051内核,片内集成了60KB程序Flash、1KB数据Flash(EEPROM)、1280字节RAM、2个16位定时/计数器、44根I/O口线、2个全双工异步串行口(UART)、高速同步通信端口(SPI)、8通道10位ADC、2通道PWM/可编程计数器阵列/捕获/比较单元(PWM/PCA/CCU)、MAX810专用复位电路和硬件看门狗等资源。STC12C5A60S2指令系统完全兼容8051单片机,并具有在系统可编程(ISP)功能和在系统调试(ISD)功能,可以省去价格较高的专门编程器,开发环境的搭建非常容易。STC12C5A60S2的所有指令和标准的8051内核完全兼容,具有良好的兼容性和很强的数据处理能力,所以,原来讲解8051单片机的师资力量可以充分发挥以前讲解单片机原理及应用课程的经验;对于具有8051单片机知识的读者,不存在转型困难的问题。本书介绍了STC12C5A60S2单片机的硬件结构、汇编语言程序设计,并详细介绍了应用于单片机的C语言程序设计,以KeiluVision集成开发环境作为程序设计和调试环境介绍了程序的调试方法。以目前流行的智能车竞寒中的智能汽车控制器以及压力测控系统两个综合设计实例为背景,介绍了单片机中各部分的硬件功能和应用设计以及相关的汇编语言、C语言程序设计与调试;特别介绍了嵌入式操作系统以C/OS-IⅡ的裁减和应用。教材的每一章都给出了相应的习题,便于教学。与教材配套的电子教案、书中的所有实例以及最后一章的应用系统设计相关内容都可以从站上下载。
上传时间: 2022-06-25
上传用户:
窄带物联网 NB-IoT 是国际通信标准化机构 3GPP 于 2016 年 5 月完成其核心标准制定的面向智能抄表、工厂设备远程测控、智能农业、智能家居等应用领域的新一代物联网通信体系,是低功耗广域网 LPWAN 的重要一员。NB-IoT 应用系统将成为许多实体行业的关键技术。然而,进行NB-IoT 应用系统的技术研发具有较高的技术门槛,研发成本高、周期长,是许多终端企业面临的重要难题。为了解决这个难题,学术界需要从技术科学范畴,从面向应用角度,研究 NB-IoT 应用产品开发的共性技术,为产业界进行 NB-IoT 应用产品开发提供基础支撑。本书就是着眼于这一目标,研究与 NB-IoT 应用开发共性技术相对应的抽象模型,为降低 NB-IoT 应用开发的技术门槛提供技术基础。书中从技术科学层面,提出了窄带物联网 NB-IoT 应用架构,该架构由终端 UE、信息邮局MPO、人机交互系统 HCI 三个部分组成。NB-IoT 终端 UE 就是形式各异的 NB-IoT 应用产品,其共性技术研究是本书的重点之一。书中把负责 NB-IoT 通信的设施抽象为“信息邮局 MPO”,抽象为固定 IP 地址及端口,以便简化应用系统的编程。NB-IoT 人机交互系统 HCI 就是通用计算机、笔记本电脑、平板电脑、手机等设备的抽象,它具有服务器、网页、微信、短信、手机 APP 等技术表现形式多样性,其共性技术的抽取,以及 HCI 与 UE 的贯通共性技术研究,也是本书重点内容之一。
上传时间: 2022-07-08
上传用户:1208020161