80C51单片机(精选)
- 格式:ppt
- 大小:1.57 MB
- 文档页数:28
单片机原理及应用第6章80C51单片机的串行口80C51单片机是一种基于哈佛架构的8位单片机,具有强大的串行口功能。
串行口是一种通信接口,可以通过单根线传输数据。
本章将介绍80C51单片机的串行口原理及其应用。
一、80C51单片机的串行口原理80C51单片机的串行口包含两个寄存器,分别是SBUF(串行缓冲器)和SCON(串行控制寄存器)。
SBUF寄存器用来存储待发送或接收到的数据,SCON寄存器用来配置和控制串行口的工作模式。
80C51单片机的串行口有两种工作模式:串行异步通信模式和串行同步通信模式。
1.串行异步通信模式串行异步通信是指通信双方的时钟频率不同步,通信的数据按照字符为单位进行传输,字符之间有起始位、数据位、校验位和停止位组成。
80C51单片机的串行口支持标准的RS-232通信协议和非标准通信协议。
在串行异步通信模式下,SCON寄存器需要配置为相应的工作模式。
首先,需要选择串行口的工作模式。
80C51单片机支持第9位,即扩展模式,可以用来检测通信错误。
其次,需要设置波特率。
波特率是指数据每秒传输的位数,用波特率发生器(Baud Rate Generator,BRGR)来控制。
然后,需要设置起始位、数据位和停止位的配置,包括数据长度(5位、6位、7位或8位)、停止位的个数(1位或2位)。
在发送数据时,将待发送的数据通过MOV指令传送到SBUF寄存器,单片机会自动将数据发送出去。
在接收数据时,需要检测RI(接收中断)标志位,如果RI为1,表示接收到数据,可以通过MOV指令将接收到的数据读取到用户定义的变量中。
2.串行同步通信模式串行同步通信是指通信双方的时钟频率同步,在数据传输时需要时钟信号同步。
80C51单片机的串行同步通信支持SPI(串行外设接口)和I2C(串行总线接口)两种协议。
在串行同步通信模式下,SCON寄存器需要配置为相应的工作模式。
首先,需要选择串行口的工作模式。
80C51单片机支持主从模式,可以作为主设备发送数据,也可以作为从设备接收数据。
80c51单片机定时器计数器工作原理80C51单片机是一种常用的微控制器,其定时器/计数器(Timer/Counter)是实现定时和计数功能的重要组件。
以下简要介绍80C51单片机定时器/计数器的工作原理:1. 结构:定时器/计数器由一个16位的加法器构成,可以自动加0xFFFF(即65535)。
定时器/计数器的输入时钟可以来自系统时钟或外部时钟源。
2. 工作模式:定时模式:当定时器/计数器的输入时钟源驱动加法器不断计数时,可以在达到一定时间后产生中断或产生其他操作。
计数模式:当外部事件(如电平变化)发生时,定时器/计数器的输入引脚可以接收信号,使加法器产生一个增量,从而计数外部事件发生的次数。
3. 定时常数:在定时模式下,定时常数(即定时时间)由预分频器和定时器/计数器的初值共同决定。
例如,如果预分频器设置为1,定时器/计数器的初值为X,那么实际的定时时间 = (65535 - X) 预分频系数输入时钟周期。
在计数模式下,定时常数由外部事件发生的时间间隔决定。
4. 溢出和中断:当加法器达到65535(即0xFFFF)时,会产生溢出,并触发中断或其他操作。
中断处理程序可以用于执行特定的任务或重置定时器/计数器的值。
5. 控制寄存器:定时器/计数器的操作可以通过设置相关的控制寄存器来控制,如启动/停止定时器、设置预分频系数等。
6. 应用:定时器/计数器在许多应用中都很有用,如时间延迟、频率测量、事件计数等。
为了充分利用80C51单片机的定时器/计数器功能,通常需要根据实际应用需求配置和控制相应的寄存器,并编写适当的软件来处理定时器和计数器的操作。
第三章-80C51单片机的指令系统80C51单片机是一种常用的微控制器,广泛应用于嵌入式系统中。
其指令系统是该单片机的核心组成部分,决定了其功能和特性。
在本文中,我们将深入探讨80C51单片机的指令系统,包括其指令格式、指令集以及指令的执行过程。
一、指令格式80C51单片机的指令格式通常由若干个字节组成,每个字节又分为几个字段。
具体而言,一条指令通常包括操作码、目标操作数和源操作数等字段。
其中,操作码表示指令的类型和功能,目标操作数表示指令操作的目标寄存器或内存单元,源操作数表示指令操作的源寄存器或内存单元。
以MOV指令为例,其指令格式如下:| 操作码 | 目标操作数 | 源操作数 |其中,操作码为一个字节,表示MOV指令;目标操作数和源操作数也为一个字节,分别表示指令操作的目标和源。
二、指令集80C51单片机的指令集丰富多样,包括数据传送指令、算术运算指令、逻辑运算指令、分支指令等等。
这些指令可以实现各种功能,满足不同的应用需求。
1. 数据传送指令数据传送指令用于将数据从一个寄存器或内存单元复制到另一个寄存器或内存单元。
例如,MOV指令可以实现数据传送操作。
2. 算术运算指令算术运算指令用于进行加法、减法、乘法和除法等运算。
例如,ADD指令可以实现两个操作数的相加操作。
3. 逻辑运算指令逻辑运算指令用于进行与、或、非、异或等逻辑运算。
例如,AND 指令可以实现两个操作数的与运算。
4. 分支指令分支指令用于实现循环、条件判断和跳转等功能。
例如,JMP指令可以无条件跳转到指定的地址。
除了上述指令之外,80C51单片机还支持位操作指令、移位指令、输入输出指令等。
三、指令执行过程在80C51单片机中,指令的执行过程包括取指、译码、执行以及访问存储器等阶段。
1. 取指阶段取指阶段是指令执行的第一步,其目的是从存储器中读取指令。
取指的过程通常涉及到程序计数器的操作,确定下一条要执行的指令地址。
2. 译码阶段译码阶段是将取到的指令进行解码,将其转换为内部指令表示形式,以便后续的执行。
80c51单片机习题与解答单片机作为一种嵌入式计算机芯片,具有体积小、功耗低、性能高的特点,被广泛应用于各个领域。
本文将针对80C51单片机进行一些常见的习题及其解答,旨在帮助读者更好地理解和掌握该单片机的应用。
1. 习题一:如何将80C51的IO口设为输入模式?解答:在80C51的寄存器中,P1是一个8位的数据口,可以通过以下操作将其设为输入模式:```assemblyMOV P1, #0FFH ;将P1口设置为输入模式```2. 习题二:如何用80C51实现定时器功能?解答:80C51具有一个可编程的定时器/计数器,可以通过以下步骤实现定时器功能:- 配置定时器的控制寄存器,选择定时器模式和工作方式;- 设置定时器的初始值;- 启动定时器;- 在定时器溢出时中断或轮询检测。
3. 习题三:如何使用80C51的串口通信功能?解答:80C51具有一个串行通信口(UART),可以通过以下步骤使用串口通信功能:- 配置串口控制寄存器,设置通信参数,如波特率、数据位数、停止位等;- 发送数据时,将要发送的数据写入SBUF寄存器;- 接收数据时,通过中断或轮询的方式读取SBUF寄存器中的数据。
4. 习题四:80C51的中断优先级如何设置?解答:80C51的中断有两级优先级:高优先级和低优先级。
优先级高的中断在发生时会立即被响应,而优先级低的中断则需要等待高优先级中断完成后才能响应。
中断优先级可通过设置中断控制寄存器来实现。
5. 习题五:如何通过80C51实现脉冲宽度调制(PWM)输出?解答:通过80C51的定时器功能和IO控制,可以实现脉冲宽度调制输出。
具体步骤如下:- 配置定时器为PWM模式;- 设置定时器的初始值和占空比;- 配置IO口,将其设为输出模式;- 当定时器计数值超过设定的脉冲宽度时,将IO口置1,否则置0。
6. 习题六:如何在80C51上实现ADC功能?解答:80C51本身没有ADC模块,但可以通过外部ADC芯片来实现模数转换功能。
1。
1 80C51单片机的引脚功能80C51系列中,用CHMOS工艺制造的单片机都采用双列直插式(DIP)40脚封装,引脚信号完全相同。
图2-9为引脚图,这40根引脚大致可分为:电源(V CC、V SS、V PP、V PD)、时钟(XTAL1、XTAL2)、I/O口(P0~P3)、地址总线(P0口、P2口)和控制总线(ALE、RST、、、)等几部分。
它们的功能简述如下:1.电源Vcc(引脚号40),芯片电源,接+5V;Vss(引脚号20),电源接地端。
2.时钟XTAL1(引脚号18)内部振荡电路反相放大器的输入端,是外接晶振的一个引脚。
当采用外部振荡器时,此引脚接地。
XTAL2(引脚号19)内部振荡器的反相放大器输出端,是外接晶振的另一端。
当采用外部振荡器时,此引脚接外部振荡源。
3.控制总线(1)ALE/ (引脚号30):正常操作时为ALE功能(允许地址锁存),用来把地址的低字节锁存到外部锁存器。
ALE引脚以不变的频率(振荡器频率的1/6)周期性地发出正脉冲信号.因此,它可用作对外输出的时钟信号或用于定时.但要注意,每当访问外部数据存储器时,将跳过一个ALE脉冲。
ALE端可以驱动(吸收或输出电流)8个LSTTL电路。
在8751单片机EPROM编程期间,此引脚接编程脉冲(功能)。
(2)(引脚号29):外部程序存储器读选通信号。
在从外部程序存储器取指令(或数据)期间,在每个机器周期内两次有效。
可以驱动8个LSTTL电路。
(3)RST/VPD(引脚号9):复位信号输入端。
振荡器工作时,该引脚上持续2个机器周期的高电平可实现复位操作。
此引脚还可接上备用电源。
在Vcc掉电期间,由向内部RAM提供电源,以保持内部RAM中的数据。
(4) /Vpp(引脚号31):为内部程序存储器和外部程序存储器的选择端.当为高电平时,访问内部程序存储器(PC值小于4K);当为低电平时,访问外部程序存储器。
对于87C51单片机,在EPROM 编程期间,此端为21V编程电源输入端。
80C51系列单片机指令表80C51系列单片机指令以A开头的指令有18条,分别为:ACALL addr11ADD A,RnADD A,directADD A,@RiADD A,#dataADDC A,RnADDC A,directADDC A,@RiADDC A,#dataAJMP addr11ANL A,RnANL A,directANL A,@RiANL A,#dataANL direct,AANL direct,#dataANL C,bitANL C,/bit1. ACALL addr11指令名称:绝对调用指令指令代码:A10 A9 A8 1 0 0 0 1 A7 A6 A5 A4 A3 A2 A1 A0指令功能:构造目的地址,进行子程序调用。
其方法是以指令提供的11位地址(al0~a0),取代PC的低11位,PC的高5位不变。
操作内容:PC←(PC)+2SP←(SP)+1(SP)←(PC)7~0SP←(SP)+1(SP)←(PC)15~8PC10~0←addrl0~0字节数:2机器周期:2使用说明:由于指令只给出子程序入口地址的低11位,因此调用范围是2KB。
2. ADD A,Rn指令名称:寄存器加法指令指令代码:28H~2FH指令功能:累加器内容与寄存器内容相加操作内容:A←(A)+(Rn),n=0~7字节数:1机器周期:1影响标志位:C,AC,OV3. ADD A,direct指令名称:直接寻址加法指令指令代码:25H指令功能:累加器内容与内部RAM单元或专用寄存器内容相加操作内容:A←(A)+(direct)字节数:2机器周期:1影响标志位:C,AC,OV4. ADD A,@Ri指令名称:间接寻址加法指令指令代码:26H~27H指令功能:累加器内容与内部RAM低128单元内容相加操作内容:A←(A)+((Ri)),i=0,1字节数:1机器周期:1影响标志位:C,AC,OV5. ADD A,#data指令名称:立即数加法指令指令代码:24H指令功能:累加器内容与立即数相加操作内容:A←(A)+data字节数:2机器周期:1影响标志位:C,AC,OV6. ADDC A,Rn指令名称:寄存器带进位加法指令指令代码:38H~3FH指令功能:累加器内容、寄存器内容和进位位相加操作内容:A←(A)+(Rn)+(C),n=0~7字节数:1机器周期:1影响标志位:C,AC,OV7. ADDC A,direct指令名称:直接寻址带进位加法指令指令代码:35H指令功能:累加器内容、内部RAM低128单元或专用寄存器内容与进位位加操作内容:A←(A)+(direct)+(C)字节数:2机器周期:1影响标志位:C,AC,OV8. ADDC A,@Ri指令名称:间接寻址带进位加法指令指令代码:36H~37H指令功能:累加器内容、内部RAM低128单元内容及进位位相加操作内容:A←(A)+((Ri))+(C),i=0,1字节数:1机器周期:1影响标志位:C,AC,OV9. ADDC A,#data指令名称:立即数带进位加法指令指令代码:34H指令功能:累加器内容、立即数及进位位相加操作内容:A←(A)+data+(C)字节数:2机器周期:1影响标志位:C,AC,OV10. AJMP addr11指令名称:绝对转移指令指令代码:A10 A9 A8 1 0 0 0 1 A7 A6 A5 A4 A3 A2 A1 A0指令功能:构造目的地址,实现程序转移.其方法是以指令提供的11位地址,取代PC的低11位,而PC的高5位保持不变.操作内容:PC←(PC)+2PCl0~0←addrll字节数:2机器周期:2使用说明:由于addrll的最小值是000H,最大值是7FFH,因此地址转移范围是2KB.11. ANL A,Rn指令名称:寄存器逻辑与指令指令代码:58H~5FH指令功能:累加器内容逻辑与寄存器内容操作内容:A←(A)∧(Rn),n=0~7字节数:1机器周期:112. ANL A,direct指令名称:直接寻址逻辑与指令指令代码:55H指令功能:累加器内容逻辑与内部RAM低128单元或专用寄存器内容操作内容:A←(A)∧(diret)字节数:2机器周期:113. ANL A,@Ri指令名称:间接寻址逻辑与指令指令代码:56H~57H指令功能:累加器内容逻辑与内部RAM低128单元内容操作内容:A←(A)∧((Ri))i=0,1字节数:1机器周期:114. ANL A,#data指令名称:立即数逻辑与指令指令代码:54H指令功能:累加器内容逻辑与立即数操作内容:A←(A)∧data字节数:2机器周期:115. ANL direct,A指令名称:累加器逻辑与指令指令代码:52H指令功能:内部RAM低128单元或专用寄存器内容逻辑与累加器内容操作内容:direct←(A)∧(direct)字节数:2机器周期:116. ANL direct,#data指令名称:逻辑与指令指令代码:53H指令功能:内部RAM低128单元或专用寄存器内容逻辑与立即数操作内容:direct←(direct)∧data字节数:3机器周期:217. ANL C,bit指令名称:位逻辑与指令指令代码:82H指令功能:进位标志逻辑与直接寻址位操作内容:C←(C)∧(bit)字节数:2机器周期:218. ANL C,/bit指令名称:位逻辑与指令指令代码:B0H指令功能:进位标志逻辑与直接寻址位的反操作内容:C←(C)∧(bit)字节数:2机器周期:280C51系列单片机指令以C开头的指令有10条,分别为: CJNE A,dircet,relCJNE A,#data,relCJNE Rn,#data,relCJNE @Ri,#data,relCLR ACLR CCLR bitCPL ACPL CCPL bit1. CJNE A,dircet,rel指令名称:数值比较转移指令指令代码:B5H指令功能:累加器内容与内部RAM低128字节或专用寄存器内容比较,不等则转移。
很多初学51单片机的网友会有这样的问题:AT89S51是什么?书上和网络程上可都是8051,89C51等!没听说过有89S51 ?这里,初学者要澄清单片机实际使用方面的一个产品概念,MCS-51单片机是美国INTE公司于1980年推出的产品,典型产品有8031(内部没有程序存储器,实际使用方面已经被市场淘汰)、8051(芯片采用HMOS,功耗是630mW,是89C51的5倍,实际使用方面已经被市场淘汰)和8751等通用产品,一直到现在,MCS-51内核系列兼容的单片机仍是应用的主流产品(比如目前流行的89S51、已经停产的89C51等),各高校及专业学校的培训教材仍与MCS-51单片机作为代表进行理论基础学习。
有些文献甚至也将8051泛指MCS-51系列单片机,8051是早期的最典型的代表作,由于MCS-51单片机影响极深远,许多公司都推出了兼容系列单片机,就是说MCS-51内核实际上已经成为一个8位单片机的标准。
其他的公司的51单片机产品都是和MCS-51内核兼容的产品而以。
同样的一段程序,在各个单片机厂家的硬件上运行的结果都是一样的,如ATMEL的89C51(已经停产)、89S51,PHILIPS(菲利浦),和WINBOND(华邦)等,我们常说的已经停产的89C51指的是ATMEL 公司的AT89C51单片机,同时是在原基础上增强了许多特性,如时钟,更优秀的是由Flash (程序存储器的内容至少可以改写1000次)存储器取带了原来的ROM(一次性写入),AT89C51的性能相对于8051已经算是非常优越的了。
不过在市场化方面,89C51受到了PIC单片机阵营的挑战,89C51最致命的缺陷在于不支持ISP(在线更新程序)功能,必须加上ISP功能等新功能才能更好延续MCS-51的传奇。
89S51就是在这样的背景下取代89C51的,现在,89S51目前已经成为了实际应用市场上新的宠儿,作为市场占有率第一的Atmel目前公司已经停产AT89C51,将用AT89S51代替。
概述80C51是MCS-51系列单片机中CHMOS工艺的一个典型品种。
其它厂商以8051为基核开发出的CMOS工艺单片机产品统称为80C51系列。
当前常用的80C51系列单片机主要产品有:∙Intel的:80C31、80C51、87C51,80C32、80C52、87C52等;∙ATMEL的:89C51、89C52、89C2051等;∙Philips、华邦、Dallas、Siemens(Infineon)等公司的许多产品。
该系列单片机是采用高性能的静态80C51设计,由先进CMOS工艺制造,并带有非易失性Flash 程序存储器,全部支持12 时钟和6 时钟操作,P89C51X2 和P89C52X2/54X2/58X2 分别包含128 字节和256 字节RAM、32 条I/O 口线、3 个16 位定时/计数器、6 输入4 优先级嵌套中断结构、1 个串行I/O 口、可用于多机通信 I/O 扩展或全双工UART以及片内振荡器和时钟电路。
此外,由于器件采用了静态设计,可提供很宽的操作频率范围,频率可降至0 。
可实现两个由软件选择的节电模式,空闲模式和掉电模式,空闲模式冻结CPU但RAM定时器,串口和中断系统仍然工作掉电模式保存RAM的内容但是冻结振荡器导致所有其它的片内功能停止工作。
由于设计是静态的时钟可停止而不会丢失用户数据,运行可从时钟停止处恢复。
特性80C51的基本结构与应用模式80C51的基本结构80C51的应用模式总线型单片机应用模式总线型应用的“三总线”模式非总线型单片机应用模式非总线型单片机已经将用于外部总线扩展用的I/O口线和控制功能线去掉,从而使单片机的引脚数减少、体积减小。
对于不需进行并行外围扩展,装置的体积要求苛刻且程序量不大的系统极其适合。
非总线型单片机典型产品如:AT89C2051/AT89C4051。
非总线型应用的“多I/O”模式80C51典型产品资源配置与引脚80C51典型产品资源配置增强型与基本型在以下几点不同:∙片内ROM字节数:从4K增加到8K;∙片内RAM字节数:从128增加到256;∙定时/计数器从2个增加到3个;∙中断源由5个增加到6个。
实验一 CPU片内(外)清零1.CPU片内RAM清零一、实验目的:掌握MCS-51汇编语言的设计,了解单片机的寻址方式以及调试方法。
二、实验内容:把单片机片内的30H~7FH单元清零。
三、实验框图:四、实验步骤:用连续或者单步的方式运行程序,检查30H-7FH执行前后的内容变化。
五、参考实验程序:程序名称:PNQL.ASMORG 0000HJMP MAINORG 0030HMAIN:MOV R0,#30H ;30H送R0寄存器CLR1:MOV A,#00H ;00送累加器AMOV @R0,A ;00 送到30H-7FH单元INC R0 ;R0加1CJNE R0,#7FH,CLR1 ;不到7F字节再清WAIT:LJMP WAITEND六、实验思考:如果把30H-7FH的内容改为99H,如何修改程序。
2.CPU 片外RAM清零一、实验目的:掌握MCS-51汇编语言的设计,了解单片机的寻址方式以及调试方法。
二、实验内容:把外部扩展的RAM的0000H-00FFH单元内容清零。
三、实验框图:四、实验步骤:用连续或者单步的方式运行程序,检查0000H-00FFH执行前后的内容变化。
五、参考实验程序:程序名称:PWQL.ASMORG 0000HMAIN:MOV SP,#60HMOV DPTR,#0000H ;0000H送DPTR寄存器MOV R6,#0FFH ;FFH送R6寄存器(计数)CLR1:MOV A,#00H ;00送累加器AMOVX @DPTR,A ;00 送到0000H-00FFH单元INC DPTR ;DPTR+1DJNZ R6,CLR1 ;不到FF个字节再清WAIT:SJMP WAITEND六、实验思考:把1-10先对应存入片内0030H起始的单元内,然后再从片内取出,对应存入片外7FFFH起始的单元中去。
实验二P1口亮灯实验一、实验目的:学习MCS-51单片机P1口的使用方法二、实验内容:P1口做输出,接8个发光管,编写程序,使得8个二极管循环点亮。
单片机80C51考试题目及答案一、选择题(每题2分,共20分)1. 单片机80C51的内部RAM地址空间为多少字节?A. 128B. 256C. 512D. 1024答案:B2. 80C51单片机中,哪组寄存器用于存储当前正在执行的指令地址?A. B寄存器B. DPTRC. SPD. PC答案:D3. 下列哪个指令用于将累加器的内容与外部数据存储器中的数据进行交换?A. MOV A, @R0B. MOVX A, @DPTRC. MOV A, #dataD. MOV A, direct答案:B4. 80C51单片机的定时器/计数器有几个?A. 1B. 2C. 3D. 4答案:B5. 80C51单片机的中断向量表起始地址是多少?A. 0000HB. 0003HC. 0030HD. 0100H答案:C二、填空题(每题2分,共20分)1. 80C51单片机的______位定时器/计数器可以工作在______模式。
答案:16;32. 80C51单片机的______位定时器/计数器可以工作在______模式。
答案:8;23. 80C51单片机的______位定时器/计数器可以工作在______模式。
答案:8;34. 80C51单片机的中断系统包含______个中断源。
答案:55. 80C51单片机的I/O端口P1的地址是______。
答案:90H三、简答题(每题10分,共30分)1. 请简述80C51单片机的中断优先级是如何确定的?答案:在80C51单片机中,中断优先级由中断向量表中的地址决定,地址越小,优先级越高。
此外,还可以通过设置IP寄存器中的优先级位来调整不同中断源的优先级。
2. 80C51单片机的定时器/计数器有哪些工作模式?答案:80C51单片机的定时器/计数器有三种工作模式:模式0(13位定时器/计数器)、模式1(16位定时器/计数器)、模式2(8位自动重装载定时器/计数器)。
3. 80C51单片机的I/O端口具有哪些特性?答案:80C51单片机的I/O端口具有推挽输出、开漏输出、高阻态输入等特性,并且可以通过软件设置端口的模式。
单片机毕业设计80c51本文的毕业设计主要涉及到80C51单片机的应用。
本篇文章将介绍单片机的基本原理、在数字电子钟的设计中的具体应用、硬件设计和软件编程,并给出程序设计流程与详细实现过程。
一、 80C51单片机的基本原理只要有些基础的理解,学习单片机并不难。
单片机是包含CPU、ROM、RAM和其他外设的一种集成电路(IC)芯片。
单片机因其体积小、功耗低、成本低而在实际应用中广泛使用。
具有代表性的是80C51单片机系列。
80C51单片机有多种不同的型号,每个型号内置指令集在某种程度上都有所不同。
最简单的80C51型号内置的指令集只有40多种指令。
可以想象,由于指令集非常简化、结构紧凑,这样设计出来的芯片具有性能非常稳定的特点。
二、数字电子钟的设计数字电子钟是指采用数字电路或数字电子技术设计的显示时间的钟。
数字电子钟广泛应用于生活中的种种需要,能够比较稳定地显示时间,其他功能还包括定时、闹钟、备忘等选项。
三、数字电子钟的硬件设计数字电子钟的硬件设计涵盖了三个方面:1. 显示电路的设计数字电子钟的显视屏幕通常是7片LED,其中6片是数字显示屏,第7片为冒号显示屏。
这个设计采用COS-8886电路,典型的应用范围是数码电子表、温度计等。
2. 时基方案的设计时基方案是指数字电子钟中的总体控制方案。
这里我们采用的是74HC4060的集成电路。
使用74HC4060,可以非常方便地进行时钟频率的分频设计。
3. 蓝牙通信模块的设计蓝牙通信模块的设计中,我们使用了常见的蓝牙串口传输模块,如HC-06,其工作电压在3.3V ~ 5V之间,具备良好的兼容性。
四、数字电子钟的软件编程数字电子钟的软件编程主要涉及以下两个方面:1. 定时计数器的设计采用80C51单片机设计定时计数器时,需要考虑到时钟频率、计时器精度、转换精度等问题。
借助于8051单片机提供的Timer/Counter模块,可以很方便地实现这个功能。
2. 蓝牙通信程序设计程序设计中需要考虑到串口通信协议,包括蓝牙模块的波特率,校验位和数据位等问题。
单片机80C5180C51单片机的典型产品有80C51﹑80C31和87C51,80C51是ROM型单片机,内部有4KB ROM;80C31无片内ROM;87C51片内有4KB EPROM。
除此外三者的内部结构和引脚完相同。
图1-1 为80C51的内部结构80C51的内部结构包括:【中央处理器(CUP)】主要完成运算和控制功能,80C51的CPU 是一个字节为8位的中央处理器,即它对数据的处理是按字节为单位的;【内部数据处理器(内部RAM】)80C51中共有256个RAM单元,但其中能作为寄存器供用户使用的仅有前面128个,后128个被专用寄存器占用;【内部程序储存器(内部ROM)】80C51共有4KB的掩膜ROM,用于存放程序、原始数据;【定时器/计数器】80C51有2个16位的定时器/计数器;【并行I/O口】80C51共有4个8位I/O口(P0P1P2P3)可实现数据并行输入输出;【串行口】80C51有1个全双工的可编程的串行口,以实现单片机与其他设备之间的串行数据传送;【时钟电路】80C51单片机内部有时钟电路,但晶振和微调电容要外接,为其产生时钟脉冲序列;【中断系统】它共有5个中断源:2个是外部中断源/INTO和/INT1,3个内部中断源,即2个定时/计数中断,1个串行口中断;还有驱动器、锁存器、缓冲器、地址寄存器等。
图1-2 为80C51的引脚图功能说明:主电源引脚Vss(20脚)和Vcc(40脚);时钟电路引脚XTAL1(19脚)和XTAL2(18脚),用法见图1-2;控制信号引脚如下:RST复位(9脚)输入24个时钟脉冲周期宽度以上H电平复位,接法见图1-3;ALE或/PROG、(30脚)锁存扩展地址低位字节控自信号,或EPROM编程时输入编程脉冲;/PSEN、(29脚)访问片外程序存储器是输出负脉冲作片选控制信号,12个始终周期2次生效,但访问片外RAM时无效,见时序图图1-3;/EA或Vpp(31)程序储存地址的选择,H时先选片内超址时自动跳到片外ROM,或编程时施加编程电压。