单片机项目一任务单1.1
- 格式:docx
- 大小:34.62 KB
- 文档页数:1
1.1 单片机1.1.1 单片机单片机[1]是采用超大规模集成电路技术把具有数据处理能力(如算术运算、逻辑运算、数据传送、中断处理)的微处理器(CPU,随机存取数据存储器(RAM)、只读程序存储器(ROM)、输入/输出电路(I/O),可能还包括定时/记数器、传行通信口(SCI、显示驱动电路(LCD或LED驱动电路)、脉宽调制电路(PWM)、模拟多路转换器及A/D转换器等电路集成到一片芯片上,构成一跟最小而又完善的计算机系统。
1.1.2AT89C51AT89C51是带4K字节闪烁可编程可擦除只读存储器(EPEROM的低电压、高性能CMOS 8位微处理器(俗称单片机)。
该单片机与工业标准的MCS —51型机的指令集和输出引脚兼容。
AT89C51将多功能8位CPU和闪烁存储器组合在单个芯片中,为很多嵌入式控制提供了灵活性高且价格低廉的方案。
AT89C51的主要特性如下:寿命达1000 写/擦循环;数据保留时间:10年;全静态工作:0Hz—24MHz;三级程序存储器锁定;128 X8位内部RAM;32 可编程I/O 线;2 个16 位定时器/计数器;5 个中断源;可编程串行通道;低功耗闲置和掉电模式;片内振荡器和时钟电路。
AT89C51引脚排列如图1-1-1所示,引脚功能如下:图1-1-1 89C51的引脚功能VCC(40):+5V。
GND(20):接地。
P0 口(39 - 32): P0 口为8位漏极开路双向I/O 口,每引脚可吸收8个TTL门电流。
P1 口(1-8):P1 口是从内部提供上拉电阻器的8位双向I/O 口,P1 口缓冲器能接收和输出4个TTL门电流。
P2 口(21-28): P2 口为内部上拉电阻器的8位双向I/O 口,P2 口缓冲器可接收和输出4个TTL门电流。
P3 口(10- 17): P3 口是8个带内部上拉电阻器的双向I/O 口,可接收和输出4个TTL门电流,P3 口也可作为AT89C51的特殊功能口。
单片机课程设计任务书单片机课程工程实践的目的就是让同学们在理论学习的基础上,通过完成一个涉及MCS-51单片机多种资源应用并具有综合功能的小系统目标板的设计与编程应用,使学生不但能够将课堂上学到的理论知识与实际应用结合起来,而且能够对电子电路、电子元器件、印制电路板等方面的知识进一步加深认识,同时在软件编程、排错调试、焊接技术、相关仪器设备的使用技能等方面得到较全面的锻炼和提高,为今后能够独立进行某些单片机应用系统的开发设计工作打下一定的基础。
着重提高学生在单片机应用方面的实践技能,树立严谨的科学作风,培养学生综合运用理论知识解决实际问题的能力。
学生通过单片机的硬件和软件设计、安装、调试、整理资料等环节,初步掌握工程设计方法和组织实践的基本技能,逐步熟悉开展科学实践的程序和方法。
一、设计目的单片机工程实践是单片机技术课程的实践教学环节,是对学生学习单片机的综合性训练,这种训练是通过学生独立进行某一课程的设计、制作、调试来完成的.单片机的工程实践应主要体现在对实际工程应用系统或产品的研制来说,从课题任务的提出到定型生产或投入使用,都要经过方案的总体认证、系统设计、软件及硬件的开发、联机调试等若干步骤.因此,单片机工程实践是以工程项目和工程应用为课题.着重培养学生工程实践能力、独立工作能力及创新能力。
单片机应用系统课程工程实践作为独立的教学环节,是自动化及相关专业集中实践性环节系列之一,是学习完《单片机原理及应用》课程后,并在进行相关课程设计基础上进行的一次综合练习。
其目的在于加深对MCS一51单片机的理解,掌握单片机应用系统的设计方法,掌握常用接口芯片的正确使用方法,强化单片机应用电路的设计与分析能力,提高学生在单片机应用方面的实践技能和科学作风,培育学生综合运用理论知识解决问题的能力,力求实现理论结合实际、学以至用。
学生通过查阅资料、接口设计、程序设计、安装调试、整理资料等环节,初步掌握工程设计方法和组织实践的基本技能;熟悉开展科学实践的程序和办法,为今后从事生产技术工作打下必要的基础;学会灵活运用已经学过的知识,并能不断接受新的知识,大胆发明创造的设计理念。
《单片机原理与应用》学生工作任务单班级:学号:学期:姓名:《单片机元原理与应用》学生工作任务单3. 完成程序流程图。
开始初始化R1=00H R2=16查表,读出数数赋值于P1R2-1=0循环INC R1YN延时主程序R3初值20HR6初值FFHR7初值80HR7-1=0?R6-1=0?R3-1=0?返回NYNNYY延时程序小组讨论完成。
4. 编写程序。
根据控制任务,自行选择指令完成程序编写,其中延时子程序如下: DELAY :MOV R6,#00HDELAY1:MOV R7,#80H DJNZ R7,$DJNZ R6,DELAY1 5.程序的仿真。
根据仿真步骤实现程序的仿真,并完成程序错误的修改。
根据步骤将程序编译为.hex 格式。
6.程序的下载。
(1)、连接USB 下载线,用15cm 的短线(一定要短线)连接JP5和JP6并下载"跑马灯.hex"程序。
下载后断开JP5和JP6。
(2)、用数据线连接P1口和“逻辑输入”的JP1 (3)、八位发光二极管以跑马灯的效果亮灯。
(二)问题分析1.跑马灯实验所用的I/O 是哪个,编程时应注意什么问题?项目三单片机指令系统任务3.1 数据传送指令的练习学时 4 姓名学号班级日期同组人任务描述:在数据传送指令中必须指定传送数据的源、目地址,数据传送后源地址中内容不变,目的地址中的内容则是后入为主。
数据交换指令把互为源和目的两个地址单元中内容相互交换,也属于数据传送范围。
此外,堆栈操作也归入数据传送操作之中。
任务内容: 1.掌握各种数据处理类指令。
2. 学会使用KEIL仿真软件;步骤一:资讯1.写出单片机的七种寻址方式。
2.写出几种常见的数据处理类指令。
步骤二:决策与计划(1)在教师指导下,讨论如何完成各种指令的输入。
(3)如何仿真程序。
(4)通过怎样的方法编译程序并观看结果。
步骤三:实施(1)、双击桌面上图标(2)、新建工程(3)、指定新建工程的位置和名称。
单片机设计任务书(一)引言概述:单片机是一种集成电路芯片,具有高度集成化、功耗低、功能强大等特点,被广泛应用于电子产品中。
本文档旨在明确单片机设计任务书(一)的目标和要求,以确保项目的顺利进行。
正文内容:1. 硬件设计1.1 系统功能需求:明确设计的系统功能,并列出相关的硬件需求。
1.2 系统架构设计:根据功能需求,设计单片机系统的硬件框架和组件连接方式。
1.3 电路设计:根据系统架构设计,绘制电路图,并选择适当的电子元件进行电路设计。
1.4 PCB设计:将电路设计转化为PCB布局,进行连线规划和元件放置。
1.5 原型制作:基于PCB设计,制作单片机硬件原型,并对其进行测试和验证。
2. 软件开发2.1 系统需求分析:对系统功能需求进行详细分析,并确定软件开发的需求和要求。
2.2 程序设计:根据需求分析,设计单片机系统的软件架构和模块划分。
2.3 编码实现:使用合适的编程语言,编写单片机系统的程序代码。
2.4 调试和测试:对编写的程序进行调试和测试,确保其功能正常运行。
2.5 优化和维护:根据测试结果对程序进行优化,并进行系统的维护和更新。
3. 功能测试3.1 单元测试:对单片机系统中的各个功能模块进行独立测试,验证其功能是否符合预期。
3.2 集成测试:将各个功能模块进行集成测试,验证系统整体功能是否协调运行。
3.3 性能测试:进行系统性能测试,评估系统的响应速度、稳定性和资源占用情况。
3.4 安全性测试:对系统进行安全性测试,检测系统是否存在数据泄露、攻击漏洞等问题。
3.5 用户测试:邀请用户参与系统测试,收集用户反馈,以改进系统的用户体验。
4. 文档编写4.1 硬件设计文档:撰写详细的硬件设计文档,包括电路图、PCB布局等设计细节。
4.2 软件开发文档:编写完整的软件开发文档,包括软件需求规格、设计思路、代码逻辑等。
4.3 测试文档:记录系统功能测试、性能测试、安全性测试等的测试过程和结果。
4.4 使用手册:编写用户使用手册,向用户介绍系统的功能和使用方法。
语句的一般形式及执行过程。
语句的一般形式为表达式3)循环体*/1-2所示。
图1-1 if-else-if语句的执行过程图1-2 for语句的执行过程6.任务实施在一次竞赛中,A、B、C、D、E等5个人经过激烈的角逐,最终取得了各自的名次,他们的一个好朋友很遗憾没有观看到比赛,在比赛结束后这个朋友询问他们之间的名次时得知:C不是第一名,D比E低两个名次,而E不是第二名,A既不是第一名,也不是最后一名,B比C低一个名次。
编写程序实现,计算这五个人各自的名次并输出。
画出程序设计流程图,并写出程序代码。
答:程序设计流程图略。
【参考代码】#include<stdio.h>int main( ){int A,B,C,D,E; /*定义5个整型变量*/for(A=1;A<6;A++) /*将A在1~5的名次中循环*/for(B=1;B<6;B++) /*将B在1~5的名次中循环*/if(A!=B) /*判断变量与已有变量值不相等*/for(C=1;C<6;C++) /*将C在1~5的名次中循环*/if(C!=A&&C!=B) /*判断变量与已有变量值不相等*/for(D=1;D<6;D++) /*将D在1~5的名次中循环*/if(D!=A&&D!=B&&D!=C) /*判断变量与已有变量值不相等*/for(E=1;E<6;E++) /*将E在1~5的名次中循环*/if(E!=D&&E!=C&&E!=B&&E!=A) /*判断变量与已有变量值不相等*/if((C!=1)&&(D-E==2)&&(E!=2)&&(A!=1)&&(A!=5)&&(B-C==1)) /*根据问题设置的条件*/ printf("A=%d,B=%d,C=%d,D=%d,E=%d\n",A,B,C,D,E); /*输出*/return 0;}。
单片机实训项目一流水灯
任务一利用protues,让LED灯跑起来
项目组组长_____________ 项目组人员______________ 工位号_____________
一、任务下放
1、任务描述
利用protues仿真软件设计一个最简单的单片机系统,利用Keil软件编程控制发光二极管的亮灭。
具体要求完成:
1.1单片机最小系统硬件电路设计 1.2 LED外围电路的设计
1.3 Keil软件的运用 1.4 protues的仿真调试
2、任务目标
2.1掌握单片机的概念及其硬件资源 2.2掌握单片机的封装及引脚
2.3掌握单片机最小系统的概念及设计 2.4掌握单片机时序和周期的概念
2.5掌握单片机复位电路的原理 2.6熟悉单片机软件开发流程
2.7掌握单片机Protues仿真软件的基本使用方法和Keil集成开发环境的基本使用方法
3、任务提供工具
带Protues仿真软件和Keil软件的PC一台
二、前期预备知识
1、什么是单片机,c52单片机的硬件资源有哪些?
2、C52单片机有几种周期,它们的关系是什么?如果用的是12MHZ的晶振,它的几种周
期是多少?
3、下图为单片机复位电路,说明它的原理,并说明复位
后PC指向的位子是多少?。