最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

单片机设计方案

来源:动视网 责编:小OO 时间:2025-09-25 16:27:40
文档

单片机设计方案

单片机设计方案  电脑钟设计报告 一、概要: 现在电子钟与机械时钟相比已具有了更高的准确性和直观性,切无机械装置,具有更长的使用寿命。现在,电子钟的制作不仅需要数字电路技术而且需要模拟电路技术和单片机技术,所以设计时可以方便的增加电子钟原有的功能。电子钟的设计与制作可以采用数字电路实现,也可以采用单片机来完成。若采用数字电路完成,所设计的电路相当复杂,大概需要十几块数字集成块,焊接复杂成本高。若用单片机来设计制作完成,其功能的实现主要通过软件编程来完成,那么就降低了硬件电路的复杂性,而且成本也
推荐度:
导读单片机设计方案  电脑钟设计报告 一、概要: 现在电子钟与机械时钟相比已具有了更高的准确性和直观性,切无机械装置,具有更长的使用寿命。现在,电子钟的制作不仅需要数字电路技术而且需要模拟电路技术和单片机技术,所以设计时可以方便的增加电子钟原有的功能。电子钟的设计与制作可以采用数字电路实现,也可以采用单片机来完成。若采用数字电路完成,所设计的电路相当复杂,大概需要十几块数字集成块,焊接复杂成本高。若用单片机来设计制作完成,其功能的实现主要通过软件编程来完成,那么就降低了硬件电路的复杂性,而且成本也
单片机设计方案

 

 

    电脑钟设计报告  

 

一、概要:

    现在电子钟与机械时钟相比已具有了更高的准确性和直观性,切无机械装置,具有更长的使用寿命。现在,电子钟的制作不仅需要数字电路技术而且需要模拟电路技术和单片机技术,所以设计时可以方便的增加电子钟原有的功能。电子钟的设计与制作可以采用数字电路实现,也可以采用单片机来完成。若采用数字电路完成,所设计的电路相当复杂,大概需要十几块数字集成块,焊接复杂成本高。若用单片机来设计制作完成,其功能的实现主要通过软件编程来完成,那么就降低了硬件电路的复杂性,而且成本也有所降低,所以在该设计与制作中采用单片机来完成。电子钟电路可以由实时时钟模块、人机接口模块、报警模块等部分组成。利用软件编程尽量做到硬件电路简单稳定,减小电磁干扰和其他环境干扰,充分发挥软件编程的优点,见此奥因元器件精度不够引起的误差,但还是电子钟还是可以改进和提高,如选用更精密的元器件。因此本设计的目的就是利用单片机来研制更具使用价值的电子钟。

二、实验目的:

1. 实时显示当前时间即北京时间(时、分)

2. 可修改北京时间(时、分)。

3.可设定闹铃时间(时、分)。

三、系统设计方案

 

根据系统功能要求,可将系统组成结构分成四大部分:单片机控制中心、键盘接口、时钟显示和声音报时,如下图为系统的组成结构图。其中,单片机控制中心是核心。MCU根据按键输入,可切换不同的显示模式或设置不同的参数。时钟显示完成北京时间或秒表时钟的信息。声音报时可完成闹铃的提示。

四、系统功能

根据系统功能描述,可以将功能大致分成两类:北京时间,闹铃功能。 系统设有六个数码管,12个按键,采用菜单式人机对话,便于操作,所以可以分成多个菜单功能键切换菜单,C/R或ALM键设置时间,确定菜单。整个程序采用的是按键输入,数码管显示。所以数码管采用动态扫描原理。所以系统需使用单片机定时器资源。定时时间可设为5ms,即六位数码管,每5ms扫描一位数码管,30ms循环一次。按键接普通IO口,所以按键管理程序所涉及到的识键、译键均需采用软件扫描的方法。这里选用定时扫描控制方式。,通过用定时器0来实现计时功能。

 

五、试验设计所需硬件

C51单片机芯片一个、LED数码显示管六个,低压电源,开关、电阻、电容及导线若干。采用proteus软件进行模拟设计及调试工作。

 

六、设计原理图

 

    最小系统有一个6MHZ单片机的晶振组成的时钟电路,和一个复位电路还有单片机组成。显示电路的数码管由六个位选端口和八个段选端口组成。本次选用的是共阴极数码管,并采用的是动态的显示方式段选择先全部并在一起,有统一的I/O资源来控制,公共端也由I/O资源来控制。采用了矩阵式键盘 可以减少I/O资源的使用

 

 

程序框图:

 

 

程序代码:

 

        ORG      0000H

        AJMP     MAIN

       

        ORG      000BH 

        AJMP     CLOCK

       

        ORG      0030H

        DISP0    EQU    30H   

        DISP1    EQU    31H  

        DISP2    EQU    32H   

        DISP3    EQU    33H   

        DISP4    EQU    34H  

        DISP5    EQU    35H   

        

        HOUR     EQU    3CH  

        MIN      EQU    3DH   

        SEC      EQU    3EH  

        MSEC     EQU    3FH 

        

        AHOUR    EQU    40H  

        AMIN     EQU    41H  

        ASEC     EQU    42H  

        

       ;F0       BIT    PSW.5 

        F1       BIT    PSW.1  

   

   

 MAIN:  MOV      SP,    #50H

        CLR      F0         

        CLR      F1                

 MOV      AHOUR,#0FFH

        MOV      AMIN, #0FFH 

        MOV      ASEC, #0FFH

       

    ;---------------------------------------

        MOV      R7,#10H     ;16个字节

        MOV      R0,#DISP0 

        CLR      A

LOOP:   MOV      @R0,A                          

        INC      R0

        DJNZ     R7,LOOP

         

 ;MOV      HOUR, #11 

          ;MOV      MIN, #59

          ;MOV      SEC, #57   

   

        MOV      TMOD,#01H   

        MOV      TL0,#0B0H  

        MOV      TH0,#3CH   

        SETB     TR0        

        SETB     EA

        SETB     ET0

  BEGIN: ACALL    ALARM       

        ACALL    KEYSCAN                                 

        CJNE     A,#0AH,NEXT1 

        CLR      TR0

        MOV      R1,#HOUR    

        AJMP     MODE

 

 NEXT1: CJNE     A,#0BH,BEGIN 

        JB       F1,NEXT2     

        

        MOV      R1,#AHOUR             

 MODE:  SETB     F0            

        ACALL    MODIFY      

        SETB     TR0

        CLR      F0           

        AJMP     BEGIN

          

 NEXT2: SETB     P2.7          

        CLR      F1            

        AJMP     BEGIN

MODIFY:ACALL    KEYIN

        ACALL    COMB

        RET

   

KEYIN: PUSH     PSW           

        PUSH     ACC

        

        SETB     RS1        

        RS1  RS0=10 

       

        MOV      R0,#DISP0

        MOV      R7,#06H

 L1:    CLR      RS1

      

        ACALL    KEYSCAN

      

        SETB     RS1

        CJNE     A,#0AH,L2

L2:    JNC      L1           

        MOV      @R0,A

        INC      R0

        DJNZ     R7,L1

     

        CLR      RS1

        

        POP      ACC

        POP      PSW

    

        ; CLR      RS1

        RET                 

 

KEYSCAN: ACALL   TEST          

         JNZ     REMOV          

         

         ACALL   DISPLAY       

         ACALL   ALARM         

         AJMP    KEYSCAN

 

REMOV:   ACALL   DISPLAY      

         ACALL   TEST

         JNZ     LIST       

         

         ACALL   DISPLAY      

         ACALL   ALARM         

         AJMP    KEYSCAN

         

LIST:    MOV     R2,#0FEH   

         MOV     R3,#00H      

LINE0:   MOV     A,R2

         ;MOV     P2,A

         MOV     P0,A

         ;MOV     A,P0

         MOV     A,P2

         JB      ACC.0,LINE1   

         MOV     A,#00H

         AJMP    TRYK

LINE1:   JB      ACC.1,LINE2           

  MOV     A,#04H

         AJMP    TRYK

LINE2:   JB      ACC.2,NEXT    

         MOV     A,#08H

         AJMP    TRYK

 

NEXT:    INC     R3            

         MOV     A,R2

         JNB     ACC.3,EXIT    

         RL      A              

         MOV     R2,A

         AJMP    LINE0

         

EXIT:    AJMP    KEYSCAN       

 

TRYK:    ADD     A,R3          

         PUSH    ACC

       

      LETK:    ACALL   TEST

         JNZ     LETK

         POP     ACC

         RET  

      ;----------------------------              

         

TEST:   

         MOV     A,#00H     

         ;MOV     P2,A 

         MOV     P0,A         

         ;MOV     A, P0          

         MOV     A,P2

         

         CPL     A         

         ANL     A,#07H        

         RET   

         

              

DISPLAY: JB      F0,DISP      

         ACALL   SEPA         

DISP:    PUSH    PSW

         PUSH    ACC

         

         SETB    RS0         

 

         

         MOV     A,#0FFH

          ;MOV     P2,A         

   

         MOV     P0,A 

         

         

                  

         MOV     R0,#DISP0

         MOV     R7,#00H

         MOV     R6,#06H

         MOV     R5,#0FEH

         

  DIS1:  MOV     P0,#0FFH

         

           

         MOV     DPTR,#TAB

         MOV     A,@R0

         MOVC    A,@A+DPTR

         MOV     P1,A  

         MOV     A,R5

         MOV     P0,A

        

         DJNZ    R7,$

         DJNZ    R7,$

         

         INC     R0

         MOV     A,R5

         RL      A

         MOV     R5,A

         DJNZ    R6,DIS1

         

         CLR     RS0

         

         POP     ACC

         POP     PSW

         RET

               

  TAB:  DB  3FH,06H,5BH,4FH,66H,6DH,7DH,07H

        DB  7FH,6FH,77H,7CH,39H,5EH,79H,71H              

        

 

 

COMB:   MOV     R0,#DISP1

        ACALL   COMB1   ;合字

        CJNE    A,#24,CHK

CHK:    JNC     EXIT1

        MOV     @R1,A            ;

        INC     R1

        

        MOV     R0,#DISP3

        ACALL   COMB1   

        CJNE    A,#60,CHK1

 CHK1:  JNC     EXIT1

        MOV     @R1,A

        INC     R1                 

        

        MOV     R0,#DISP5

        ACALL   COMB1  

        CJNE    A,#60,CHK2

 CHK2:  JNC     EXIT1

        MOV     @R1,A

        RET

 

 EXIT1: AJMP    MAIN                    

        

COMB1:          

        MOV     A,@R0       

        ANL     A,#0FH

        MOV     43H,A            

        DEC     R0       ;

        MOV     A,@R0

        ANL     A,#0FH

        MOV     B,#10

        MUL     AB

        ADD     A,43H

                   

        RET 

 

SEPA:   PUSH    PSW

        PUSH    ACC

        SETB    RS0

        

        MOV     R0,#DISP5

        MOV     A,SEC

        ACALL   SEPA1

        

        

        MOV     R0,#DISP3

        MOV     A,MIN

        ACALL   SEPA1

        

        MOV     R0,#DISP1

        MOV     A,HOUR

        ACALL   SEPA1

        

        CLR     RS0

         

        POP     ACC

        POP     PSW

        ;CLR     RS0

        RET

        

        

SEPA1:   MOV   B,#10

         DIV   AB

         MOV   @R0,B 

         DEC   R0

         MOV   @R0,A

        

        

                

        ;MOV    44H,A

        ;ANL    A,#0FH

        ;MOV    @R0,A

        ;DEC    R0

        ;MOV    A,44H

        ;ANL    A,#0F0H

        ;SWAP   A 

        ;MOV    @R0,A

              

        RET         

 

 

 

ALARM:  MOV    A,ASEC

        CJNE   A,SEC,BACK    

        MOV    A,AMIN

        CJNE   A,MIN,BACK    

        MOV    A,AHOUR

        CJNE   A,HOUR,BACK   

        CLR    P2.7           

        SETB   F1          

BACK:   RET          

 

 

CLOCK:          

        MOV    TL0,#0B7H   

        MOV    TH0,#3CH

        PUSH   PSW          

        PUSH   ACC

       

        INC    MSEC

        MOV    A, MSEC     

        CJNE   A,#0AH,DONE  ;

        MOV    MSEC,#00H

        MOV    A,SEC

        INC    A

       

      DA     A            

        MOV    SEC,A

        CJNE   A,#60,DONE

        MOV    SEC,#00H

        MOV    A,MIN

        INC    A

        

        ; DA     A

        MOV    MIN,A

        CJNE   A,#60,DONE

        MOV    MIN,#00H

        MOV    A,HOUR

        INC    A

        

        ;  DA     A

        MOV    HOUR,A

        CJNE   A,#24,DONE

        MOV    HOUR,#00H

  DONE: POP    ACC         

        POP    PSW 

        RETI  

       END

_

 

 

七、设计总结

    经过了这一个学期的学习,我学会了对单片机的一写简单的设计及操作。因此,我们设计了这一个电脑时钟的单片机系统,通过这个时钟可以控制北京时间,闹铃功能,达到了我们的初级要求。通过一个简单的电脑时钟,我们熟悉和掌握了单片机的许多应用对我们以后的工作中有很大的帮助。   

文档

单片机设计方案

单片机设计方案  电脑钟设计报告 一、概要: 现在电子钟与机械时钟相比已具有了更高的准确性和直观性,切无机械装置,具有更长的使用寿命。现在,电子钟的制作不仅需要数字电路技术而且需要模拟电路技术和单片机技术,所以设计时可以方便的增加电子钟原有的功能。电子钟的设计与制作可以采用数字电路实现,也可以采用单片机来完成。若采用数字电路完成,所设计的电路相当复杂,大概需要十几块数字集成块,焊接复杂成本高。若用单片机来设计制作完成,其功能的实现主要通过软件编程来完成,那么就降低了硬件电路的复杂性,而且成本也
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top