自制89C51单片机实验电路板 学习单片机离不开实验,以往单片机的实验往往依赖于仿真机和单片机学习系统,价格昂贵,初学者很难配备。近年来,随着FLASH型单片机的广泛应用,采用软件模拟加写片验证成为一种经济实用的实验方法,以AT89C51单片机为例,其价格不足¥10RMB,而擦、写次数可以有1000次,一块芯片即可做上千次的实验。目前,流行的单片机开发软件Keil可以免费获得用于学习的EVAL版;编程器价格并不昂贵,专门用于写89C51类芯片的编程器价格更低廉(不足百元),而且编程器也是以后开发单片机所必备的工具;相比之下,用于实验的电路板制作比较麻烦,用万用板搭接,只能做些很简单的电路,稍复杂的电路一般要用到双面板,而业余条件下是很难自制双面板的,而且实验电路板主要是用于学习,学完了,也就没有什么使用价值了,所以很多人希望能够廉价地获得。作者在多年单片机教学(包括从事网络教学)的基础上,开发了一块有较多功能但使用单面板的单片机实验板,适于业余爱好者自制。这块实验板采用89C51为主芯片,板上安装了5位数码管,8个发光二极管,四个按钮开关,一个简单的音响电路,一个用于计数实验的振荡器,At24CXXX类芯片插座,X5045芯片插座,RS232串行接口等。使用这块实验板可以进行流水灯、人机界面程序设计、音响、中断、计数器等基本编程练习,还可以学习I2C接口芯片使用、SPI接口芯片使用、与PC机进行串行通讯等目前较为流行的技术。图1是该实验板的电路原理图,从图中可以看出,该实验板由若干块集成电路和一些阻容元件等组成,下面我们就分别介绍。1、发光二极管接口主芯片(U1)的P1端口接了8个发光二极管,这些发光二极管的负极接到P1端口各引脚,而正极则通过一个排电阻(标号为JP4,阻值为470殴)接到正电源端,这样,这些发光二极管亮的条件就U1的P1口相引的引脚为低电平,即如果P1口某引脚输出为0,相应的灯亮,如果输出为1,相应的灯灭。例:MOV P1,#0FH该行程序将使发光二极管L1-L4熄灭,而L5-L8点亮。2、数码管接口U1的P0口和P2口的部份引脚构成了5位LED数码管驱动电路,这里LED数码管采用了共阳型,共阳型数码管的笔段(即对应abcdefgh)引脚是二极管的负极,所有二极管的正极连在一起,构成公共端,即片选端,对于这种数码管的驱动,要求在片选端提供电流,为此,使用了PNP型三极管作为片选端的驱动,共使用5只三极管,所有三极管的发射极连在一起,接到正电源端,它们的基极则分别连到P2.0⋯P2.4,这样,当P2.0⋯P2.4中某引脚输出是高电平时,三极管不导通,不能给相应位的数码管供电,该位数码管的所有笔段都不亮,反之,如果某引脚是低电平时,三极管导通,可以给相应的数码管供电,该位数码管是否点亮,点亮哪些笔段,取决于这些笔段引脚是高或低电平。从图图1 共阳型数LED显示器.....
上传时间: 2013-11-14
上传用户:dingdingcandy
TinyM0是广州致远电子有限公司为企业用户和高校师生设计的一款开发工具,核心微控制器采用的NXP公司最新推出的LPC1100系列Cortex-M0内核芯片。LPC1100微控制介绍:LPC1100系列微控制器采用了ARM公司最新发布的Cortex-M0内核,工作频率高达50MHz,功耗低至150μA/MHz,性能卓越、应用简单,更突出的是,它能够显著降低所有8/16位应用的代码长度,并且具有极低的市场定价,其价值和易用性比现有的8/16位微控制器更胜一筹,为追求ARM架构的8/16位用户提供了一种全新的32位解决方案。
上传时间: 2013-11-21
上传用户:几何公差
TinyM0是广州致远电子有限公司为企业用户和高校师生设计的一款开发工具,核心微控制器采用的NXP公司最新推出的LPC1100系列Cortex-M0内核芯片。LPC1100微控制介绍:LPC1100系列微控制器采用了ARM公司最新发布的Cortex-M0内核,工作频率高达50MHz,功耗低至150μA/MHz,性能卓越、应用简单,更突出的是,它能够显著降低所有8/16位应用的代码长度,并且具有极低的市场定价,其价值和易用性比现有的8/16位微控制器更胜一筹,为追求ARM架构的8/16位用户提供了一种全新的32位解决方案。
上传时间: 2013-11-18
上传用户:laomv123
题目:利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。 1.程序分析:(a>b)?a:b这是条件运算符的基本例子。
上传时间: 2015-01-08
上传用户:lifangyuan12
RSA算法 :首先, 找出三个数, p, q, r, 其中 p, q 是两个相异的质数, r 是与 (p-1)(q-1) 互质的数...... p, q, r 这三个数便是 person_key,接著, 找出 m, 使得 r^m == 1 mod (p-1)(q-1)..... 这个 m 一定存在, 因为 r 与 (p-1)(q-1) 互质, 用辗转相除法就可以得到了..... 再来, 计算 n = pq....... m, n 这两个数便是 public_key ,编码过程是, 若资料为 a, 将其看成是一个大整数, 假设 a < n.... 如果 a >= n 的话, 就将 a 表成 s 进位 (s
标签: person_key RSA 算法
上传时间: 2013-12-14
上传用户:zhuyibin
数据结构中堆栈的具体应用,实现表达式的化简、求值等功能,可以自由确定变量,并且可以给变量赋值。Vc开发,包括了用户操作界面,输入输出清晰。
上传时间: 2013-12-05
上传用户:gut1234567
餐厅结账管理程序提供中小型餐厅所需要的点菜结账功能,并提供几种常用的统计报表以及各个数据库的管理维护功能。操作界面简洁方便,操作简单,运行稳定。 程序编写工具为C++Builder6,在其数据库相关的技术基础之上完成,数据库类型为Paradox,它是一种与C++Builder的BDE(Borland Database Engine)结合最为紧密的数据库驱动类型。程序从餐厅结账管理的实际情况出发,通过对实际问题的分析,算法和交互界面的设计与实现,程序的编写和调试等过程,最终实现了预求的餐厅结账管理的各项功能。
上传时间: 2015-03-31
上传用户:Ants
您想您的应用程序具有MacOS,WinXP或者更多专业的UI设计的界面风格和外观吗?现在您可以实现这一切,并且不用写一行代码! > >SUIPack是一款为Delphi和C++Builder开发的所见即所得的界面增强VCL组件,它可以帮助您创建具有专业的界面外观 设计的应用程序,大大节省您的时间和开发成本。 > >这些界面风格和外观大部分出自我们的UI设计师的精心设计。 > >请注意,我们提供的不仅仅是界面实现控件,更包含专业的界面方案设计! > >SUIPack兼容:Delphi 2005, Delphi 5/6/7, C++Builder 5/6. >使用SUIPack的程序,可以运行在:Win95及其以上所有版本Windows平台. qq:313433524
上传时间: 2015-04-20
上传用户:wkchong
无线通信系统中密钥流生成器——LILI-II。以VC++为编程工具,制作了操作简单,实用性较强的用户操作界面,并对Fibonacci 结构、Galois结构两种方式的LFSR
上传时间: 2013-11-26
上传用户:从此走出阴霾
数字运算,判断一个数是否接近素数 A Niven number is a number such that the sum of its digits divides itself. For example, 111 is a Niven number because the sum of its digits is 3, which divides 111. We can also specify a number in another base b, and a number in base b is a Niven number if the sum of its digits divides its value. Given b (2 <= b <= 10) and a number in base b, determine whether it is a Niven number or not. Input Each line of input contains the base b, followed by a string of digits representing a positive integer in that base. There are no leading zeroes. The input is terminated by a line consisting of 0 alone. Output For each case, print "yes" on a line if the given number is a Niven number, and "no" otherwise. Sample Input 10 111 2 110 10 123 6 1000 8 2314 0 Sample Output yes yes no yes no
上传时间: 2015-05-21
上传用户:daguda