自制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
这是motorola公司的powerpc芯片上的嵌入式linux上的驱动程序和测试程序,包括led驱动实例,二层交换芯片bm8024设备驱动和memory等
上传时间: 2013-11-26
上传用户:nairui21
RSA公钥加密算法基于大整数因式分解困难这样的事实。 选择两个素数,p,q。(一般p,q选择很大的数) 然后计算 z=p*q f=(p-1)(q-1) 选择一个n,使gcd(n,f)=1(gcd代表greatest common divider,一般n也选择一个素数), n和z就作为公钥。 选择一个s,0<s<f,满足n*s % f=1,s就作为私钥。
上传时间: 2013-12-14
上传用户:wxhwjf
应 用 程 序 启 动 封 面 很 多 大 型 应 用 程 序 都 有 启 动 封 面, 如Word 等 办 公 系 列 软 件 和VC + + 等编 程 软 件。 通 过 启 动 封 面, 除 了 显 示 应 用 程 序 名 称 和 版 权 等 提 示 画 面,还 可 避 免 由 于 应 用 程 序 启 动 前 进 行 大 量 数 据 初 始 化 时, 用 户 较 长 时 间 的等 待, 给 应 用 程 序 增 添 了 许 多 动 态 特 性 和 专 业 规 范
标签:
上传时间: 2013-12-22
上传用户:banyou
89s51单片机控制的键盘和led系统,键盘送数led从低到高位的显示
上传时间: 2014-01-07
上传用户:luopoguixiong
本程序为嵌入式linux驱动,全部采用gcc开发,是个人原创。本程序对优龙FS2410开发板实验指导手册上的嵌入式LINUX的LED驱动进行了修正。修正了其LED驱动的多处错误,1、寄存器设置的值错了。2、寄存器地址重复定义。本程序还加入了跑马灯程式。
上传时间: 2016-02-09
上传用户:qiaoyue
本代码适合嵌入式系统(爱普生S1C33209)硬件驱动,其中包括led驱动,key驱动,timer驱动,以及必须的boot,vector等源代码。
上传时间: 2016-07-31
上传用户:lps11188
题目7:输入四个十进制数(0-50)。 要求: (1)十进制输出偶数的个数。 (2)统计偶数的和 和 奇数和,并以从大到小的顺序输出这两个数。 (3)用十进制显示第二大的数。
上传时间: 2014-01-12
上传用户:1159797854
(3)编写一个简单的猜数游戏程序: 利用Math.random()方法生成0-1之间的double型数dNum,将dNum转换为0-100之间的整数iNum。 利用KeyInput.readInt()方法接收键盘输入的整数inNum。如果inNum小于iNum,在屏幕上显示“输入的值小,请输入更大的数.”;如果inNum大于iNum,在屏幕上显示“输入的值大,请输入更小的数.”;如果inNum等于iNum,在屏幕上显示“猜对了.”,并结束运行。 猜测错误的时候,重新输入inNum,直到猜对为止。如果猜测10次后仍未猜对,显示“猜测次数已达10次,猜数失败.”,并结束程序的运行。
上传时间: 2016-08-19
上传用户:sxdtlqqjl
对码率为1/n的递归卷积码(系统码!)的最大似然译码,采用相关度量,截断长度为1024,最大状态数为1024
上传时间: 2014-11-29
上传用户:kr770906