设计分享

编程入门 行业动态 更新时间:2024-10-27 08:28:29

设计分享

设计分享

目录

具体实现功能:

设计介绍

51单片机简介

设计思路

设计内容

仿真图(protues8.7)

程序(Keil)


具体实现功能:

通过脉冲发生器仿真模拟单片机超声波测距并实时显示,通过按键控制开始测距和停止测距。

设计介绍

51单片机简介

51单片是一种低功耗、高性能CMOS-8位微控制器,具有 8K 可编程Flash 存储器,使得51系列单片机为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。

51系列单片机具有以下标准功能:

8k字节Flash,512字节RAM,

32 位I/O 口线,看门狗定时器,

内置4KB EEPROM,

MAX810复位电路,

三个16 位 定时器/计数器,

一个6向量2级中断结构,

全双工串行口。

另外, 51系列在空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。本设计所使用的芯片可兼容以下所有的51系列单片机(包括AT系列和STC系列)。

设计思路

文献研究法:搜集整理研究资料,认真阅读文献,为研究做准备;

调查研究法:通过调查、分析、具体实验等方法,发现相关存在问题和解决办法;

比较分析法:比较不同设计的具体原理,以及同一类传感器性能的区别,分析系统的研究现状与发展前景;

软硬件设计法:通过软硬件设计实现具体硬件,最后测试各项功能是否满足要求。

设计内容

仿真图(protues8.7)

本设计利用protues8.7软件实现仿真设计,具体如图。

Protues是在单片机仿真设计中常用的设计软件之一,通过设计出仿真电路图,及写入驱动程序,就能在不实现硬件的情况进行电路调试。另外,protues还能实现PCB的设计,在仿真中也可以与KEIL实现联调,便于程序的调试,且支持多种平台,使用简单便捷。

程序(Keil)

本设计由汇编语言编写,全部代码如下:

        ORG 0000H        LJMP MAIN        ORG 0003H        LJMP INTT0        ORG 0013H        LJMP INTT1        ORG 0030HMAIN:   MOV TMOD,#01H        MOV TL0,#00H        MOV TH0,#00H        MOV IE,#0FFH        SETB IT1        CLR EX1        CLR IT0        CLR P3.4DDD:    JB P1.0,JJJ        SETB P3.4        SETB EX1        MOV 30H,#00H        MOV 31H,#00H        MOV 32H,#00HJJJ:    LCALL DIS        LJMP DDD               INTT0:  CLR P3.4        CLR EX1        RETI        INTT1:   MOV   A,30H         CJNE  A,#09H,L1         MOV   30H,#00H         MOV   A,31H         CJNE  A,#09H,L2         MOV   31H,#00H         MOV   A,32H         CJNE  A,#09H,L3         MOV   32H,#00H         LJMP  L4L1:      ADD   A,#01H         MOV   30H,A         LJMP  L4L2:      ADD   A,#01H         MOV   31H,A         LJMP  L4L3:      ADD   A,#01H         MOV   32H,A         LJMP  L4L4:      RETI                DIS:    MOV R0,#30H        MOV R1,#03H        MOV R2,#0FEHLLL:    MOV A,R2        MOV DPTR,#0BFFFH        MOVX @DPTR,A        MOV A,@R0        MOV DPTR,#TAB        MOVC A,@A+DPTR        MOV DPTR,#7FFFH        MOVX @DPTR,A        LCALL TIME        INC R0        MOV A,R2        RL A        MOV R2,A        DJNZ R1,LLL        RET        TIME:   MOV R7,#04HKKK:    MOV R6,#0FFH        DJNZ R6,$        DJNZ R7,KKK        RET                TAB:    DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH        END

更多推荐

设计分享

本文发布于:2024-02-12 14:06:52,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1688106.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!