欢迎使用自行搭建的贴吧云签到;如发现本模板问题请告诉我,thx

单片机课程设计之计数器

未分类 honeyshine 1417℃ 0评论

这是我们这个学期的课程设计课题

下面就分享一下我的报告

写的有不正确之处请指教

一、设计任务与要求
1)设计任务
1表使用8051单片机实现计数功能;
2使用6LED对测量结果进行显示
3能通过按键对设计的计数器进行计数的效果;
2)设计要求:
1上电时,数码管显示000000
2利用三个按钮实现计数器的操作,并实现进位功能;
     3按键可以进行控制计时的个位,十位,百位;

二、硬件原理及单元电路分析
1、硬件原理分析:
1STC12C5404AD资料
 
    STC12C5410AD系列及STC12C2052AD系列单片机是宏晶科技生产的单时钟/ 机器周期(1T)的单片机,是高速/ 低功耗/ 超强抗干扰的新一代8051 单片机,指令代码完全兼容传统8051,但速度快8-12倍,内部集成MAX810专用复位电路。4PWM,8路高速10A/D转换,针对电机控制,强干扰场合。STC12C2052AD系列只有2PWM,8 路高速8A/D 转换。
    1ISP(在系统可编程)/IAP(在应用可编程),无需专用编程器,无需专用仿真器可通过串口(P3.0/P3.1)直接下载用户程序,数秒即可完成一片;
2EEPROM 功能;
3<s
pan style=”font-family: 宋体; font-size: 12.0pt; line-height: 150%;”>.看门狗10.内部集成MAX8
4.专用复位电路(外部晶体12M 以下时,可省外部复位电路);
5.时钟源:外部高精度晶体/ 时钟,内部R/C 振荡器用户在下载用户程序时,可选择是使用内部R/C 振荡器还是外部晶体/ 时钟常温下内部R/C 振荡器频率为:5.2MHz 6.8MHz精度要求不高时,可选择使用内部时钟,但因为有制造误差和温漂,应认为是4MHz 8MHz
6.共616位定时器/计数器,两个专用16位定时器T0 T1再加上PCA模块可再实现416位定时器,STC12C2052AD系列只有两路PCA
7.外部中断2,下降沿中断或低电平触发中断,Power Down模式可由外部中断唤醒;
    8PWM(4 路)/PCA(可编程计数器阵列,4 路),5410 系列是4 路,2052 系列只有两路
       — 也可用来当4 D/A 使用
       — 也可用来再实现4 个定时器
   — 也可用来再实现4 个外部中断
9A/D 转换, 10位精度ADC,共8路。STC12C2052AD系列只有8位精度;
10.通用全双工异步串行口(UART),由于STC12系列是高速的8051,也可再用定时器软件实现多串口。
11、通用I/O 口(27/23/15 个),复位后为: 准双向口/ 弱上拉(普通8051 传统I/O 口)
可设置成四种模式:准双向口/ 弱上拉,推挽/ 强上拉,仅为输入/ 高阻,开漏
每个I/O 口驱动能力均可达到20mA,但整个芯片最大不得超过55mA
12、工作频率范围:0 – 35 MHz,相当于普通8051 0420MHz.实际工作频率可达48MHz
274LS138资料
 
 
 
 
<b
r />
 
 
 
 
 
原理如下:
工作原理
①当一个选通端(E1)为高电平,另两个选通端((/E2))/(E3))为低电平时,可将地址端(A0A1A2)的二进制编码在Y0Y7对应的输出端以低电平译出。比如:A2A1A0=110时,则Y6输出端输出低电平信号。
②利用 E1E2E3可级联扩展成 24 线译码器;若外接一个反相器还可级联扩展成 32 线译码器。
③若将选通端中的一个作为数据输入端时,74LS138还可作数据分配器。
④可用在8086的译码电路中,扩展内存。
74LS138的引脚功能:
A0~A2:地址输入端
STAE1):选通端
/STB/E2)、/STC/E3):选通端(低电平有效)
/Y0~/Y7:输出端(低电平有效)
VCC:电源正
GND:地
A0~A2对应Y0——Y7A0,A1,A2以二进制形式输入,然后转换成十进制,对应相应Y的序号输出低电平,其他均为高电平;
374LS164资料     
 
8位移位寄存器(串行输入,并行输出)
简要说明:
    当清除端(CLEAR)为低电平时,输出端(QAQH)均为低电平。串行数据输入端(<spa
n lang=”EN-US”>A
B)可控制数据。当 AB任意一个为低电平,则禁止新数据输入,在时钟端(CLOCK)脉冲上升沿作用下Q0为低电平。当AB有一个为高电平,则另一个就允许输入数据,并在CLOCK上升沿作用下决定Q0的状态。
4MAX232的资料
 
内部结构基本可分三个部分:
    第一部分是电荷泵电路。由123456脚和4只电容构成。功能是产生+12v-12v两个电源,提供给RS-232串口电平的需要。
    第二部分是数据转换通道。由7891011121314脚构成两个数据通道。
    其中13脚(R1IN)、12脚(R1OUT)、11脚(T1IN)、14脚(T1OUT)为第一数据通道。
    8脚(R2IN)、9脚(R2OUT)、10脚(T2IN)、7脚(T2OUT)为第二数据通道。
    TTL/CMOS数据从T1INT2IN输入转换成RS-232数据从T1OUTT2OUT送到电脑DP9插头;DP9插头的RS-232数据从R1INR2IN输入转换成TTL/CMOS数据后从R1OUTR2OUT输出。
第三部分是供电。15DNG16VCC+5v)。
2、单元电路分析:
  1)单片机外部振荡电路:
 
2)利用74LS138进行数码管的位码选择:
 
(3)利用74LS164进行数码管的段选:
三、软件原理及框图阐述
 

1)系统框图

 
 
2)程序框图
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
四、总原理图及元器件清单
1.原理图:
1Protues总原理图
(2)最小系统原理图:
 
2.元件清单
 
元件序号
型号
主要参数
数量
备注
R1,R3,R4,R5
金属膜电阻
10k
4
R2
金属膜电阻
2.2k
1
R6
金属膜电阻
1k
1
R7
金属膜电阻
3k
1
C1,C2
电容33
33pF
2
C3
电解电容
10uF :p>
1
C4,C5,C6,C7
电容104
0.1uF
4
S1,S2,S3
WJW按钮
按钮
3
LED3
3位数码管
晶体管
2
U1
STC12C5404AD

<
/td>

单片机
1
U2
74LS138
多路开关译码
1
U3
74LS164
串行输入转并行输出
1
U4
MAX232
数据传输芯片
1
LS1
SPEAKER
蜂鸣器
1
T1
S8050
三极管
1
L1
XTAL
12MHZ晶振
1
J1
CON2
二脚塑料插座
1
J3
CON3
三脚塑料插座
1
J2
CON5
五脚塑料插座
1
RS1
RS232
9RS232
1
 五、软硬件调试
1、软件仿真结果:
 
2、实物照片:
<
/div>

3、具体操作过程:
上电后,初始化计数为00.00.00,开始显示计数器功能。按下S1键,个位数码管加一。再按下S2键,十位数码管加一,再按下S3键,百位数码管加一,可以记录此时的计数显示。并且当每一位到达进“9”时,进行进位,高位加一,此位归零。
六、性能测试与分析

1、可以实现的功能:
    1. 这次秒表的设计是通过单片机实现计数和进位功能;
2.通过测试,可以实现以数字形式显示计数的功能;
  3
通过按键S1控制个位,S2为控制十位,S3为控制百位,在以上的功能条件下可以进行计数;

2、计数的精度:
    该计数器可以实现范围内的的计数,并且可以通过按键控制个位,十位,百位直接加一
 
附录: 软件清单
;STC12C54XX最小系统板 人机交互参考程序
S1  EQU P1.4   ; S1–执行键
S2      EQU     P1.3   ; ↑键
S3  EQU P1.2   ; ↓键
CLK164  EQU     P3.4   ;SBUFF中模拟串口时钟线
DAT164  EQU     P1.1   ;SBUFF中模拟串口数据线
WEIMA   EQU     2FH    ;位码
EXEBIT  EQU 21H.1  ; 执行键 闭合
UPBIT   EQU 21H.2  ; ↑键 闭合
DOWNBIT EQU 21H.3  ; ↓键 闭

转载请注明:记忆反射弧 » 单片机课程设计之计数器

喜欢 (0)or分享 (0)
发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址