51单片机1.docx
- 文档编号:11497857
- 上传时间:2023-06-01
- 格式:DOCX
- 页数:20
- 大小:148.83KB
51单片机1.docx
《51单片机1.docx》由会员分享,可在线阅读,更多相关《51单片机1.docx(20页珍藏版)》请在冰点文库上搜索。
51单片机1
1、51单片机
1.1简介
当前常用的51系列单片机主要产品有:
*Intel的:
80C31、80C51、87C51,80C32、80C52、87C52等;
*ATMEL的:
89C51、89C52、89C2051等;
*Philips、华邦、Dallas、Siemens(Infineon)等公司的许多产品
图1.1是单片机典型组成框图,由图可见它通过内部总线把计算机的各主要部件连为一体,其内部总线包括地址总线、数据总线和控制总线。
其中,地址总线的作用是为进行数据交换时提供地址,CPU通过将地址输出到存储器或I/O接口;数据总线用于在CPU与存储器或I/O接口之间或存储器与外设之间交换数据;控制总路线包括CPU发出的控制信号线和外部送入CPU的应答线等。
图1.1单片机结构框图
下面介绍下51单片机的引脚的功能和其内部结构图。
51单片机实际有郊的引脚为40个,以下是51单片机的DIP封装形式的引脚的名称,如图1.1。
图1.2基础51单片机
51系列单片机的引脚功能:
主电源引脚Vss、Vcc
Vss:
接地,Vcc:
接+5V电源
外接晶振引脚XTAL1、XTAL2
XTAL1:
片内反向放大器输入端,XTAL2:
片内反向放大器输出端
输入/输出引脚P0、P1、P2、P3
P0.0~P0.7:
P0口的8个引脚,P0口是8位漏极开路型双向I/0端口,在接有片外存储器或I/0扩展接口时,P0.0~P0.7分时复用,作低8位地址总线与双向8位数据总线
P1.0~P1.7:
P1口的8个引脚,P1口是一个带内部上拉电阻的8位双向I/O口,对于52子系列,P1.0还可用于定时器/计数器2的计数脉冲输入端T2,P1.1还可作定时器/计数器2的外部控制端T2EX。
P2.0~P2.7:
P2口的8个引脚,P2口也是一个带内部上拉电阻的双向I/O口,在访问片外存储器或扩展I/O接口时,还用于提供高8位地址。
P3.0~P3.7:
P3口的8个引脚,P3口也是一个带上拉电阻的I/O口,除可以作双向的输入输出口外,还具有第2功能。
见表1.1。
表1.1P3口第二功能表
引脚
第二功能
P3.0
P3.1
P3.2
P3.3
P3.4
P3.5
P3.6
P3.7
RXD(串行口输入)
TXD(串行口输出)
INT0(外部中断0输入)
INT1(外部中断1输入)
T0(定时器0的外部中断)
T1(定时器1的外部中断)
WR(片外数据存储器写控制信号)
RD(片外数据存储器读控制信号)
控制线(4条):
ALE/PROG:
双功能引脚。
由于P0口的8个引脚是低8位地址总线与数据总线分时复用,因此必须将P0口输出的低8位地址进行锁存。
在访问片外存储器时,每机器周期该信号出现2次。
其下降沿用于控制锁存P0口输出的低8位地址。
即使不访问片外存储器,该引脚上仍出现上述频率的周期性信号,因此也可作为对外输出的时钟脉冲,频率为振荡器频率的1/6,必须注意的是:
在访问片内外存储器时,ALE脉冲会跳空1个。
对片内含有EPROM的机型,此引脚在编程时可作为编程脉冲PROG的输入端。
PSEN:
片外程序存储器读选通信号输出端,在CPU从片外程序存储器取指期间,此信号每个机器周期两次有效,以通过P0口读入指令,在访问片外数据存储器时,该信号不出现。
EA/Vpp:
双功能引脚,为片外程序存储器选用端。
当该引脚信号有效时,选择片外程序存储器,即EA/Vpp=1时,访问片内程序存储器。
对片内含有EPROM的机型,此引脚在编程期间用于施加+21v的编程电压。
RST/VPO:
双功能引脚,在单片机工作期间,当此引脚上出现连接2个机器周期的高电平时可实现复位操作。
在Vcc掉电期间,若该引脚接备用电源(+5v),可向片内RAM供电,以保存片内RAM中的信息。
1.2功能
图2、功能结构
·8位CPU·4kbytes程序存储器(ROM)(52为8K)
·128bytes的数据存储器(RAM)(52有256bytes的RAM)
·32条I/O口线·111条指令,大部分为单字节指令
·21个专用寄存器
·2个可编程定时/计数器·5个中断源,2个优先级(52有6个)
·一个全双工串行通信口
·外部数据存储器寻址空间为64kB
·外部程序存储器寻址空间为64kB
·逻辑操作位寻址功能·双列直插40PinDIP封装
·单一+5V电源供电
CPU:
由运算和控制逻辑组成,同时还包括中断系统和部分外部特殊功能寄存器;
RAM:
用以存放可以读写的数据,如运算的中间结果、最终结果以及欲显示的数据;
ROM:
用以存放程序、一些原始数据和表格;
I/O口:
四个8位并行I/O口,既可用作输入,也可用作输出
T/C:
两个定时/记数器,既可以工作在定时模式,也可以工作在记数模式;
五个中断源的中断控制系统;
一个全双工UART(通用异步接收发送器)的串行I/O口,用于实现单片机之间或单片机与微机之间的串行通信;
片内振荡器和时钟产生电路,石英晶体和微调电容需要外接。
最佳振荡频率为6M—12M。
1.3电脑仿真
Proteus自从有了单片机也就有了开发系统,随着单片机的发展开发系统也在不断发展。
keil是一种先进的单片机集成开发系统。
它代表着汇编语言单片机开发系统的最新发展,首创多项便利技术,将开发的编程/仿真/调试/写入/加密等所有过程一气呵成,中间不须任何编译或汇编。
1.4功能特性
1,可以仿真63K程序空间,接近64K的16位地址空间;
2,可以仿真64Kxdata空间,全部64K的16位地址空间;
3,可以真实仿真全部32条IO脚;
4,完全兼容keilC51UV2调试环境,可以通过UV2环境进行单步,断点,全速等操作;
5,可以使用C51语言或者ASM汇编语言进行调试;
6,可以非常方便地进行所有变量观察,包括鼠标取值观察,即鼠标放在某变量上就会立即显示出它此的值;
7,可选使用用户晶振,支持0-40MHZ晶振频率;
8,片上带有768字节的xdata,您可以在仿真时选使用他们,进行xdata的仿真;
9,可以仿真双DPTR指针;
10,可以仿真去除ALE信号输出.;
11,自适应300-38400bps的所有波特率通讯;
12,体积非常细小,非常方便插入到用户板中.插入时紧贴用户板,没有连接电缆,这样可以有效地减少运行中的干扰,避免仿真时出现莫名其妙的故障;
13,仿真插针采用优质镀金插针,可以有效地防止日久生锈,选择优质园脚IC插座,保护仿真插针,同时不会损坏目标板上的插座.;
14,仿真时监控和用户代码分离,不可能产生不能仿真的软故障;
15,RS-232接口不计成本采用MAX202集成电路,串行通讯稳定可靠,绝非一般三极管的简易电路可比。
2、LED显示屏
2.1简介
LED显示屏(LEDdisplay,LEDScreen):
又叫电子显示屏或者飘字屏幕。
是由LED点阵和ledpc面板组成,通过红色,蓝色,白色,绿色LED灯的亮灭来显示文字、图片、动画、视频,内容。
可以根据不同场合的需要做出不同的调节,比如一般的广告牌那些流动的字画,就是通过flash制作一个动画,储蓄在显示屏的一张内存卡里,再通过技术手法显示出来的,可以根据不同的需要随时更换,各部分组件都是模块化结构的显示器件。
传统LED显示屏通常由显示模块、控制系统及电源系统组成。
LED发光灯结构如图2.1所示,它由芯片3、阳极引脚1、阴极引脚2和环氧树脂封装外壳四部分组成。
它核心部分是具有复合发光功能的PN结,即芯片3。
环氧树脂封装外壳具有保护芯片的作用,还有透光聚光的能力,以增强显示效果。
图2.1LED发光灯
2.2使用方式
按控制或使用方式分同步和异步
同步方式是指LED显示屏的工作方式基本等同于电脑的监视器,它以至少30场/秒的更新速率点点对应地实监视器上的图时映射电脑像,通常具有多灰度的颜色显示能力,可达到多媒体的宣传广告效果。
异步方式是指LED屏具有存储及自动播放的能力,在PC机上编辑好的文字及无灰度图片通过串口或其他网络接口传入LED屏,然后由LED屏脱机自动播放,一般没有多灰度显示能力,主要用于显示文字信息,可以多屏联网。
2.3LED点阵显示屏
显示部分包括了一块至少可以显示一个汉字的显示屏,以及驱动该显示屏的驱动电路。
由于单片机的I/O口有限要不能直接用I/O口来驱动LED显示屏,所以需要对单片机IO口进行扩展增加单片机并行输出的能力。
LED显示屏是由一个一个的发光二极管点阵构成的,要构成大屏幕的LED显示屏就需要多个发光二极管。
构成LED屏幕的方法有两种,一是由单个的发光二极管逐点连接起来;二是选用一些由单个发光二极管构成的LED点阵子模块构成大的LED点阵模块。
本次采用5X7点阵显示屏,单个发光二极管构成显示屏优点在于当单个的发光二极管出现问题时只需更换一个二极管即可,检修的成本较低,缺点在于连接线路复杂。
一个5*7的点阵是由35个发光二极管按一个规律组成的,如图。
图2.25*7LED点阵
如图2.2所示的发光二极管,行接低电平,列接高电平,发光二极管导通发光。
3、系统硬件设计
显示屏是由发光二极管行列组成的LED点阵模块组成显示屏体。
图3.1硬件设计方案
3.1时钟电路
时钟电路用来提供单片机各种微操作的时间基准,如图3.2。
图3.2时钟电路
3.2复位电路
复位电路是单片机的片内电路初始化,使单片机从一种确定的状态开始运行。
复位操作通常有两种基本形式:
上电复位、开关复位。
此处选择上电复位,该操作要求接通电源后自动实现复位操作。
电容上电后使RST持续一段高电平时间,此处电解电容C设定参数为10uf,如图3.3所示:
图3.3复位电路
3.3系统总体电路图
图3.4系统总体电路图
4、系统软件设计
4.1程序设计分析
程序利用了一个外部中断,一个按键接一个外部中断,开始运行,实现功能1即A、B、C循环显示,按下按键产生外部中断0,实现功能2,数字1右移2上移3下移循环显示,按下按键返回主程序实现功能1.通过按按键实现功能1和2的转换。
4.2调试及仿真
经软件调试-仿真器proteus调试通过,得到所要求的设计结果A、B、C循环显示
图4.1调试仿真图a
数字1右移2上移3下移循环显示
图4.2调试仿真图b
4.3软件源程序
ORG0000H
LJMPSTART
ORG0003H
LJMPINTERUPT
ORG0100H
START:
/*初始化寄存器*/
SETBEA
CLRIT0
SETBEX0
MOVA,#00H
MOVR0,#20H
MOVR1,#6EH;调入数据到内存的数据长度(TAB数据量决定)
MOVR2,#00H
MOVR3,#20H;A显示时长
MOVR4,#20H;B显示时长
MOVR5,#20H;C显示时长
MOVDPTR,#TAB
ACALLINIT
LJMPMAIN
INIT:
MOVA,R2;将数据调入内存(使用R0数据储存器储存数据)
MOVCA,@A+DPTR
MOV@R0,A
INCR0
INCR2
DJNZR1,INIT
RET
ORG0200H
INTERUPT:
/*中断函数:
移位操作*/;由于寄存器使用数量较大,用循环地址加5需加寄存器数据储存读取
CLREA;已无法达到简化效果,故使用固定地址
MOVR5,#02H
WORK_1:
MOVR0,#2FH;移位循环1
LCALLBOOT_IN
MOVR0,#34H
LCALLBOOT_IN
MOVR0,#39H
LCALLBOOT_IN
MOVR0,#3EH
LCALLBOOT_IN
MOVR0,#43H
LCALLBOOT_IN
DJNZR5,WORK_1
MOVR5,#02H
WORK_2:
MOVR0,#48H;移位循环2右移;
LCALLBOOT_IN
MOVR0,#4DH
LCALLBOOT_IN
MOVR0,#52H
LCALLBOOT_IN
MOVR0,#57H
LCALLBOOT_IN
MOVR0,#5CH
LCALLBOOT_IN
DJNZR5,WORK_2
MOVR5,#02H
WORK_3:
MOVR0,#61H;移位循环3右移
LCALLBOOT_IN
MOVR0,#66H
LCALLBOOT_IN
MOVR0,#6BH
LCALLBOOT_IN
MOVR0,#70H
LCALLBOOT_IN
MOVR0,#75H
LCALLBOOT_IN
DJNZR5,WORK_3
WORK_2:
MOVR0,#48H;移位循环2上移
LCALLBOOT_IN
MOVR0,#4DH
LCALLBOOT_IN
MOVR0,#52H
LCALLBOOT_IN
MOVR0,#57H
LCALLBOOT_IN
MOVR0,#5CH
LCALLBOOT_IN
MOVR0,#61H
LCALLBOOT_IN
MOVR0,#66H
LCALLBOOT_IN
DJNZR5,WORK_2
MOVR5,#02H
WORK_3:
MOVR0,#6BH;移位循环3下移
LCALLBOOT_IN
MOVR0,#70H
LCALLBOOT_IN
MOVR0,#75H
LCALLBOOT_IN
MOVR0,#7AH
LCALLBOOT_IN
MOVR0,#7FH
LCALLBOOT_IN
MOVR0,#84H
LCALLBOOT_IN
MOVR0,#89H
LCALLBOOT_IN
DJNZR5,WORK_3
MOVR3,#20H;中断返回重新初始化
MOVR4,#20H
MOVR5,#20H
SETBEA
RETI
BOOT_IN:
MOVA,R0;显示输出初始化
MOVR3,A
MOVR4,#10H
LOOP_IN:
MOVA,R3;输出循环使字符“稳定”
MOVR0,A
MOVR1,#01H
MOVR2,#05H
PIO_IN:
MOVA,@R0;输出一个完整字符
MOVP0,A
MOVA,R1
MOVP2,A
LCALLDELAY
MOVP0,#0FFH;P0口清零消除显示误差
RLA
MOVR1,A
CLRA
INCR0
DJNZR2,PIO_IN
DJNZR4,LOOP_IN
RET
ORG0300H
MAIN:
/*A,B,C循环显示*/
LED_A:
MOVR0,#20H;R0地址为20H~24H时R0内储存的数据为A的显示数据
AJMPBOOT
LED_B:
MOVR0,#25H;R0地址为25H~29H时R0内储存的数据为B的显示数据
AJMPBOOT
LED_C:
MOVR0,#2AH;R0地址为2AH~2EH时R0内储存的数据为C的显示数据
BOOT:
MOVR1,#01H;显示输出初始化
MOVR2,#05H;输出循环使字符“稳定”
PIO:
MOVA,@R0;输出一个完整字符
MOVP0,A
MOVA,R1
MOVP2,A
LCALLDELAY
MOVP0,#0FFH;P0口清零消除显示误差
RLA
MOVR1,A
CLRA
INCR0
DJNZR2,PIO
AJMPWORK
WORK:
DJNZR3,LED_A;显示数据切换函数
MOVR3,#01H
DJNZR4,LED_B
MOVR4,#01H
DJNZR5,LED_C
MOVR3,#20H
MOVR4,#20H
MOVR5,#20H
LJMPLED_A
DELAY:
MOVR7,#01FH
DEL:
MOVR6,#05AH
DJNZR6,$
DJNZR7,DEL
RET
TAB:
DB03H,61H,64H,61H,03H;A
DB00H,36H,36H,36H,49H;B
DB41H,3EH,3EH,3EH,5DH;C
DB0FFH,5DH,40H,5FH,0FFH;1右移
DB0FFH,0FFH,5DH,40H,5FH
DB5FH,0FFH,0FFH,5DH,40H
DB40H,5FH,0FFH,0FFH,5DH
DB5DH,40H,5FH,0FFH,0FFH
DB0FFH,59H,4EH,56H,59H;2右移
DB59H,0FFH,59H,4EH,56H
DB56H,59H,0FFH,59H,4EH
DB4EH,56H,59H,0FFH,59H
DB59H,4EH,56H,59H,0FFH
DB0FFH,59H,4EH,56H,59H;2上移
DB0FFH,6CH,27H,2BH,6CH
DB0FFH,36H,53H,55H,36H
DB0FFH,1BH,69H,6AH,1BH
DB0FFH,4DH,74H,35H,4DH
DB0FFH,66H,3AH,5AH,66H
DB0FFH,33H,1DH,2DH,33H
DB0FFH,36H,36H,36H,49H;3右移
DB49H,0FFH,36H,36H,36H
DB36H,49H,0FFH,36H,36H
DB36H,36H,49H,0FFH,36H
DB36H,36H,36H,49H,0FFH
DB0FFH,36H,36H,36H,49H;2下移
DB0FFH,6CH,6CH,6CH,13H
DB0FFH,59H,59H,59H,26H
DB0FFH,33H,33H,33H,4CH
DB0FFH,66H,66H,66H,19H
DB0FFH,4DH,4DH,4DH,32H
DB0FFH,1BH,1BH,1BH,64H
END
5、总结与体会
本次课程设计是对所学知识的一次综合性运用。
其中包括对模拟电子技术基础、和数字电子技术基础、单片机等知识的运用。
从而完成了本次设计。
在设计的过程中发现了自身知识的不足,也发现我们必须具备专业基础知识以外,才能成功的设计出一件合格的东西。
这次课程设计收获很多,体会也很深刻,并且对我们所学的东西也产生了浓厚的兴趣。
在设计过程中,也学会了很多新的东西以及一些仿真软件的应用,最典型的就是PROTEUS软件的应用。
当然最重要的是学到了关于基本电子设计的一些基本方法,同时也加深了对一些常用的电子元件的理解及其基本用法的掌握。
除此之外,我觉得在这次设计的过程中,我发现团队精神的重要性,很多时候一个人的力量是有限的,一个人不可能什么都会,什么都能自己解决,还是有需要他人帮助的时候,我觉得人与人之间的相互帮助很有必要,这样不仅能帮助大家很快的解决问题,还能提高我们每个人的实际水平,也培养了我们的团队合作精神,这些能力对于我们今后的学习和工作都很有帮助。
由于时间关系,本次设计中还有不尽完善之处。
希望在以后的学习生涯钟不断的完善和改进。
6、参考文献
[1]谢自美.电子线路设计•实验•测试.华中科技大学出版社,2002.07
[2]康华光.电子技术基础(数字部分).高等教育出版社,2003.03
[3]康华光.电子技术基础(模拟部分).高等教育出版社,2003.03
[4]陈振官.新颖高效声光报警器DIY.国防工业出版社,2005.04
[5]肖景和.初学无线电——电子电路分析.人民邮电出版社,2006.01
[6]精英科技编著.电路设计完全手册.中国电力出版社.2001
[7]后俊伟编著.电路设计自动化.电子科技大学出版社.1995.11
[8]清源科技编著.Protel99SE电路原理图与PCB仿真.机械工业出版社.2007
[9]马建国,孟宪元主编.电子设计自动化技术基础.清华大学出版社.2004
[10]杜刚.电路设计与制版protel应用教程.清华大学出版社.2006
[11]赵晶编著.电路设计与制版protel99高级应用.人民邮电出版社.2000.11
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 51 单片机