基于51单片机的旋转led点阵显示屏设计与实现毕业设计论文(编辑修改稿)内容摘要:
制。 对单片机的指令系统不要求了解,仅要求对 51 的存储器结构有 基本 了解;可由编译器管理寄存器 的 分配、不同存储器的寻址及数据类型等细节; 用 C 语言编写的 程序有规范的结构。 这种程序结构化方式 , 改善了程序的可读性; 程序 编 译和 调试时间短,效率从 而提高;提供的库包含许多标准子程序,具有较强的数据处理能力;可移植性好 ,因为它具有方便的模块化编程技术。 C 语言作为一种非常方便的语言而得到广泛的支持, C 语言程序本身并不依赖于机器硬件系统,基本上不做修改就可根据单片机的不同较快地移植过来 [7]。 我在刚入学时学过 C 语言课程,对汇编语言不了解,以及后来在 51单片机的学习中我一直使用的是 C 语言来编写程序的。 基于以上理由决定采用 C 语言为该显示系统的编程语言。 系统软件编译器 选择 我们采用 C 语言编写的程序并不能被单片机直接执行还需要编译为单片机可执行 的机器语言。 因此在系统软件设计中, 需要 编译器。 支持用 C语言编程 的 C51 编译器主要有两种: Franklin C51 编译器和 KEIL C 编译器[8]。 我大二学习 51 单片机时,我熟悉并熟练操作的也是 KEIL C 编译开发洛阳理工学院毕业设计(论文) 8 环境, 目前在单片机开发中普遍都是使用 KEIL C 来进行编译 ,图书馆和网络上关于 51 单片机学习开发资源上绝大多数讲解教授的是 KEIL C 编译器 ,所以这里我采用了 KEIL C 编译开发环境。 洛阳理工学院毕业设计(论文) 9 第 2 章 硬件系统设计 硬件整体设计概述及功能分析 显示系统具体设计主要由通信系统,单片机系统,显示 驱动电路和216 点阵 排列 屏 五 部分组成。 具体 操作和工作 流程为: 用串行下载下借助 PC 机上的下载软件向单片机载入 控制指令和显示代码内容 ;下载完毕后,给系统上电, 执行控制指令 , 处理显示代码将显示内容通过 I/O 口输出并且控制 各个 I/O 端口电平变化 ,最后由显示驱动电路进行电压和电流的处理 , 以达到 LED 显示屏 所需大小 的显示电压电流要求 , 进而使显示屏显示 出 内容。 根据硬件的功能结构图选取合适器件,器件不但要求能实现所要求的功能还要能兼容至整个系统之中。 通过查阅资料和对比最终的硬件原理图如图 21 所示。 图 21 功能结构框图 该系统所要实现的功能和要求有以下几点: (1) LED 显示屏的面积必须满足至少显示一个汉字的标准。 并且显示要清晰。 (2) 驱动电路要能提供 LED 显示 正常工作 范围内的电压和电流要求。 洛阳理工学院毕业设计(论文) 10 (3) I/O 口 高低电平的区分能力以及 其 输入输出频率必须满足单片机以及驱动电路 响应 的要求。 (4) 单片机要能够控制 LED 显示屏的显示,并且端口驱动能力要足以驱动 显示 电路 , 执行频率要能达到扫描显示的最低要求。 (5) 单片机由 ISP 下载线下载程序 ,由无线 振动电路以及耦合线圈给显示和控制系统 供电, 需外接 5V 直流电源给振荡模块和旋转电机供电。 控制单元设计 C51 芯片的选择 控制 系统单元 是整个显示系统的核心,该系统中采用 51 系列单片机为核心器件,用来 处理 控制指令和显示内容 , 并且直接 通过 I/O 口 输出 电平通过 驱动电路来 控制 LED 显示屏的显示内容和显示状态。 在 51 系列单片机中选定一款合适的 型号 来作为控制单元的主控芯片。 常见的 51 系列单片机有以下几种,如表 21 所示。 表 21 51 单片机芯片厂商产品 公司名称 产品 AT(Atmel) AT89C51, AT89C52, AT89C53, AT89S51 等 Philips P80C54, P80C58, P87C54, P87C58, P87C524 等 Intel i87C54, i87C58, i87L54, i87L54 等 STC STC89C51RC, STC89C52RC, STC89LE51RC 等 根据题目的 设计 要求 ,所选 芯片必须要具有的就是方便的编程 下载 能力, 足够的 I/O 端口和中断引脚,足够高低运 行速度。 STC89 系列单片机还具备除满足以上基本条件以外 的超强抗干扰、高速、低功耗、指令代码 与传统 8051 单片机完全兼容的 增强型 8051 单片机等诸多优点。 加之在大三时,我学习的课程就是以 STC89C51 架构来开展的 , 因此这里我就 选择 国产宏晶科技 生产的 STC89C51RC 为控制单元的主控芯片 ,采用的是 PQFP44 封装类型。 洛阳理工学院毕业设计(论文) 11 STC89C51RC 简介 : STC89C51RC 是 国内 宏晶科技 有限公司 设计生产 具备超强抗干扰、高速、低功耗、指令代码与传统 8051 单片机完全兼容的 增强型 8051 单片机。 6 时钟 /机器周期和 12 时钟 /机器周期可任意选择,指令代码完全兼容传统 8051;工 作电压: ( 5V 单片机) /( 3V单片机);工作频率范围: 0~40MHz,实际工作频率可达 48MHz;用户可应用程序存储空间分为: 4K/8K/13K/16K/32K/64K 字节;片上集成 1280 字节或 512字节数据存储空间 RAM;通用 I/O 口( 35/39 个);复位后为: P1/P2/P3/P4是准双向口 /弱上拉(普通 8051 传统 I/O 口); P0 口作为总线扩展用时,不用加上电阻,作为 I/O 口用时,需要加上拉电阻;最具特点是支持在系统可编程 ISP( insystem programming),无需专用编程器,无需专用仿真器,可通过串口( RxD/, TxD/)直接下载所编程序,即可就能完成;有 E2PROM 功能( electrically erasable programmable read only memory 电可擦写可编程 只读存储器 ) , 是用户可更改的只读存储器( ROM) ;内部 看门狗( WDT)定时器;共有 三 个 16 位定时器 /计数器,其中定时器 0 还可以当成 2 个 8 位定时器使用; 有四路 路外部中断,下降沿中断或低电平触发中断, Power Down 模式可由中断低电平触发中断方式唤醒;通用异步串行收发口( UART),还可结合定时器软件实现多个 UART;工作温度范围:40~+85C(工业级) /1~75C(商业级);封装形式: PDIP40, PLCC44,PQFP44[9]。 2. STC89C51RC 的 PQFP44 封装 芯片管脚图 如图 22 所示。 图 22 芯片管脚图 洛阳理工学院毕业设计(论文) 12 : VCC—— 电源电压 GND—— 地 P0 口 —— P0 口是一组双向 8 位三态 I/O 口,可向其写入 1 使其状态为悬浮,用作高阻输入。 作为输出口用时,每位能吸收电流的方式驱动 8 个 TTL逻辑门电路,对端口 P0 写“ 1”时,可作为高阻抗输入端用。 P0 口也可以在访问外部程序存储器时,作地址的低字节;访问外部数据存储器作数据总线,此时通过内部强上拉传送 1。 在 FLASH 编程时 , P0 口输出指令字节,要求外接“上拉电阻”。 P1 口 —— P1 口是一组内部带上拉电阻的 8 位双向 I/O 口, P1 的输出缓冲级可驱动(吸收或输出电流) 4 个 TTL 逻辑门电路。 对端口写“ 1”,通过内部的上拉电 阻把端口拉到高电平,此时可作输入口。 作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流 [10]。 和 的第二功能: (1) T2(定时 /计数器 2 外部计数脉冲输入),时钟输出; (2) T2EX(定时 /计数 2 捕获 /重装载触发和方向控制); P2 口 —— P2 是一组内部带上拉电阻的 8 位双向 I/O 口, P2 的输出缓冲级可驱动(吸收或输出电流) 4 个 TTL 逻辑门电路。 对于端口 P2 作输入口时写“ 1”,原理同 P1 口。 P3 口 —— P3 口是一组带有内部上拉电阻 的 8 位双向 I/O 口。 P3 口第一功能同 P P2 口。 P3 口除作为一般的 I/O 口线外,更重要的用途是它的第二功能,如表22 所示。 RST—— 复位输入。 当振荡器工作时, RST 引脚出现两个机器周期以上高电平将是单片机复位。 EA/VPP—— 外部寻址使能 /编程电压,在访问整个外部程序存储器(地址 0000HFFFFH), EA 端必需保持低电平(接地)。 如果 EA 为高时,将执行内部程序。 当 RST 释放后 EA 脚的值被锁存,任何时序的改变都将无效 [11]。 洛阳理工学院毕业设计(论文) 13 表 22 P3 口的第二功能 口线 第二功能 类型 名称 RXD I 串行输入口 P TXD O 串行输出口 INTO I 外中断 0 INT1 I 外中断 1 TO I 定时 /计数器 0 T1 I 定时 /计数器 1 WR O 外部数据存储器写选通信号 RD O 外部数据存储器读选通信号 洛阳理工学院毕业设计(论文) 14 控制系统设计 控制电路设计中采用的是单片机系统,该系统必须要是工作在一个最小系统。 STC89C51RC 的最小系统包括了 外部 时钟电路和复位电路 ,选定一定数量的 I\O 口作为控制口控制外部的各 个 器件和数据的输出。 根据 实现 功能选择一定的单片机端口添加外围器件,具体电路如图 23 所示 图 23 控制系统电路图 在 该控制 系统中, P0、 P P P3 口主要用作 LED 显示数据的控制输出。 由于端口的驱动 电压电流 有限 , 所以 在这些 端口 都 外接了 560Ω 的上拉电阻来提高驱动能力。 其中 、 还 被 复用为 ISP 下载功能口。 具体 做 法 是 : 将 、 两位端口和电源正负极接在 4 针弯针的同一侧即可。 端口 接到红外接收管的正极用 于外部中断初始化程序。 29 号引脚 EA/VPP 要执行内部程序不需访问外部存储器,所以其直接和 38 号引脚( Vcc)同时接在整流二极管负极,即电源正极。 14 号和 15 号引脚( XTAL2和 XTAL1)外接 晶振,与两个 20P 电容组成时钟电路。 B 1 5D0D1D2D3D4D5D6D7D8D9D1 0D1 1D1 2D1 3D1 4D1 5D0D1D2D3D4D5D6D7D8D9D1 0D1 1D1 2D1 3D1 4D1 5B0B1B2B3B4B5B6B8B9B7B 1 0B 1 1B 1 2B 1 3B 1 4B0B1B2B3B4B5B6B7B8B9B 1 0B 1 1B 1 2B 1 3B 1 4B 1 5D9D8X T A L 218X T A L 119A L E30EA31P S E N29RS T9P 0 .0 /A D 039P 0 .1 /A D 138P 0 .2 /A D 237P 0 .3 /A D 336P 0 .4 /A D 435P 0 .5 /A D 534P 0 .6 /A D 633P 0 .7 /A D 732P 1 .01P 1 .12P 1 .23P 1 .34P 1 .45P 1 .56P 1 .67P 1 .78P 3 .0 /R X D10P 3 .1 /T X D11P 3 .2 /I NT 012P 3 .3 /I NT 113P 3 .4 /T 014P 3 .7 /R D17P 3 .6 /W R16P 3 .5 /T 115P 2 .7 /A 1 528P 2 .0 /A 821P 2 .1 /A 922P 2 .2 /A 1 023P 2 .3 /A 1 124P 2 .4 /A 1 225P 2 .5 /A 1 326P 2 .6 /A 1 427U1A T 8 9 C5 1C12 2 pC22 2 pX1CR Y S T A LD1P A CK A G E = L E DD2P A CK A G E = L E D。基于51单片机的旋转led点阵显示屏设计与实现毕业设计论文(编辑修改稿)
相关推荐
rol system controlled by 8051, traffic light display, LED countdown. Traffic detection and adjustment, such as wireless transmission module. In addition to the basic function of traffic light also
节。 程序校验时,需要外部上拉电阻。 4) P1 口: P1 口是一个具有内部上拉电阻的 8 位双向 I/O 口, P1 输出缓冲器能驱动 4 个 TTL 逻辑电平。 对 P1 端口写“ 1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。 作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流( IIL)。 此外, 和 分别作定时器 /计数器 2 的外部计数输入( )和时器
讯功能;工业上工业自动化过程;民用上广泛使用的各种智能 IC 卡,民用豪华轿车的安全保障系统,不论是录像机、摄像机、全自动洗衣机的控制,以还是玩具、 电子宠物等,这些都有单片机的参与。 更不用说机器人、智能仪表、医疗器械机械了。 因此,单片机的学习、开发与应用有着深远并且长久的意义。 AT89C52 是一个低电压,高性能 CMOS 8 位单片机,片内含 8k bytes 的可反复擦写的
码。 64 位 ROM 和ROM操作控制部分允许 DS18B20作为一个单线器件工作并遵循 “单线总线系统 ”一节中所详述的单线协议。 直到 ROM 操作协议被满足, DS18B20 控制部分的功能是不可访问的。 MSB LSB MSB LSB MSB LSB 图 35 64 位 ROM 结构框图 ( 3)运用 —报警信号 TH 或 TL的最高比较位对应于 16 位温度寄存器符号位。 若
3开门 打开继电器 显示倒计时 15s开门 蜂鸣器慢响 提示 15s内开门 否则 15后关门 关闭继电器 并自动返回时间页面 6 :选择 key10修改密码 共两次 两次密码一致时设置成功 否则会一直提示输入密码 7 :修改的密码存入 2402中 上电读出 8 :修改密码 无限循环 直到输入正确为止 可以使用 key11:返回键 返回 9 :在 10s内无任何按键按下时 自动返回时间页面
子程序、和键盘扫描 子程 序四个模块,下面对每一块进行介绍。 系统主程序 本设计中,软件设计采用模块化操作,利用各个模块之间的相互联系,在设计中采用主程序调用各个子程序的方法,使程序通俗易懂,我们设计了整体程序流程图。 在 main函数编写开始,要进行初始化,包括对系统初始化和对硬件设备进行初始化,并使硬件处于就绪状态。 在主程序模块中,需要完成对各接口芯片的初始化、出租车起价和单价的初始化