Get清风单片机最小系统的设计与制作 单片机课程设计
CAD 课程设计报告——51单片机最小系统的电路设计

CAD 课程设计报告摘要Introduction1.课题名称2. 单片机最小系统的组成原理及作用3. CAD的发展前途4. 设计要求5. 原理图6. CAD原理图7. PCB图8.总结参考文献摘要A VR单片机是1997年由A TMEL公司研发出的增强型内置Flash的RISC(Reduced Instruction Set CPU) 精简指令集高速8位单片机。
A VR的单片机可以广泛应用于计算机外部设备、工业实时控制、仪器仪表、通讯设备、家用电器等各个领域。
A VR单片机主要特性:高可靠性、功能强、高速度、低功耗和低价位 , 一直是衡量单片机性能的重要指标,也是单片机占领市场、赖以生存的必要条件。
A VR单片机硬件结构采取8位机与16位机的折中策略,即采用局部寄存器存堆和单体高速输入/输出的方案,提高了指令执行速度(1Mips/MHz),增强了功能;同时又减少了对外设管理的开销,相对简化了硬件结构,降低了成本。
故A VR单片机在软/硬件开销、速度、性能和成本诸多方面取得了优化平衡,是高性价比的单片机。
本设计采用分层叠式结构,底层为单片机外围硬件功能扩展层,顶层为ATmega16单片机集中系统层。
这样有利于兼用A VR跟51系列单片机的开发设计。
关键词: A VR单片机;开发板;单片机实验板;A Tmega16单片机;IntroductionA VR Microcontroller ATMEL Corporation in 1997 developed by the enhanced built-in Flash of the RISC (Reduced Instruction Set CPU) high-speed 8-bit RISC microcontroller. AVR microcontr oller can be widely used in computer peripherals, industrial real-time control, instrumentation, co mmunications equipment, household appliances and other fields.A VR microcontroller main features: high reliability, strong function, high speed, low power consu mption and low cost, has been an important indicator to measure performance of SCM, SCM also dominate the market, a necessary condition for survival.A VR microcontroller hardware structure to take the 16-bit 8-bit machine and the machine's compr omise strategy, that is kept by the local register stack and single high-speed input / output options, improved instruction execution speed (1Mips/MHz), enhanced functionality; while reduce the cost of peripheral administration, the relative simplifies the hardware structure and reduce costs. There fore, A VR microcontroller in software / hardware cost, speed, performance and cost optimization h as made a lot of balance, which is cost-effective microcontroller.The design uses a sub-stack structure, the underlying hardware extensions for the microcontroll er peripheral layer, the top layer of centralized systems for the ATmega16 microcontroller. It is a g ood used along with the 51 series A VR microcontroller development and design.Keywords: AVR microcontroller; development board;MCU Board; ATmega16 microcontroller;一.课题名称:51单片机最小系统的电路设计二.单片机最小系统的组成原理及作用:普遍来说,单片机又称单片微控制器,是在一块芯片中集成了CPU(中央处理器)、RAM(数据存储器)、ROM(程序存储器)、定时器/ 计数器和多种功能的I/O(输入/ 输出)接口等一台计算机所需要的基本功能部件,从而可以完成复杂的运算、逻辑控制、通信等功能。
单片机最小系统设计

单片机课程设计实验报告题目:单片机最小系统设计指导老师:xxx姓名:xxx学号:xxx日期:2011.12.25一、设计任务设及要求1、设计任务设计一个单片机系统(包括单片机最小系统、4个独立式按键及8个发光二极管、6个数码管和一个蜂鸣器),能用Protel绘出其原理图,并进行Proteus仿真,完成单片机综合开发板的键盘、显示等程序的编写、编译和调试。
2、设计要求(1)原理图要清楚,标注元件参数;(2)A4打印正式原理图;(3)要求用统一格式封面;(4)图要均匀分布,合理布局二、方案论证1.设计方案:选用ATC51单片机作为最小系统的控制器,设计电源电路、时钟电路、复位电路完成其基本功能。
串行通讯则采用为电脑的RS-232标准串口设计的单电源电平转换芯片和D9端口,实现系统数据下载;设计LED电路和蜂鸣器电路,实现简单扩展功能。
三、硬件部分1.复位电路复位电路由按键复位和上电复位两部分组成。
AT89S系列单片及为高电平复位,通常在复位引脚RST上连接一个电容到VCC,再连接一个电阻到GND,由此形成一个RC充放电回路保证单片机在上电时RST脚上有足够时间的高电平进行复位,随后回归到低电平进入正常工作状态,这个电阻和电容的典型值为10K和10uF。
按键复位就是在复位电容上并联一个开关,当开关按下时电容被放电、RST也被拉到高电平,而且由于电容的充电,会保持一段时间的高电平来使单片机复位。
2.时钟电路AT89C51单片机内部有一个用于构成振荡器的高增益反向放大器,它的输入端为芯片引脚XTAL1,输出端为引脚XTAL2。
这两个引脚跨接石英晶体振荡器和微调电容,构成一个稳定的自激振荡器,如电路原理图所示在引脚XTAL1和XTAL2跨接晶振Y1和微调电容C1和C6。
电容一般选择30pf,电容的大小会影响振荡器频率的高低,稳定性和速度。
晶振的频率选择12MHz。
3.按键电路每按一次按键,可以增加一次led灯闪烁的时间,灯闪烁到达十次,用蜂鸣器警报,设计要求不能用单片机,只能用纯电路搭建。
51单片机最小系统学习板的设计与制作

课程设计任务书(指导教师填写)课程设计名称电路板设计与制作学生姓名专业班级设计题目51单片机最小系统学习板的设计与制作一、课程设计的任务和目的任务:设计并制作51单片机最小系统电路板,包括电路原理图设计、版图规划与设计、系统单面电路板制作。
要求:1)电路原理图准确、版图结构清晰、布局合理。
2)使用插针型元件,成品PCB板面布局合理,密度适当;3)板上资源包括LED灯、数码管、蜂鸣器、按钮、串行通讯及USB接口;4)电路板面积适中便于携带,长度15cm,宽8.5cm。
目的:1)掌握并完成基本PCB板的设计与制作工艺;2)学习并掌握实现单片机应用系统的软硬件设计、调试、实现的技能;3)了解单片机最小系统的工作原理与系统开发方法,锻炼动手能力,为毕业设计做准备。
二、设计内容、技术条件和要求1.设计并制作具有实际功能的单片机最小系统:可选择实现的功能⑴.流水灯⑵.电子时钟⑶.数字温度计⑷.交通灯控制器;2.根据所选电路功能,画出电路框图和原理总图。
3.根据电路所需元件及周边设备规划和设计电路板版图,描画版图。
4.根据版图生成gerber工艺文件,进行电路板制作,包括刻板,钻孔,覆铜等。
5.撰写设计总结报告。
三、时间进度安排本课程设计共两周时间。
第一周:功能设计与理论学习周一上午:布置设计任务;提出课程设计的目的和要求;明确对撰写总结报告、手工绘制原理图和电路板版图的要求;安排答疑、实验室开放时间。
讲解印制电路板的制板流程,介绍PCB刻板机等制板设备的软硬件操作方法以及注意事项。
周一下午:讲解电路原理图与PCB版图设计方法。
周二至周五:学生查阅资料,确定设计题目;进行功能设计,在实验室完成电路原理图与PCB 版图的设计和绘制,导出电路总原理图及版图文件。
期间安排两次答疑,指导学生设计。
周五,交设计草图-原理图和版图供老师审阅。
第二周:电路板制作、撰写设计总结报告周一至周四:分组在电子系统加工及评测实验室(225)操作刻板工具和设备进行电路板成品的加工和制作,成品需通过老师验收。
单片机最小系统设计

单片机最小系统设计单片机最小系统是指由单片机与外围电路构成的最小功能完整的系统。
在单片机设计中,最小系统起到了连接单片机和外界外设的桥梁作用。
本文将从电源、晶振、复位电路以及外设接口等方面详细讨论单片机最小系统的设计。
一、电源设计在单片机系统中,合理的电源设计对于保证系统正常运行非常重要。
通常情况下,单片机系统需要提供稳定的电压供给,并且需要考虑到不同功耗的模块之间的电源隔离。
为了满足这些需求,可以使用稳压芯片对电源进行调整和稳定,同时添加滤波电容以保证电源的稳定性。
二、晶振电路设计单片机系统需要一个可靠的时钟源来提供精确的计时功能。
晶振电路是实现单片机时钟源的重要组成部分。
一般来说,晶振电路由晶体振荡器和负载电容构成。
在设计晶振电路时,需要注意选择合适的晶振频率以及相应的负载电容。
三、复位电路设计复位电路是单片机系统中不可或缺的一部分,它能够在系统上电或异常情况下将单片机恢复到初始状态。
常见的复位电路包括电源按键复位电路和复位电路。
在设计复位电路时,需要考虑到稳定的复位电平、合适的延时电路以及可靠的触发条件。
四、外设接口设计外设接口设计是单片机最小系统中的重要环节。
通过合适的外设接口设计,可以实现单片机与外界设备的连接和通信。
常见的外设接口包括串口、并口、I2C接口等。
在设计外设接口时,需要充分考虑接口的稳定性、兼容性以及通信速率的要求。
五、系统调试与测试在完成单片机最小系统的硬件设计后,需要进行系统的调试和测试。
通过合理的调试和测试措施,可以保证系统的稳定性和可靠性。
常见的调试工具包括示波器、逻辑分析仪等。
通过这些工具,可以对单片机系统进行信号捕获、时序分析等操作,以确保系统的正常运行。
六、总结单片机最小系统设计是单片机开发中的重要环节。
通过合理的电源设计、晶振电路设计、复位电路设计以及外设接口设计,可以实现单片机与外界设备的连接和通信。
在系统设计完成后,需要进行系统的调试和测试,以确保系统的稳定性和可靠性。
单片机最小系统实验设计报告

单片机最小系统实验设计报告一、实验目的(1)熟悉单片机最小系统的组成,上机步骤及调试方法;(2)加深理解C51汇编语言逻辑结构,能够使用汇编进行简单的程序编写;(3)将课上学到的理论知识联系实际,完成简单的电子控制系统;二、实验所需仪器及设备三、实验线路及原理下图为实验板电路图:(1)硬件组成及原理硬件组成:89S52单片机、8D锁存器74LS573两片、16选1译码器74LS154、16位七段数码显示器、轻触开关;原理:采用扫描显示,利用人眼视觉暂留效应,产生稳定的数码显示效果。
基于上述基本原理,利用单片机的P0口作为七段数码显示器的段选控制,通过两片8D 锁存器74LS573将段选控制分配到两组总共16位七段数码显示器上;单片机的P1.0-P1.3作为16位七段数码显示器的位选,而如何用单片机的4个管脚控制两组总共16位的七段数码显示器呢?这里使用的是1片16选1的译码器74LS154。
(2)软件原理程序流程图:显示主循环个按键完成设置、加、在按键子程序中以及加减闪烁的值,数据缓FLASH修改显示缓冲 区闪烁位在显示子程序中,只需负责将显示缓冲区的数据取出来进行显示即可按键子程序说明:KEYIN: JNB SSET,KEYIN1 ;判断SET键是否按下ACALL DELAY1 ;延时去抖动JNB SSET,KEYIN1JB SSET,$ ;判断SET键是否松开INC FLASH ;SET键按下调整闪烁标志位MOV R7,FLASHCJNE R7,#17,KEYIN1;判断FLASH是否已经移出16位MOV FLASH,#0HKEYIN1: MOV TEMP1,R0JNB SSUB,KEYIN2;判断减键是否按下ACALL DELAY1;延时去抖动JNB SSUB,KEYIN2JB SSUB,$ ;判断减键是否松开MOV A,FLASHADD A,#60HMOV R0,ADEC @R0;减键按下修改数据缓冲区对应位的值CJNE @R0,#0FFH,KEYIN2MOV @R0,#0BHKEYIN2: JNB AADD,KEYIN3;判断加键是否按下ACALL DELAY1;延时去抖动JNB AADD,KEYIN3JB AADD,$ ;判断加键是否松开MOV A,FLASHADD A,#60HMOV R0,AINC @R0; 加键按下修改数据缓冲区对应位的值CJNE @R0,#0CH,KEYIN3MOV @R0,#0KEYIN3: MOV R0,TEMP1RET显示子程序:DISP: MOV A,@R0ACALL TAB;查表取得由第一片74LS573送出的段代码的值 ACALL SEGU9;调用第一片74LS573数据锁存子程序MOV A,@R1ACALL TAB1;查表取得由第二片74LS573送出的段代码的值 ACALL SEGU10;调用第二片74LS573数据锁存子程序INC R0;调整显缓指针INC R1;调整显缓指针ACALL SENDBIT;调用位选子程序点亮16位7段LED中的两位 ACALL DELAY;延时CJNE R0,#58H,DISP;判断是否已完成16位显示MOV R0,#50H;显缓指针付初值MOV R1,#58H;显缓指针付初值RET主程序:FLAG EQU 20HFG1 BIT FLAG.0FG2 BIT FLAG.1DATABUF1 EQU 60HDATABUF2 EQU 61HDATABUF3 EQU 62HDATABUF4 EQU 63HDATABUF5 EQU 64HDATABUF6 EQU 65HDATABUF7 EQU 66HDATABUF8 EQU 67HDATABUF9 EQU 68HDATABUF10 EQU 69HDATABUF11 EQU 6AHDATABUF12 EQU 6BHDATABUF13 EQU 6CHDATABUF14 EQU 6DHDATABUF15 EQU 6EHDATABUF16 EQU 6FHFLASH EQU 70H ;TEMP0 EQU 71HTEMP1 EQU 72HTEMP2 EQU 73HTEMP3 EQU 74HTEMP4 EQU 75HSSET BIT P3.0; SET键AADD BIT P1.7; 加键SSUB BIT P1.6; 减键ORG 0000HAJMP MAINORG 0030HMAIN: CLR CSETB FG1MOV R0,#50HMOV R1,#58HMOV TEMP0,#0MOV TEMP2,#40MOV FLASH,#16MOV DATABUF1,#2MOV DATABUF2,#0MOV DATABUF3,#0MOV DATABUF4,#5MOV DATABUF5,#0BHMOV DATABUF6,#0MOV DATABUF7,#3MOV DATABUF8,#0BHMOV DATABUF9,#0MOV DATABUF10,#9MOV DATABUF11,#0BHMOV DATABUF12,#0MOV DATABUF13,#2MOV DATABUF14,#0BHMOV DATABUF15,#5MOV DATABUF16,#0 MAIN1: ACALL KEYINACALL GETDATAMOV A,FLASHCJNE A,#16,MAIN4AJMP MAIN3MAIN4: DJNZ TEMP2,MAIN2MOV TEMP2,#60CPL FG1MAIN2: JB FG1,MAIN3MOV A,FLASHADD A,#50HMOV R0,AMOV @R0,#0AHMOV R0,#50HMAIN3: ACALL DISPAJMP MAIN1GETDATA:MOV TEMP3,R0MOV TEMP4,R1MOV R0,#50H ;//显缓 MOV R1,#60H NEXT: MOV A,@R1MOV @R0,AINC R0INC R1CJNE R0,#60H,NEXTMOV R0,TEMP3MOV R1,TEMP4RETDISP: MOV A,@R0ACALL TABACALL SEGU9MOV A,@R1ACALL TAB1ACALL SEGU10INC R0INC R1ACALL SENDBITACALL DELAYCJNE R0,#58H,DISPMOV R0,#50HMOV R1,#58HRETKEYIN: JNB SSET,KEYIN1ACALL DELAY1JNB SSET,KEYIN1JB SSET,$INC FLASHMOV R7,FLASHCJNE R7,#17,KEYIN1MOV FLASH,#0HKEYIN1: MOV TEMP1,R0JNB SSUB,KEYIN2ACALL DELAY1JNB SSUB,KEYIN2JB SSUB,$MOV A,FLASHADD A,#60HMOV R0,ADEC @R0CJNE @R0,#0FFH,KEYIN2 MOV @R0,#0BHKEYIN2: JNB AADD,KEYIN3ACALL DELAY1JNB AADD,KEYIN3JB AADD,$MOV A,FLASHADD A,#60HMOV R0,AINC @R0CJNE @R0,#0CH,KEYIN3 MOV @R0,#0KEYIN3: MOV R0,TEMP1RETSENDBIT:MOV A,P1ANL A,#0F0HORL A,TEMP0INC TEMP0MOV P1,AMOV R2,TEMP0CJNE R2,#8H,SENDBIT1 MOV TEMP0,#0 SENDBIT1:RETSEGU9: CLR P1.4CLR P1.5MOV P2,ASETB P1.4MOV P1,#0AHRETSEGU10: CLR P1.4CLR P1.5MOV P2,ASETB P1.5MOV P1,#0AHRETTAB: ADD A,#1MOVC A,@A+PCRETDB 0C0H,0F9H,0A4HDB 0B0H,99H,92HDB 82H,0F8H,80HDB 90H,0FFH,0BFHTAB1: ADD A,#1MOVC A,@A+PCRETDB 03H,09FH,25HDB 0DH,99H,49HDB 41H,1FH,01HDB 09H,0FFH,0FDHDELAY1: MOV R7,#200TM2: MOV R6,#100TM1: DJNZ R6,TM1DJNZ R7,TM2RETDELAY: MOV R7,#4TMM2: MOV R6,#50TMM1: DJNZ R6,TM1DJNZ R7,TM2RETEND元件清单:C1:104C2:103C3:103C4:103C5:33pC6:33pC7:220u电解C8:103C9: 220u电解C10:103C11:4.7u电解D1--D8以及DP:LEDD9:1N4001Jmper:IDC-20Jpower:电源接插件Q1—Q9:9012R1—R16:75欧R17—R25:220欧R26—R30:1KRESET以及S1,S2,S3:轻触开关RP1—RP4:4XLED七段数码管RP5—RP6:10K排阻U1:89s52U2:74ls145U3:lm7805U9,U10:74ls573Y1:12M晶振。
protel课程设计实验报告--单片机最小系统的设计

工程应用软件上机实训报告学院: 机电工程学院专业: 测控技术与仪器班级:学号:姓名:时间:目录1 任务 (2)2 所用设备 (2)3 设计过程 (2)3.1原理图的绘制 (2)3.1.1 单片机89C51芯片的绘制 (2)3.1.2 按键电路 (3)3.1.3 复位电路 (3)3.1.4 晶振电路 (4)3.1.5 蜂鸣器电路 (4)3.1.6 数码管显示电路 (4)3.1.7总原理图 (5)3.2 PCB板的生成 (6)3.2.1数码管的封装 (6)3.2.2各元器件的封装号 (6)3.2.3 PCB图 (7)4 结论 (7)5参考文献 (7)实训报告1、任务1.熟悉PROTEL的基本操作。
2.掌握用PROTEL绘制原理图的基本方法3.掌握用PROTEL制作PCB板的方法4.设计一个89C51单片机最小系统系统, 其中包括晶振电路、按键复位电路、两位数码管、一个蜂鸣器、两个按键输入。
2.所用设备1.WINDOWS XP环境2.PROTEL 99 SE软件3.设计过程3.1原理图的绘制1、首先启动PROTEL 99 SE软件;在File>New中新建一个名为YY.ddb的数据库文件, 并将其设置合适的保存位置;4、3.双击Documents文件夹, 再次选择File>New菜单, 弹出New Document对话框。
双击其中的Schematic Document图标, 新建一个名为Sheet1.Sch的原理图文件;5、双击原理图子文档, 启动原理图编辑器;6、添加元件库, 需要的有Miscellaneous Devices.ddb;添加元件, 手动编辑自己想要的元件并导入元件库, 本次设计编辑了一个单片机89C51元器件;7、连接线路, 形成原理图。
3.1.1 单片机89C51芯片的绘制在Documents文件夹中选择File>New菜单, 弹出New Document对话框。
单片机最小系统课程设计

当交通灯上电复位后或者按下结束键S2,主干道和次干道交通灯都熄灭,数码管显示“P.”,结果如图18所示;当按下开始键S1后,主干道方向就开始亮绿灯,次干道方向开始亮红灯,显示器并开始从60s倒计时,结果如图19所示;当按下紧急键S3后,主干道方向和次干道方向均亮红灯,显示器并开始从10s倒计时,其结果如图20所示;
当是S1按下,数码管将开始主干道60秒,次干道30秒倒计时,并且东西南北相应的灯亮起。当S2按下,将显示“P.”,并且发光二极管全部熄灭。当S3按下,数码管将开始10秒倒计时,并且东南西北所有的红灯都亮起。
3.2程序流程图
根据设计要求,程序框图如下图所示。由汇编语言完成。软件设计可以分为以下几个功能模块:
黄灯亮
上表说明开始主干道绿灯亮,次干道红灯亮,并且同时数码管从60s开始倒计时,等倒计时完,开启3秒的倒计时,主干道绿灯亮,黄灯闪,次干道红灯亮,此次计时结束,主干道红灯亮,次干道绿灯亮,同时数码管从30s开始计时,等到计时玩,开启3秒的倒计时,次干道绿灯灭,黄灯闪,主干道还是红灯亮,计时结束,一轮循环就此完成。
(2).若有应急车辆:
甲,乙干道红灯同时亮起,且允许应急通车时间为10秒,再恢复正常通行。
2.2原理说明
(1).交通灯的设计框如图1所示:
图1交通灯的设计框图
2.3功能模块的设计
2.3.1晶振电路
晶振电路由一个12M的晶体振荡器和两个33pF的瓷片电容组成。如图2所示:
图2晶振电路
钟电路用于产生单片机工作所需要的时钟信号,从而达到控制时间的效果。单片机本身就如一个复杂的同步时序电路,为了保证同步工作方式的实现,电路应在唯一的时钟信号控制下严格地作。
上电复位要求接通电源后,单片机自动实现复位操作。上电瞬间RET引脚获得高电平,随着电容的充电,RET引脚的高电平将逐渐下降。RET引脚的高电平只要能保持足够的时间(2个机器周期),单片机就可以进行复位操作。
单片机最小系统设计与制作

单片机最小系统设计与制作一、确定任务开发单片机做小系统二、任务分析:该系统应具有的功能:(1)具有2位LED数码管显示功能(2)具有八路发光二极管显示各种流水灯(3)可以完成各种奏乐,报警等发声音类实验(4)具有复位功能三、功能分析(1)两位LED数码显示管可以利用P0口接两个数码管来实现功能(2)八路发光二极管显示可以利用P1口接八个发光二级管实现这个功能(3)各种奏乐,报警等发生功能可以采用P2.0这个引脚接一蜂鸣器来实现(4)利用单片机的第9脚可以设计成复位系统,我们采用按键复位;利用单片机的18,19脚可以设计成时钟电路,我们利用单片机的内部振荡方式设计的。
四、设计框图五、硬件电路设计六、元件清单数码管:共阴极2只(分立)电解电容:10uf1只30pf的电容2只220欧电阻9只4.7k电阻1只12MHZ的晶振1只有源5V蜂鸣器1只At89s51单片机1片常开按钮开关1只紧锁座1只(方便芯取下来的,绿色)发光二极管(5MM红色)8只万能板电路板15*17CMS8550三极管1只4.5V电池盒1只,导线若干七、硬件电路的焊接按照原理图把上面的元件焊接好,详细步骤省略。
八、相关程序编写针对上面的电路原理图,设计出本系统的详细功能:(1)、第一个发光二极管点亮,同时数码管显示“1”。
(2)、第二个发光二极管点亮,同时数码管显示“2”。
(3)、依次类推到第八个发光二极管点亮,同时数码管显示“8”。
以上出现的是流水灯的效果(4)、所有的发光二极管灭了,同时数码管现实“0”。
(5)、数码管显示“1”。
(6)、数码管显示“2、……”直到“9、A、B、C、D、E、F、Y”。
(7)、蜂鸣器发出九声报警声后重复上面所有步骤。
八、程序设计注:共阴发光二极管低电平有效;LED数码显示管高电平有效数码显示管的结构图如下:ORG 0200H;伪指令,定义下面的程序代码(机器代码)从地址为0030H的单元存放。
START: CLR P2.7 ;送低电平到第一个数码管,开启数码管。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单片机最小系统的设计与制作单片机课程设计单片机课程设计报告——单片机最小系统的设计与制作学院:信息与电气工程学院姓名:马杰学号:0804040234指导老师:曾照福设计时间:2021.5.30—2021.6.10目录摘要1一、设计与制作目的2二、设计与制作要求2三、设计方案比拟说明3四、原理说明54.1 单片机的选择54.2 显示电路64.3 4*4矩阵键盘电路和4个独立键盘电路74.4 存储电路84.6 LCD接口114.7 程序下载接口114.8 电源电路134.9 温度测量接口134.10 跳线电路13五、程序流程图及说明错误!未定义书签。
六、程序清单及注释15七、硬件调试及调试结果15八、软件测试及其结果17数码管测试178.2 键盘测试178.3 24C02存储电路测试188.4 DS1302 实时时钟电路测试188.5 DS18B20温度测量电路测试18九、测试仪器及测试结果19十、结果分析及设计心得20参考文献21附录1:原理图、PCB图以及实物图21 附录2:程序清单21附录3:元器件清单86摘要随着单片机的应用越来越广泛,比方日常生活中的电冰箱、洗衣机、微波炉等等,都是用单片机作为MCU来控制这些器件,对于我们来说,学习单片机是非常有必要的,而单片机的最小系统更是我们学习单片机的根底。
此次需要设计的单片机最小系统中,除了电源电路、复位电路、晶振电路外,还需要4*4矩阵键盘、4个独立键盘、8位数码管显示电路、存储电路、实时时钟电路、温度测量接口、LCD接口、程序下载接口。
因为单片机只有32个口,所以这32口如何合理的分配给这些模块是本设计的重点,但是由于大多数同学编程还不是过硬,故最好选择直接用I/O进行控制的系统,而不要用锁存器等在编程中要设置相应模式的器件,这个要求使得对单片机的32个I/O如何分配的问题更加重要。
在设计完这个单片机最小系统后,最起码要实现以下功能:数码管能显示数字和字母;设置按键和数码管,当按下相应键时,可以在数码管上显示设置的数字和字母,如1、2、3、A、b等等;设置数码管能使其显示数字和字母;设置数码管和24C02芯片,能在掉电后还显示掉电之前的内容;设置DS1302芯片,能用数码管或液晶显示年月日和实时时间;设置DS18B20芯片,能用数码管或液晶显示实时温度。
最终,为了训练一定的编程能力,将这些模块整合到一起用12864LCD实现一定的功能,因为设计过程中显示局部,数码管和液晶不能同时用,所以总的程序中没有将数码管显示表达出来。
一、设计与制作目的(1) 能够独立地设计并制作出单片机的最小系统,培养自主学习能力、设计能力以及动手能力。
(2) 了解单片机的结构构造、主要功能等,并且能运用到实践中去。
(3) 培养解决问题的能力,多思考,勤动手。
(4) 培养编程能力。
二、设计与制作要求〔1〕设计并绘制单片机最小系统电路原理图,并画好PCB图。
〔2〕制作PCB板并调试每一个模块〔含软硬件〕。
〔3〕用12864LCD来做显示。
主要显示的功能是:能够显示年、月、日、星期、时、分、秒,并能通过独立键盘修改;能够显示实时温度;显示“今天的事:X 件〞,能够通过矩阵键盘修改X的值,并通过设置24C02使在掉电的时候还能保存X的值。
〔4〕撰写设计与调试报告。
三、设计方案比拟说明设计方案1:单片机选用52系列的,4*4键盘和四位一体数码管直接用HD7279A控制,但是这样写程序时比拟麻烦,还得考虑HD7279A的编程。
存储电路、实时时钟电路、温度测量电路采用直接连在I/O上的方式。
设计方案2:所有的模块都用I/O口直接控制,这样的接法有助于对编程还不是很熟悉的人使用,便于编写程序。
还有就是,数码管的显示内容远少于LCD 可显示的内容,数码管可显示的内容LCD也可显示,所以选择了数码管和LCD不同时使用方式。
存储电路、实时时钟电路、温度测量电路采用跳线方式,当不用其中的一个模块或者要用这个口来做其他事时,可以将这个口的跳线帽取掉,从而到达一口多用又不会混淆的目的。
经过比拟选择了方案2。
所示。
图3.1 硬件原理框图该单片机最小系统包括了复位电路、晶振电路、电源电路、8位共阴极数码管、4*4矩阵键盘、4位独立键盘、24C02存储电路、DS1302实时时钟电路、1602和12864LCD 接口、18B20温度测量接口,还加了4个I/O 口的扩展和电源正负极的扩展,功能已经很齐全,下面主要阐述一下引脚分配问题。
因为单片机的四个口都加了上拉电阻,所以在遇到有些要加上拉电阻的元器件时不必再考虑在其电路模块中加上拉电阻。
4*4键盘采用P1.0~P1.3来控制其四行,P1.4~P1.7来控制其四列;4个独立按键用的是P1.4~P1.7来控制的;8位共阴极数码管的位选VCC GND RST STC89C52单片机 P3口 P1口 P2口P0口 晶振电路串口下载复位电路4个独立4*4矩阵1602、四位一体共接电1602、四位一体共电源电路用P0口来控制,段选用8个PNP做驱动,用P2口控制;前面已经讨论过,LCD能显示的内容远比数码管能显示的多,所以用了P0和P2来控制LCD,LCD和数码管不能同时用,在板子上用了跳线,当跳线冒盖上时,采用数码管显示,此时不能用LCD显示,当跳线冒拿下时,用LCD显示,此时,不能用数码管显示;24C02存储电路串行数据/地址和串行时钟两个端口用P3.4和P3.5控制;DS1302实时时钟电路串行时钟输入、数据输入输出口、复位脚分别用P1.0、P1.1和P1.2来控制,虽然和键盘一局部行复用,但是因为控制方式不同,所以不会有影响;18B20采用P3.3〔外部中断1〕控制。
通过以上分析可以看出,除P3口外,每个口利用都很充分,而且这样直接控制的方式便于我们编程。
四、原理说明4.1 单片机的选择市面上单片机的种类非常多,经过思考,为结合实际应用,选择了由宏晶公司生产的STC89C52,它的主要特性有:MCS-51兼容●与字节可编程闪烁存储器●8K内部RAM●512可编程I/O线●3216位定时器/计数器●三个个中断源●6●可编程串行通道1000写/擦循环●寿命:10年●数据保存时间:0Hz-24MHz●全静态工作:●三级程序存储器锁定●低功耗的闲置和掉电模式●片内振荡器和时钟电路STC89C52的最小系统电路图如图4.1所示。
图4.1 STC89C52的最小系统电路图为了方便扩展,在单片机的四个I/O口上都加了10K的上拉电阻和排针,其电路图如图4.2、图4.3所示。
图4.2 上拉电阻电路图图4.3 口扩展排针电路图4.2 显示电路显示电路选用了四位一体共阳极LED数码管,LED 数码管的位选驱动用S8550的PNP三极管,段选那么是加了200欧姆的电阻。
数码管是一种半导体发光器件,其根本单元是发光二极管,是单片机系统中最常用的一种显示输出,主要用于单片机控制中的数据输出和状态信息显示。
共阳极数码管是将所有发光二极管的阳极接在一起作为公共端COM,当公共端接低电平时,某一段阳极上的电平为“1〞时,该段点亮,电平为“0〞时,该段熄灭。
其中1、2、3、4是位选端,a、b、c、d、e、f、g、dp是段选端。
加上驱动,其电路图如图4.4所示。
图4.4 数码管显示电路图4.3 4*4矩阵键盘电路和4个独立键盘电路键盘是单片机应用系统中使用最广泛的一种数据输入设备。
键盘是一组按键的组合。
键通常是一种常开型按钮开关,常态下键的两个触点处于断开状态,按下键时它们才闭合〔短路〕。
通常,键盘有编码和非编码两种。
编码键盘通过硬件电路产生被按按键的键码和一个选通脉冲。
选通脉冲可作为CPU的中断请求信号。
这种键盘使用方便,所需程序简单,但硬件电路复杂,常不被单片机采用。
非编码键盘按组成结构又可分为独立式键盘和矩阵式键盘。
独立式键盘的工作过程与矩阵式键盘类似,无论是硬件结构还是软件设计都比拟简单。
矩阵式键盘电路连接复杂,但提高了I/O口利用率,软件编程较复杂,适用于需使用大量按键的场合。
在此单片机中,用了4*4的非编码矩阵式键盘,其电路图如图4.5所示。
图4.5 4*4矩阵键盘电路独立键盘电路图如图4.6所示。
图4.6 独立键盘电路图4.4 存储电路顾名思义,存储电路就是在掉电之后存储当前数据,当下次上电时,还能保持上次掉电时的数据。
I2C总线接口EEPROM存储器是一种采用I²C总线接口的串行总线存储器,这类存储器具有体积小、引脚少、功耗低、工作电压范围宽等特点。
在单片机系统中使用较多的EEPROM存储器是24系列串行EEPROM。
其具有型号多、容量大、支持I²C总线协议、占用单片机I/O端口少,芯片扩展方便、读写简单等优点。
在这个存储电路中,采取的主芯片是AT24C02,具有256个字节。
其特性为:●与400KHz I²C总线兼容●●低功耗CMOS技术●写保护功能:当WP为高电平时进入写保护状态●页写缓冲器●自定时擦写周期编程/擦除周期●1000000100年●可保存数据脚DIP、SOIC或TSSOP封装●8●温度范围:商业级、工业级和汽车级其引脚功能为:A0、A1、A2:器件地址选择。
在此电路图中将它们全部接地了。
SDA :串行数据/地址。
SCL :串行时钟。
WP :写保护。
VSS :地AT24C02支持I²C总线数据传送协议,I²C总线协议规定,任何将传送到总线的器件作为发送器。
任何从总线接收的器件为接收器。
数据传送是由产生串行时钟和所有起始停止信号的主器件控制的。
主器件和从器件都可以作为发送器或接收器,但由主器件控制传送数据的模式。
其电路图如图4.7所示。
图4.7 存储电路4.5 实时时钟电路在此电路中采取的主芯片是DS1302。
DS1302是美国DALLAS公司推出的一种高性能、低功耗的实时时钟芯片,附加31字节静态RAM,采用SPI三线接口与CPU 进行通信,并可采用突发方式一次传送多个字节的时钟信号和RAM数据。
实时时钟可提供秒、分、时、日、星期、月和年,小月与大月可以自动调整,且具有闰年补偿功能。
工作电压~5.5V。
采用双电源供电〔主电源和备用电源〕,可设置备用电源充电方式,提供了对后备电源进行涓细电流充电的能力。
其引脚功能为:Vcc1 :备用电池端。
Vcc2 :5V电源。
当Vcc2>Vcc1+0.2V时,由Vcc2向DS1302供电,当Vcc2< Vcc1时,由Vcc1向DS1302供电。
SCLK :串行时钟输入。
I/O :数据输入输出口。
CE/RST :复位脚。
Z的晶振〕。
GND :地。
其电路图如图4.8所示。
图4.8实时时钟电路图4.6 LCD接口显示仅仅只有LED数码管,有时候不能满足显示要求,如要显示字符、文字、图片等,仅仅是数码管是显示不出来的,所以在此系统中,增加了1602LCD 接口和12864LCD接口,以方便外扩。