1.有三根杆子A,B,C。A杆上有若干碟子 2.每次移动一块碟子,小的只能叠在大的上面 3.把所有碟子从A杆全部移到C杆上 经过研究发现,汉诺塔的破解很简单,就是按照移动规则向一个方向移动金片: 如3阶汉诺塔的移动:A→C,A→B,C→B,A→C,B→A,B→C,A→C 此外,汉诺塔问题也是程序设计中的经典递归问题
上传时间: 2016-07-25
上传用户:gxrui1991
利用伟福 Lab2000P单片机实验仪上提供的显示电路和键盘电路,做一个简单的计算器。用十六进制A键 =‘+’、B键 =‘-’、C键 = ‘x’、D键 = ‘/’、E键 = ‘=’、F键 = ‘C’。
上传时间: 2016-08-22
上传用户:ukuk
7段数码显示译码器设计7段数码是纯组合电路,通常的小规模专用IC,如74或4000系列的器件只能作十进制BCD码译码,然而数字系统中的数据处理和运算都是二进制的,所以输出表达都是十六进制的,为了满足十六进制数的译码显示,最方便的方法就是利用译码程序在FPGA/CPLD中来实现。例子作为七段译码器,输出信号LED7S的7位分别接数码管的7个段,高位在左,低位在右。例如当LED7S输出为“1101101”时,数码管的7个段g、f、e、d、c、b、a分别接1、1、0、1、1、0、1;接有高电平的段发亮,于是数码管显示“5”。
上传时间: 2014-01-26
上传用户:1427796291
给定两个集合A、B,集合内的任一元素x满足1 ≤ x ≤ 109,并且每个集合的元素个数不大于105。我们希望求出A、B之间的关系。 任 务 :给定两个集合的描述,判断它们满足下列关系的哪一种: A是B的一个真子集,输出“A is a proper subset of B” B是A的一个真子集,输出“B is a proper subset of A” A和B是同一个集合,输出“A equals B” A和B的交集为空,输出“A and B are disjoint” 上述情况都不是,输出“I m confused!”
标签:
上传时间: 2017-03-15
上传用户:yulg
【问题描述】 在一个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
Fortran - Tóm tắ t nộ i dung mô n họ c Các khái niệ m và yế u tố trong ngô n ngữ lậ p trình FORTRAN. Các câ u lệ nh củ a ngô n ngữ FORTRAN. Cơ bả n về chư ơ ng chư ơ ng dị ch và mô i trư ờ ng lậ p trình DIGITAL Visual Fortran. Viế t và chạ y các chư ơ ng trình cho các bài toán đ ơ n giả n bằ ng ngô n ngữ FORTRAN.
上传时间: 2013-12-25
上传用户:songrui
为了实现让单片机显示阿拉伯数字的功能,让我们来实现最简单的数码管显示: 单个数码管的静态驱动。 AVR单片机的端口驱动能力高达20mA,可以直接驱动数码管。可以利用ATmeg48 单片机的PD端口刚好可以驱动数码管的8个段。 这个实验的目的是在单个数码管上依次显示0,1,2,3,4,5,6,7,8,9,A, B,C,D,E,F共16个字符,为显示十六进制数做好技术准备。
上传时间: 2017-09-13
上传用户:498732662
走线状态,+tab,改变线宽;2d 线状态,+shift+tab ,切换倒角方式;crtl+左键 :高亮选中网络;左下角双击,层管理,显示或隐藏某一层;旋转:Space;X 轴镜像:X;Y 轴镜像:Y;板层管理:L;栅格设置:G;单位进制切换:Q;对齐-水平:A,D;对齐-垂直:A,I,I,Enter;对齐-顶部:A,T;对齐-底部:A,B;对齐-左侧:A,L;对齐-右侧:A,R;设计-类设置:D,C;设计-板层管理:D,K;
标签: Altium Designer
上传时间: 2022-04-17
上传用户:trh505
VIP专区-嵌入式/单片机编程源码精选合集系列(84)资源包含以下内容:1. 基于fpga和sopc的用VHDL语言编写的EDA的PS/2鼠标与VGA控制模块.2. 基于fpga和sopc的用VHDL语言编写的EDA的VGA彩条信号显示控制器.3. 基于fpga和sopc的用VHDL语言编写的EDA的VGA图像显示控制器.4. 基于fpga和sopc的用VHDL语言编写的EDA的PS/2和VGA控制显示控制器.5. 基于fpga和sopc的用VHDL语言编写的EDA的USB控制模块程序.6. 基于fpga和sopc的用VHDL语言编写的EDA的32位Nios CPU嵌入式系统软硬件设计.7. 基于fpga和sopc的用VHDL语言编写的EDA的32位Nios CPU嵌入式系统及其DMA设计俄罗斯方块游戏机.8. 北京革新公司的2410的看门狗测试程序.9. 基于PHILIPS ARM7的I2C驱动程序.10. rf cc2420开发的PROTEL原理图 处理器mega128 公司内部资料.11. MP4 AVI CODE AND TFT LCD CODE.12. 鼠标驱动范例.13. 采用CPLD来培植ALTERA公司的CYCLONE系列FPGA.14. DVB系统的SDI数据数据传输接口.15. VHDL数字钟 数字电子钟 此数字电子钟具有的功能包括: 1. 计时.16. 这十篇论文主要讲述了VXWORKS对外设的控制和通讯.17. 这是语音芯片ISD4004的操作代码.18. 这是芯片PMC6388的硬件初始化程序.19. 优先级算法以及调度算法中其他的算法。想要下载的朋友可以看看.20. 基于DAM6416开发板的PCI下载程序.21. 基于DAM6416的通过PCI的主机和视频口的通信程序.22. 基于DAM6416的通过PCI的视频口和主机的通信程序.23. 自己编制的加法器的verilog程序 希望对大家有所帮助.24. 在win(2000/2003)下面制作CRAMFS映像文件 专门用于嵌入式Linux开发 由于网络上没有类似的软件 索性自己写了一个 经过测试OK 全部源代码.25. 51按键典型程序 51按键典型程序.26. 液晶显示控制模块T6963的完整C函数,包括图形文本方式显示.27. arm开发板资料CPLD源代码armcore9.28. G729编码和解码的Matlab源程序 调用方法: 1.需要编码时.29. 我编的遗传算法matlab程序.30. MPS430ZIGBB PPT文档 相关介绍 对了解有一定作用.31. 该程序用来测试89C51与IDE硬盘的接口.32. 一个使用PROTEL99设计的一款程控滤波器.33. 2410开发板底板原理图.34. 大学当中跟别人做的一个东西.35. C8051F350的抗干扰数据采集程序.36. 完整的在Windows下 PCI CAN卡的驱动程序及测试程序.37. 功能:双字节十六进制小数转换成双字节BCD码小数 入口条件:待转换的双字节十六进制小数在R2、R3中。 出口信息:转换后的双字节BCD码小数仍在R2、R3中。 影响资源:PSW、A、B、R2.38. 浮点数代数值比较(不影响待比较操作数) 入口条件:待比较操作数分别在[R0]和[R1]中。 出口信息:若CY=1.39. 功能:浮点取整函数 入口条件:操作数在[R0]中。 出口信息:结果仍在[R0]中。 影响资源:PSW、A、R2、R3、R4、位PFA 堆栈需求: 6字节.40. 功能:浮点倒数函数 入口条件:操作数在[R0]中。 出口信息:OV=0时.
标签: 显微
上传时间: 2013-04-15
上传用户:eeworm
PC机之间串口通信的实现一、实验目的 1.熟悉微机接口实验装置的结构和使用方法。 2.掌握通信接口芯片8251和8250的功能和使用方法。 3.学会串行通信程序的编制方法。 二、实验内容与要求 1.基本要求主机接收开关量输入的数据(二进制或十六进制),从键盘上按“传输”键(可自行定义),就将该数据通过8251A传输出去。终端接收后在显示器上显示数据。具体操作说明如下:(1)出现提示信息“start with R in the board!”,通过调整乒乓开关的状态,设置8位数据;(2)在小键盘上按“R”键,系统将此时乒乓开关的状态读入计算机I中,并显示出来,同时显示经串行通讯后,计算机II接收到的数据;(3)完成后,系统提示“do you want to send another data? Y/N”,根据用户需要,在键盘按下“Y”键,则重复步骤(1),进行另一数据的通讯;在键盘按除“Y”键外的任意键,将退出本程序。2.提高要求 能够进行出错处理,例如采用奇偶校验,出错重传或者采用接收方回传和发送方确认来保证发送和接收正确。 三、设计报告要求 1.设计目的和内容 2.总体设计 3.硬件设计:原理图(接线图)及简要说明 4.软件设计框图及程序清单5.设计结果和体会(包括遇到的问题及解决的方法) 四、8251A通用串行输入/输出接口芯片由于CPU与接口之间按并行方式传输,接口与外设之间按串行方式传输,因此,在串行接口中,必须要有“接收移位寄存器”(串→并)和“发送移位寄存器”(并→串)。能够完成上述“串←→并”转换功能的电路,通常称为“通用异步收发器”(UART:Universal Asynchronous Receiver and Transmitter),典型的芯片有:Intel 8250/8251。8251A异步工作方式:如果8251A编程为异步方式,在需要发送字符时,必须首先设置TXEN和CTS#为有效状态,TXEN(Transmitter Enable)是允许发送信号,是命令寄存器中的一位;CTS#(Clear To Send)是由外设发来的对CPU请求发送信号的响应信号。然后就开始发送过程。在发送时,每当CPU送往发送缓冲器一个字符,发送器自动为这个字符加上1个起始位,并且按照编程要求加上奇/偶校验位以及1个、1.5个或者2个停止位。串行数据以起始位开始,接着是最低有效数据位,最高有效位的后面是奇/偶校验位,然后是停止位。按位发送的数据是以发送时钟TXC的下降沿同步的,也就是说这些数据总是在发送时钟TXC的下降沿从8251A发出。数据传输的波特率取决于编程时指定的波特率因子,为发送器时钟频率的1、1/16或1/64。当波特率指定为16时,数据传输的波特率就是发送器时钟频率的1/16。CPU通过数据总线将数据送到8251A的数据输出缓冲寄存器以后,再传输到发送缓冲器,经移位寄存器移位,将并行数据变为串行数据,从TxD端送往外部设备。在8251A接收字符时,命令寄存器的接收允许位RxE(Receiver Enable)必须为1。8251A通过检测RxD引脚上的低电平来准备接收字符,在没有字符传送时RxD端为高电平。8251A不断地检测RxD引脚,从RxD端上检测到低电平以后,便认为是串行数据的起始位,并且启动接收控制电路中的一个计数器来进行计数,计数器的频率等于接收器时钟频率。计数器是作为接收器采样定时,当计数到相当于半个数位的传输时间时再次对RxD端进行采样,如果仍为低电平,则确认该数位是一个有效的起始位。若传输一个字符需要16个时钟,那么就是要在计数8个时钟后采样到低电平。之后,8251A每隔一个数位的传输时间对RxD端采样一次,依次确定串行数据位的值。串行数据位顺序进入接收移位寄存器,通过校验并除去停止位,变成并行数据以后通过内部数据总线送入接收缓冲器,此时发出有效状态的RxRDY信号通知CPU,通知CPU8251A已经收到一个有效的数据。一个字符对应的数据可以是5~8位。如果一个字符对应的数据不到8位,8251A会在移位转换成并行数据的时候,自动把他们的高位补成0。 五、系统总体设计方案根据系统设计的要求,对系统设计的总体方案进行论证分析如下:1.获取8位开关量可使用实验台上的8255A可编程并行接口芯片,因为只要获取8位数据量,只需使用基本输入和8位数据线,所以将8255A工作在方式0,PA0-PA7接实验台上的8位开关量。2.当使用串口进行数据传送时,虽然同步通信速度远远高于异步通信,可达500kbit/s,但由于其需要有一个时钟来实现发送端和接收端之间的同步,硬件电路复杂,通常计算机之间的通信只采用异步通信。3.由于8251A本身没有时钟,需要外部提供,所以本设计中使用实验台上的8253芯片的计数器2来实现。4:显示和键盘输入均使用DOS功能调用来实现。设计思路框图,如下图所示: 六、硬件设计硬件电路主要分为8位开关量数据获取电路,串行通信数据发送电路,串行通信数据接收电路三个部分。1.8位开关量数据获取电路该电路主要是利用8255并行接口读取8位乒乓开关的数据。此次设计在获取8位开关数据量时采用8255令其工作在方式0,A口输入8位数据,CS#接实验台上CS1口,对应端口为280H-283H,PA0-PA7接8个开关。2.串行通信电路串行通信电路本设计中8253主要为8251充当频率发生器,接线如下图所示。
上传时间: 2013-12-19
上传用户:小火车啦啦啦