文档库 最新最全的文档下载
当前位置:文档库 › 单片机实训任务设计(新)

单片机实训任务设计(新)

单片机实训任务设计(新)
单片机实训任务设计(新)

单片机实训任务设计

1、LED循环控制

任务要求:编程控制LED循环点亮,开始为LED按位左循环亮,延时一段时间后,LED同时闪烁3下,然后按位右循环亮,LED同时再闪烁3下,依次循环。(延时时间不作要求,但要能看清状态变换)。

2、LED循环控制

任务要求:编程控制LED循环点亮,开始为D1、D3、D5、D7按位左循环亮,延时一段时间后,8只LED同时闪烁3下,然后D8、D6、D4、D2按位右循环亮。8只LED同时闪烁3下,依次循环。(延时时间不作要求,但要能看清状态变换)。

3、LED控制

任务要求:编写程序控制实现实训板上的八只LED中的四只按以下规律亮灭,当系统运行后,自动循环操作(延时时间不作要求,但要能看清状态变换)。

4、LED控制

任务要求:编写程序控制实现实训板上的八只LED中的四只按以下规律亮灭,

当系统运行后,自动循环操作(延时时间不作要求,但要能看清状态变换)。

5、LED按键控制

任务要求:用一个按键控制八只LED中的四只大状态变化,四种LED的状态变换一次,要求实现以下的状态控制。

6、数码管动态显示

任务要求:编程控制数码管显示以下内容。

7、数码管动态显示

任务要求:编程控制数码管显示以下内容。

8、数码管循环显示

任务要求:编程控制数码管显示以下内容。

嵌入式微控制器技术实验任务书(附程序和仿真图)

“嵌入式微控制器技术”实验任务书(电气、自动化) 一、实验目的与要求: 1、熟练掌握基于SST89E554RC微控制器的Keil C51集成开发工具的操 作及调试程序的方法(包括:仿真调试与脱机运行间的切换方法);掌握 其他相关微控制器集成开发工具的使用及调试方法; 2、熟练掌握基于SST89E554RC单片机核心板及I/O扩展实验系统的电 路结构原理、设计与应用;掌握其他相关微控制器最小系统设计与应用; 3、熟练掌握在Keil C51与Proteus仿真软件虚拟联机环境下的基于51 单片机控制器数字接口电路的硬件、软件设计方法与功能调试; 4、完成本实验课程所要求的全部实验容,并写出实验报告。 二、微机原理与接口技术综合实验室资源简介 实验室为以下实验活动提供条件: 1、基于唐都实验系统的微机原理与接口技术实验(包括汇编语言、C 语言/C++语言软件编程实验和16位/32位微机接口电路应用实验); 2、基于SST89E554RC微控制器技术软/硬件实验(提供支持汇编语言、 C语言编程的Keil C51集成开发工具、最小核心板+唐都实验系统箱); 3、基于DSP2407、DSP2812、DSP28335微控制器技术软件/硬件实验(提 供支持C语言编程的TI公司的CCS集成开发工具、DSP系列学习开发板、直流电机、步进电机、液晶); 4、基于Freescale的16位MC9S12XS128微控制器技术应用实验(提 供支持C语言编程的CodeWarrier 5.0 For S12集成开发工具、 HF-MC9S12XS128EVB-A 核心板); 5、基于ARM的16/32位ARM7LPC2103TDMI-S微控制器技术基础实验(提供 支持C、C++语言编程的ARM公司推出的ARM微控制器ADS 1.2集成开发工具、EasyARM2103开发板); 6、基于ARM Cortex?-M3先进核的LM3S1138微控制器技术基础实验(提

《单片机基础与实训》试题一

《单片机基础与实训》试题一 班级: 姓名: 学号: 一、填空题(每空1分,共10分) 1.MCS—51布尔处理机的存储空间是_______。 2.P 2 口通常用作,也可以作通用的I/O口使用_______。 3.若由程序设定RS 1、RS =01,则工作寄存器R ~R 7 的直接地址为_______。 4.4、8051的堆栈区一般开辟在_______。 5.所谓寻址,其实质就是_______。 6.存储器映象是_______。 7.定时器中断请求发生在_______。 8.中断响应时间是指_______。 9.通过CPU对I/O状态的测试,只有I/O已准备好时才能进行I/O传送,这种 传送方式称为_______。 10.在中断服务程序中现场保护和现场恢复期间,中断系统应处在状态_______。 二、单选题(每小题1分,共10分) 1.MCS-51单片机复位操作的主要功能是把PC初始化为()。 A、0100H B、2080H C、0000H D、8000H 2.若单片机的振荡频率为6MHz,设定时器工作在方式1需要定时1ms,则定时 器初值应为()。 A、500 B、1000 C、216-500 D、216-1000 3.定时器1工作在计数方式时,其外加的计数脉冲信号应连接到()引脚。 A、P 3.2 B、P 3.3 C、P 3.4 D、P 3.5 4.当外部中断请求的信号方式为脉冲方式时,要求中断请求信号的高电平状态

和低电平状态都应至少维持()。 A、1个机器周期 B、2个机器周期 C、4个机器周期 D、10个晶振周期 5.MCS-51单片机在同一优先级的中断源同时申请中断时,CPU首先响应()。 A、外部中断0 B、外部中断1 C、定时器0中断 D、定时器1中断 6.定时器若工作在循环定时或循环计数场合,应选用()。 A、工作方式0 B、工作方式1 C、工作方式2 D、工作方式3 7.MCS-51单片机的外部中断1的中断请求标志是()。 A、ET1 B、TF1 C、IT1 D、IE1 8.下列标号中,正确的标号是()。 A、1BT: B、BEGIN: C、ADD: D、STAB31: 9.串行口每一次传送()字符。 A、1个 B、1串 C、1帧 D、1波特 10.要想把数字送入DAC0832的输入缓冲器,其控制信号应满足()。 A、ILE=1,CS=1,WR1=0 B、ILE=1, CS=0, WR1=0 C、ILE=0, CS=1, WR1=0 D、ILE=0,CS=0, WR1=0 三、简答题(每小题4分,共20分) 1.如何正确使用P3口? 2.简述累加器的ACC的作用。 3.简述寄存器间接寻址方式及其寻址范围。 4.简述MCS-51单片机的中断入口地址。 5.简述串行数据传送的特点。 四、程序题(每小题4分,共20分)

单片机原理与应用试题二及答案

单片机原理与应用试题二及答案 第一部分笔试题 (本部分共有4大题,总分60分,考试时间60分钟,闭卷) 一、填空题(每空1分,共20分) 1.计算机中最常用的字符信息编码是()。 2.MCS-51系列单片机为()位单片机。 3.若不使用MCS-51片内存储器引脚必须接()。 4.8051单片机有两种复位方式,既上电复位和手动复位。复位后SP =(),PC =(),PSW =(),P0 =()。 5.在MCS-51中,PC和DPTR都用于提供地址,PC为访问()存储器提供地址,而DPTR是为访问()存储器提供地址。 6.MCS-51单片机系列有()个中断源,可分为()个优先级。 7.假定(A)=85H,(R0)=20H,(20H)=0AFH.执行指令:ADD A,@R0 后,累加器A的内容为(),CY的内容为(),OV的内容为()。. 8.A/D转换器的作用是将()量转为()量。 9.LED数码显示按显示过程分为()显示和()显示2种。 10.用汇编语言指令编写的程序,应该称作()程序,经过汇编的程序应该称作()。 二、选择题(每空1分,共10分) 1.采用8031单片机必须扩展()。 A.数据存储器 B.程序存储器 C.I/O接口 D.显示接口 2.PSW=18H时,则当前工作寄存器是()。 A.0组 B.1组 C.2组 D.3组 3.执行PUSH ACC指令, MCS-51完成的操作是()。 A.SP+1→SP(ACC)→(SP) B.(ACC) →(SP) SP-1→SP C.SP-1→SP(ACC)→(SP) D.(ACC)→(SP)SP+1→SP

4.MOV C,20H.0 的操作方式是()。 A.位寻址 B.直接寻址 C.立即寻址 D.寄存器寻址 5.访问外部数据存储器应采用以下哪条指令?() A.MOVX @R0,A B.MOVC A,@A+DPTR C.MOV @R0,A D.MOV @DPTR,A 6.外部中断1固定对应的中断入口地址为()。 A.0003H B.0000BH C.0013H D.001BH 7.对程序存储器的读操作,只能用()。 A.MOV 指令 B.PUSH指令 C.MOVX指令 D.MOVC指令 8.8031定时/计数器共有四种操作模式,由TMOD寄存器中M1 M0的状态决定,当M1 M0的状态为01 时,定时/计数器被设定为()。 A.13位定时/计数器。 B.T0为2个独立的8位定时/计数器,T1停止工作。 C.自动重装8位定时/计数器。 D.16位定时/计数器。 9.在进行串行通信时,若两机的发送与接收可以同时进行,则称为()。 A.半双工传送 B.单工传送 C.双工传送 D.全双工传送 10.下列指令中错误的有()。 A.CLR A B.MOVC@DPTR,A C.MOV P,A D.JBC TF0,LOOP 三、简述题(每题4分,共16分) 1.存储器的容量如下所示,若它的首地址为0000H,写出它的末地址。 (1)存储容量1KB,末地址为多少? (2)存储容量4KB,末地址为多少? 2.DPTR是什么寄存器?它的作用是什么?它是由哪几个寄存器组成? 3.(A)=3BH,执行ANL A,#9EH指令后,(A)=? (CY)=? 4.MCS-51采用6MHz的晶振,定时0.5ms,如用定时器方式1时的初值(16进

89C51单片机实验指导书

目录 实验一系统认识实验 (2) 实验二多字节加、减运算实验 (3) 实验三多字节乘、除法运算实验 (4) 实验四代码转换实验 (5) 实验五布尔操作实验 (6) 实验六中断系统实验 (7) 实验七定时器/计数器实验 (9) 实验八串行通讯接口实验 (12) 实验九串并转换实验 (16) 实验十存储器扩展实验 (18) 实验十一8155键盘及显示接口实验 (20) 实验十二ADC0809(模/数转换) (24) 实验十三 DAC0832(数/模转换) (26) 实验十四步进电机实验 (29) 实验十五直流电机调速控制实验 (32) 附录Windows版Wmd51 3.0使用说明 (34)

实验一系统认识实验 一.实验目的和要求 1.学习和掌握本实验系统的基本操作; 2.总结汇编程序的形成和调试过程; 3.掌握循环程序的设计; 4.画出程序流程图,编制程序并上机调试通过。 二.实验内容 1.软件延时 若系统时钟为6MHZ,要求实现每隔250毫秒将P1.0口取反。 2.无符号数加法 计算N个数据的和,即Y=∑Xi (i=1--6)。若六个数据放在片 内RAM的50H——55H地址单元中,求和的结果Y放在内部RAM的03H(高位)、04H (低位)地址单元中。 1).32H+41H+01H+56H+11H+03H 2).95H+01H+02H+44H+48H+12H 3).54H+0F6H+1BH+20H+04H+0C1H 3.数据排序 将内部RAM地址单元30H—3FH中的16个数据按小到大的顺序重新排序。

实验二多字节加、减运算实验 一.实验目的和要求 1.掌握多字节数的加、减法运算; 2.进一步熟悉实验系统的使用方法; 3.进一步熟悉汇编程序的调试过程; 4.画出程序流程图,编制程序并上机调试通过。 二.实验内容 1.多字节无符号数的加法 2.多字节无符号数减法 入口:被减数低字节地址在R0,减数低字节数地址在R1,字节数在R2; 出口:差的低字节地址在R0。字节数在R3。 3.多字节十进制BCD码减法 入口:被减数低字节地址在R1,减数低字节地址在R0,字节数在R2。 出口:差(补码)的低字节地址在R0,字节数在R3(07H为符号位。“0”为正,“1”为负)。

单片机实训报告

单片机原理及应用 实训报告 班级: 学号: 姓名: 指导教师: 实训总成绩:

一、节日彩灯设计 题目:8位逻辑电平模块上的LED小灯从左向右呈现“鞭甩”的实验现象,状态间隔为0.25秒;按键1开始,按键2结束。 原理图 程序代码: #include #define uchar unsigned char uchar tab[]={0x7f,0x3f,0x1f,0x0f,0x07,0x03,0x01,0x00}; sbit S1=P1^4; sbit S2=P1^7; unsigned char i,j; delay(unsigned int x) { for(j=0;j

for(i=0;i<10;i++); } void main() { uchar i,b,d; while(1) {if (S1==0) {delay(50); if(S1==0); S1=b; b=0; {for(i=0;i<8;i++) { P2=tab[i]; delay(50); {if (S2==0) {delay(50); if(S2==0); S1=d; d=1; P2=0xff; }} } } } } } 设计思想总结 用C语言程序控制单片机最小系统,使IO口输出高低电平控制彩灯电路的闪烁。节日彩灯控制器是利用将单片机的CPU、RAM、ROM、定时器/计数器及输入/输出、I/O接口电路集成在一块集成电路芯片上的特点。通过其与发光二极

管及驱动电路的连接,从而构成一个完整的硬件电路。然后通过对单片机的ROM 进行编程,实现对彩灯闪烁的控制。 二、定时器实现流水灯 题目:利用定时器/计数器T0产生2秒钟的定时,每当2秒定时到来时,更换指示灯点亮,依次循环点亮。 原理图 程序代码 #include #include int lamp = 0xfe ; int cnt = 0; main() {P2 = 0xfe; TMOD = 0x01; TL0 = (65536 - 50000) % 256; TH0 = (65536 - 50000) / 256; TR0 = 1 ; ET0 = 1;

实验一 单片机数据区传送程序设计

实验一单片机数据区传送程序设计 一、实验目的 1.进一步掌握汇编语言程序设计和调试方法。 2.了解单片机RAM中的数据操作 二、实验说明 要求:编写程序把R2、R3源RAM区首地址内的R6、R7字节数据传送到R4、R5目的地址的RAM区。 三、实验仪器 计算机 伟福软件(lab2000P ) 四、实验内容 在R0、R1中输入源地址(例如:3000H),R2、R3中输入目的地址(例如4000H),R6、R7中输入字节数(例如:1FFFH)。 查看RAM 区3000~30FFH和4000~40FFH内容,也可自己重新赋值。 运行程序,首先单步,然后用执行到指定位置,最后用连续运行方式。 记录下运行结果,检查3000~30FFH中内容是否和4000~40FFH内容完全一致。 五、思考题 1、改变源地址,例如00FFH; 2、改变目的地址,例如2000H; 3、改变传输的个数,小于256个和大于256个的情况。 4、把程序改为对某一数据存储区RAM赋都相同一个数值。 六、源程序及其修改原理 org 0000H Block equ 2000h mov dptr, #Block ; 起始地址 mov r0,#12h mov a,#20h ;修改2000h开始的地址所存放的内容为20h Loop: mov r1,#14h ;增加r1计数,用循环方式实现大于256的数据传输(思 考题3) Loop1: movx @dptr,a inc dptr ; 指向下一个地址 djnz r1,Loop1 djnz r0, Loop ; 双循环实现r0,r1计数相乘 (以上程序实现对某一数据存储区2000h~2168hRAM赋都相同一个数值20h,思考题4) mov r0, #20h ;改变源地址为2000h(思考题1) mov r1, #00h mov r2, #50h;改变目的地址为5000h(思考题2) mov r3, #00h

单片机实验指导书

实验一KEIL 51软件实验 实验目的: 1、掌握KEIL集成开发环境的使用 2、掌握算术运算程序 实验设备:计算机、KEIL51软件 实验内容: 编程实现把片人RAM30H单元和40H单元两个16字节数相加,结果放于30H单元开始的位置处。在KEIL51编译、连接、仿真调试。 实验步骤: 一、运行KEIL51软件,出现图1所示KEIL 51主界面。 图1 KEIL 51主界面 首先用Project菜单下的New Project命令建立项目文件,过程如下。 (1) 选择Project菜单下的New Project命令,弹出如图2所示的Create new Project对话框。 图2 Create New Project对话框 (2) 在Create New Project对话框中选择新建项目文件的位置(最好一个项目建立一个文件夹如E:\project), 输入新建项目文件的名称,例如,项目文件名为example,单击【保存】按钮将弹出如图3所示的Select Device for Target ‘Target 1’对话框,用户可以根据使用情况选择单片机型号。Keil uVision2 IDE几乎支

持所有的51核心的单片机,并以列表的形式给出。选中芯片后,在右边的描述框中将同时显示选中的芯片的相关信息以供用户参考。 图3 Select Device for Target ‘Target 1’对话框 (3) 这里选择atmel公司的AT89c51。单击【确定】按钮,这时弹出如图4所示的Copy Standard 8051 Startup Code to Project Folder and Add File to Project确认框,C语言开发选择【是】,汇编语言开发选择【否】。 单击后,项目文件就创建好了。项目文件创建后,在主界面的左侧的项目窗口可以看到项目文件的内容。 这时只有一个框架,紧接着需向项目文件中添加程序文件内容。 图4 Copy Standard 8051 Startup Code to Project Folder and Add File to Project确认框 二、给项目添加程序文件 当项目文件建立好后,就可以给项目文件加入程序文件了,Keil uVision2支持C语言程序,也支持汇编语言程序。这些程序文件可以是已经建立好了的程序文件,也可以是新建的程序文件,这里我们新建的汇编程序文件后再添加。 (1) 选择文件菜单上的new命令,出现新建文本窗口,如图5所示。

单片机实训题目及要求

实训设计说明 一、实训设计的基本要求: 单片机实训设计的主要内容包括:理论设计、调试与仿真、撰写设计报告等。其中理论设计又包括选择总体方案,硬件系统设计、软件系统设计;硬件设计包括单元电路,选择元器件及计算参数等;软件设计包括模块化层次结构图,程序流程图。程序设计是实训设计的关键环节,通过调试进一步完善程序设计,使之达到课题所要求的指标,使理论设计更接近于实际产品。实训设计的最后要求是写出设计总结报告,把理论设计内容,调试的过程及性能指标的测试结果进行全面的总结,把实践内容上升到理论高度。 单片机实训设计的教学采用相对集中的方式进行,到单片机实验室(7-710)进行实训,每组配备一台PC机、一套单片机综合实验箱、相关的软件及电子元器件等器材设备。做到实训教学课堂化,严格考勤制度,在实训期间(一周)累计旷课达到6节以上,或者迟到、早退累计达到6次以上的学生,该实训考核按不及格处理。在实训期间需要外出查找资料、购买电子元器件时,必须向指导老师请假,经同意后方可外出。实训设计的任务相对分散,每2名学生组成一个小组,完成一个课题的设计。小组成员既有分工、又要协作,同一小组的成员之间可以相互探讨、协商,可以互相借鉴或参考别人的设计方法和经验。但每个学生必须单独完成设计任务,要有完整的设计资料,独立撰写设计报告,设计报告雷同率超过50%的实训设计考核按不及格处理。 二、进度安排: 单片机实训设计共安排4周,合计50学时,具体分配如下: ?实训动员、准备工作及选题:2学时 ?总体方案设计:6学时 ?硬件设计及仿真:7学时 ?软件设计:9学时 ?软件调试:6学时 ?整机测试:5学时 ?撰写设计报告:9学时 ?答辩与总结:4学时 该时间只是粗略进行划分,各个组员可依据进度完成情况,适当调整,但需确保整个设计能按期完成。 三、设计报告要求: 设计完成后,必须撰写实训设计报告。设计报告必须独立完成,格式符合要求,文字(不含图形、程序)不少于5000字,图形绘制规范,装订成册。设计报告的格式如下: 1、封面 2、内容提要 3、目录 4、正文 (1)所作题目的意义、原理等,本人所做的工作及系统完成的主要功能; (2)硬件电路设计及描述(要有原理框图和原理图); (3)软件设计流程及描述(要有程序流程图); (4)设计调试过程(分步进行); (5)源程序代码(要有注释); 5、心得体会 6、参考文献

单片机原理及指导应用实训资料报告材料:实篮球记分牌

电子科技大学信息科技学院单片机原理及应用实训报告 题目篮球计分牌 学号0951100228 姓名锎 指导老师桂明锟志鹏 2011 年9 月23 日

1.系统设计 1.1设计要求 1.1.1.基本要求 1 设计一个基于单片机的篮球计分牌,实现两队的计分功能与24秒计时功能 2 结合硬件能够正常计分 3 能够正常显示分值。 4 能够正常修改工作模式(计分与24秒) 5 能够24秒的误差不小于1秒 1.1. 2.发挥部分 1 12分钟倒计时 2 能够两队球员犯规次数计数 3 重置24秒表 4 倒计时结束报警 5 12分钟倒计时结束红灯全部亮 1.2设计原理 1.2.1 框图设计 1.2.2 程序流程 1.2.2.1加分程序流程

1.2.2.2犯规程序流程 1.2.2.3 选择显示程序流程

1.3方案比较 1.3.1 方案1:是通过按不同的键来切换不同的输入,使用不同的LED灯的亮灭来显示不同的队加分。 电路图: 1.3.2 方案2:通过一个键来切换分数,24s倒计时,12分钟倒计时和犯规次数,通过LED灯的亮来判断是那个队加分,那个队犯规,12分钟倒计时结束。另外,给a队b队加分和加犯规次数。通过按键,选择哪种显示方式,暂停/开始24s倒计时,重置24s; 电路图:

1.4方案论证 1.4.1总体思路 7个按键实现对应功能:P1^6对应a队加分,第一个红灯亮;P1^0对应b队加分,第二个红灯亮;P1^1对应显示切换,切换有四类显示方式,第一类是a队跟b队的比分显示,且各两个数码管显示。第二类是24s倒计时的显示。第三类是12分钟倒计时的显示。第四类是a队跟b队的犯规次数显示;P1^2对应24秒倒计时暂停/开始;P1^3对应重置24s倒计时,同时24s倒计时暂停;P1^4对应a队加犯规次数,同时第三个红灯亮;P1^5对应b队加犯规次数,同时第四个红灯亮;外加复位键,按下则清零;24秒倒数为0时蜂鸣器响起警报,重新倒数时蜂鸣器关闭。12分钟倒计时结束时,蜂鸣器响起警报,红灯全亮。 1.4.2设计方案 使用了延时子程序(delay)用来按键消抖,还有定时中断程序来显示数码管,启止24s倒计时,12分钟倒计时,使用了P0口作为数码管的段选和P2口的位选,使用P1口作为按键作为输入,P3口的发光二极管作为判断a队和b队的选择和作为模式的选择部分和蜂鸣器作为倒计时24秒的计时的时间到;在主程序里面有各按键的功能,a队加分,b队加分,切换功能,重置24s功能,a队加犯规,b队加犯规; 2、模块电路的设计

单片机实验指导书

§4 单片机应用系统实验 §4.1 软件实验(使用软件仿真设置) 软件实验一数据传送实验 一、实验内容: 1.编写程序,将内部RAM中30H-5FH中的数据设置为55H。 2.编写程序,将内部RAM中30H-5FH中的内容传送到90H开始的内部RAM 中去。 3.编写程序,将内部RAM中30H-5FH中的内容传送到200H开始的外部RAM 中去(注意实际系统中为扩展的内部RAM)。 二、实验目的与要求: 1.学习与掌握针对不同区域RAM的操作方法。 2.学习与掌握指针的使用与循环程序的编写方法。 3.学习与掌握如何查看各个部分存储器的内容。 三、实验说明: 对于不同区域的RAM操作需要使用不同的寻址方式与指令。对于内部RAM 的低128字节,可以使用直接寻址也可以使用间接寻址;对于内部RAM的高128 字节,只能使用间接寻址;对于外部RAM,只能使用指针DPTR进行间接寻址。 对于数据块的操作一般使用循环程序完成。 编写程序并编译(build)检查语法错误。编译通过后进入调试环境,单步执行 程序检查程序的正确性。最后连续执行程序并检查RAM内容是否正确。 注意主程序的最后应该加一条SJMP $ 指令,以避免由于连续执行时无法停机 四、实验程序流程图: 五、思考题:如果源与目的数据块 均为外部RAM

软件实验二数据分类与校验实验 一、实验内容: 1.编写程序,将内部RAM中30H-5FH中的数据设置为1-48。 2.编写程序,将内部RAM中30H-5FH中的奇数传送到90H开始的内部RAM 中去。 3.编写程序,将内部RAM中30H-5FH中的数据按照奇校验设置最高位。二、实验目的与要求: 1.学习与掌握判断数据奇偶性的方法。 2.学习与掌握分支程序的编写方法。 3.学习与掌握如何给存储器中的数据增加校验位。 三、实验说明: 汇编语言中判断数据的奇偶性很简单,数据的最低位为1为奇数,否则为偶数。分支处理是程序设计中的基本技巧,是根据某一条件是否成立执行或不执行规定操作的方法。数据的奇偶校验不是判断数据的奇偶性,而是判断数据中有奇数个1还是偶数个1。如果是奇校验,则增加校验位后的数据应该具有奇数个1。 编写程序并编译(build)检查语法错误。编译通过后进入调试环境,单步执行程序检查程序的正确性。最后连续执行程序并检查RAM内容是否正确。 (传送奇数) 五、思考题: 1.如果只传送正数或负数应该如何编程? 2.如果只传送大于某个规定数值的数据应该如何编程?

51单片机练习题

一.闪烁灯 1.实验任务 如图4.1.1所示:在端口上接一个发光二极管L1,使L1在不停地一亮一灭,一亮一灭的时间间隔为秒。 2.电路原理图 图4.1.1 3.系统板上硬件连线 把“单片机系统”区域中的端口用导线连接到“八路发光二极管指示模块”区域中的L1端口上。 4.程序设计内容 (1)延时程序的设计方法 作为单片机的指令的执行的时间是很短,数量大微秒级,因此,我们要 求的闪烁时间间隔为秒,相对于微秒来说,相差太大,所以我们在执行 某一指令时,插入延时程序,来达到我们的要求,但这样的延时程序是 如何设计呢下面具体介绍其原理:

如图4.1.1所示的石英晶体为12MHz,因此,1个机器周期为1微秒机器周期微秒 MOV R6,#20 2个 2 D1: MOV R7,#248 2个22+2×248=49820× DJNZ R7,$ 2个2×248(498 DJNZ R6,D1 2个2×20=40 10002 因此,上面的延时程序时间为。 由以上可知,当R6=10、R7=248时,延时5ms,R6=20、R7=248时,延时10ms,以此为基本的计时单位。如本实验要求秒=200ms,10ms×R5 =200ms,则R5=20,延时子程序如下: DELAY: MOV R5,#20 D1: MOV R6,#20 D2: MOV R7,#248 DJNZ R7,$ DJNZ R6,D2 DJNZ R5,D1 RET (2).输出控制 如图1所示,当端口输出高电平,即=1时,根据发光二极管的单向导 电性可知,这时发光二极管L1熄灭;当端口输出低电平,即=0时,发 光二极管L1亮;我们可以使用SETB指令使端口输出高电平,使用CLR 指令使端口输出低电平。 5.程序框图

单片机C语言程序方案实训例——+Proteus仿真(前题)

单片机C语言程序设计实训100例 ——基于8051+Proteus仿真01 闪烁的LED /*名称:闪烁的LED 说明:LED按设定的时间间隔闪烁*/ #include #define uchar unsigned char #define uint unsigned int sbit LED=P10。 //延时 void DelayMS(uint x> { uchar i。 while(x--> { for(i=0。i<120。i++>。 } } //主程序 void main(> { while(1> { LED=~LED。 DelayMS(150>。 } } 02从左到右的流水灯 /*名称:从左到右的流水灯 说明:接在P0口的8个LED 从左到右循环依次点亮,产生走 马灯效果*/ #include #include #define uchar unsigned char #define uint unsigned int //延时 void DelayMS(uint x> { uchar i。 while(x--> {

for(i=0。i<120。i++>。 } } //主程序 void main(> { P0=0xfe。 while(1> { P0=_crol_(P0,1>。 //P0的值向左循环移动 DelayMS(150>。 } } 038只LED左右来回点亮 /*名称:8只LED左右来回点亮 说明:程序利用循环移位函数_crol_和_cror_形成来回滚动的效果*/ #include #include #define uchar unsigned char #define uint unsigned int //延时 void DelayMS(uint x> { uchar i。 while(x--> { for(i=0。i<120。i++>。 } } //主程序 void main(> { uchar i。 P2=0x01。 while(1> { for(i=0。i<7。i++> { P2=_crol_(P2,1>。 //P2的值向左循环移动 DelayMS(150>。 } for(i=0。i<7。i++> { P2=_cror_(P2,1>。 //P2的值向右循环移动

C51单片机实验指导书

单片机原理与接口技术实验讲义 目录 第一章开发环境安装使用说明 (3) 第二章基于51单片机系统资源实验 (12)

实验1 IO开关量输入实验 (12) 实验2 IO输出驱动继电器(或光电隔离器)实验 (13) 实验3 IO输入/输出---半导体温度传感器DS18B20实验 (14) 实验4 外部中断----脉冲计数实验 (15) 实验5 计数器实验 (16) 实验6 秒时钟发生器实验 (17) 实验7 PC机串口通讯实验 (18) 实验8 RS485通讯实验 (19) 实验9 PWM发生器(模拟)实验 (20) 实验10 蜂鸣器实验 (21) 第一章开发环境安装使用说明 一、KeilC51集成开发环境的安装 1.Keil u Vision2的安装步骤如下

将安装文件拷贝到电脑根目录下,然后双击图标,如图1-1所示:注意:去掉属性里的只读选项。 图1-1 启动安装环境对话框 2.选择Eval Version。然后一直next直至安装完成,如图1-2所示: 二.在Keil uVision2中新建一个工程以及工程配置 1.打开Keil C环境,如图1-3所示。

图1-3打开工程对话框 2.新建工程或打开工程文件:在主菜单上选“Project”项,在下拉列表中选择“New Project”新建工程,浏览保存工程文件为扩展名为“.Uv2”的文件。或在下拉列表中选择“Open project”打开已有的工程文件。如 图1-4所示: 图1-4 新建工程 3.环境设置:新建工程文件后,在工具栏中选择如下图选项设置调试参数及运行环境,或从主菜单“Project”项中 选择“Options for Target ‘Target1’”,打开如下图1-5设置窗口。

51单片机实验报告94890

《单片机与接口技术》实验报告 信息工程学院 2016年9月

辽东学院信息技术学院 《单片机与接口技术》实验报告 姓名:王瑛 学号: 0913140319 班级: B1403 专业:网络工程 层次:本科 2016年9月

目录 实验题目:实验环境的初识、使用及调试方法(第一章) 实验题目:单片机工程初步实验(第二章) 实验题目:基本指令实验(第三章)4 实验题目:定时器/计数器实验(第五章)4 实验题目:中断实验(第六章)4 实验题目:输入接口实验(第八章)4 实验题目:I/O口扩展实验(第九章)4 实验题目:串行通信实验(第十一章)4 实验题目:A/D,D/A转换实验(第十七章)4

实验题目:实验环境的初识、使用及调试方法实验 实验类型:验证性实验课时: 1 时间:2016年10月24日 一、实验内容和要求 了解单片机的基础知识 了解51单片机的组成和工作方法 掌握项目工程的建立、编辑、编译和下载的过程方法 熟练单片机开发调试工具和方法 二、实验结果及分析 单片机最小系统的构成: Keil集成开发环境:

STC-ISP:

实验题目:单片机工程初步实验 实验类型:验证性实验课时: 1 时间:2016 年10 月24 日一、实验内容和要求 点亮一个LED小灯 程序下载到单片机中 二、实验结果及分析 1、点亮一个LED小灯 点亮LED小灯的程序: #include //包含特殊功能寄存器定义的头文件 sbit LED = P0^0; sbit ADDR0 = P1^0; //sbit必须小写,P必须大写 sbit ADDR1 = P1^1; sbit ADDR2 = P1^2; sbit ADDR3 = P1^3; sbit ENLED = P1^4; void main() { ENLED = 0; ADDR3 = 1; ADDR2 = 1; ADDR1 = 1; ADDR0 = 0; LED = 0; //点亮小灯 while (1); //程序停止 } 2、程序下载 首先,我们要把硬件连接好,把板子插到我们的电脑上,打开设备管理器查看所使用的COM 口,如图所示:

单片机原理及应用实验报告

单片机原理实验报告 专业:计算机科学与技术 学号: :

实验1 计数显示器 【实验目的】 熟悉Proteus仿真软件,掌握单片机原理图的绘图方法 【实验容】 (1)熟悉Proteus仿真软件,了解软件的结构组成与功能 (2)学习ISIS模块的使用方法,学会设置图纸、选元件、画导线、修改属性等基本操作 (3)学会可执行文件加载及程序仿真运行方法 (4)理解Proteus在单片机开发中的作用,完成单片机电路原理图的绘制【实验步骤】 (1)观察Proteus软件的菜单、工具栏、对话框等基本结构 (2)在Proteus中绘制电路原理图,按照表A.1将元件添加到编辑环境中(3)在Proteus中加载程序,观察仿真结果,检测电路图绘制的正确性 表A.1

Switches&Relays BUT BUTTON 【实验原理图】 【实验源程序】 #include sbit P3_7=P3^7; unsigned char x1=0;x2=0 ; unsigned char count=0; unsigned char idata buf[10]= {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; void delay(int time) { int k,j;

for(;time<0;time--) for(k=200;k>0;k--) for(j=500;j<0;j--); } void init() { P0=buf[x1]; delay(10); P2=buf[x2]; delay(10); } void main() { init(); while(1) { x1=count/10; x2=count%10; P0=buf[x1]; delay(10);

单片机实验指导书

实验一8051简单编程与调试实验目的 通过简单小程序的输入和调试,熟悉并掌握Keil 的使用。学会Proteus与Keil的整合调试。 实验基本要求 建立三个项目,分别输入存储块清零、二进制BCD码及二进制ASCII码转换的汇编源程序,并进行仿真调试。画出实验程序的流程框图。 实验步骤 采用Keil Cx51 开发8051单片机应用程序一般需要经过下面几个步骤: 1、在 Vision2集成开发环境中创建一个新项目(Project),并为该项目选定合适的单片机CPU器件。 在菜单栏中选择“Project”→“New Project”,弹出“Create New Project”对话框,选择目标路径,在“文件名”栏中输入项目名后,单击“保存(S)”按钮,弹出“Selecte Device for Target”对话窗口。在此对话窗口的“Data base”栏中,单击“Atmel”前面的“+”号,或者直接双击“Atmel”,在其子类中选择“AT89C51”,确定CPU类型。如图所示。 点击“确定”按钮后,弹出如下的对话框

如果是进行汇编语言编程选择“否”。 2、利用μVision2的文件编辑器编写C语言(或汇编语言)源程序文件,并将文件添加到项目中去。一个项目可以包含多个文件,除源程序文件外还可以有库文件或文本说明文件。 在μVision2的菜单栏中选择“File”→“New”命令,新建文档,然后在菜单栏中选择“File”→“Save”命令,保存此文档,这时会弹出“Save As”对话窗口,在“文件名(N)”一栏中,为此文本命名,注意要填写扩展名“.asm”。单击“保存(S)”按钮,这样在编写汇编代码时,Keil会自动识别汇编语言的关键字,并以不同的颜色显示,以减少输入代码时出现的语法错误。程序编写完后,再次保存。 在Keil中“Project Workspace”子窗口中,单击“Target 1”前面的“+”号,展开此目录。在“Source Group 1”文件夹上单击鼠标右键,在右键菜单中选择“Add File to ‘Group Source 1’”,弹出“Add File to Group”对话窗口,在此对话窗口的“文件类型”栏中,选择“Asm Source File”,并找到刚才编写的.asm文件,双击此文件,将其添加到Source Group 中,此时“Project Workspace”子窗口如图所示。

单片机原理实验指导书(2012.10)

《单片机原理》实验指导书 计算机科学与技术系2012年8月

目录 第一部分单片机仿真实验 (1) 实验一:流水灯实验 (1) 实验二:中断实验 (4) 实验三:定时器中断实验 (6) 实验四:串行口实验 (9) 实验五:矩阵式键盘输入识别 (13) 实验六:LCD循环显示设计 (19) 第二部分单片机硬件实验............................错误!未定义书签。第一章试验箱系统概述 ...................................错误!未定义书签。 一、系统地址分配........................................... 错误!未定义书签。 二、系统接口定义........................................... 错误!未定义书签。 三、通用电路简介........................................... 错误!未定义书签。第二章实验指导...............................................错误!未定义书签。实验七P1口亮灯和P1口加法器实验........... 错误!未定义书签。实验八简单I/O口扩展(选作).................. 错误!未定义书签。实验九8255控制交通灯................................ 错误!未定义书签。实验十128*64LCD液晶显示 .......................... 错误!未定义书签。

第一部分单片机仿真实验 实验一:流水灯实验 一、实验目的: 通过对P3口地址的操作控制8位LED流水点亮,从而认识单片机的存储器。 二、实验原理图 实验参考电路图如下: 三、参考实验程序 //流水灯实验 #include //包含单片机寄存器的头文件 sfr x=0xb0; //P3口在存储器中的地址是b0H,通过sfr可定义8051内核单片机 //的所有内部8位特殊功能寄存器,对地址x的操作也就是对P1口的

单片机C语言程序设计实训100例--基于8051+PROTEUS仿真

《单片机C语言程序设计实训100例—基于8051+Proteus仿真》案例 第01 篇基础程序设计 01 闪烁的LED /* 名称:闪烁的LED 说明:LED按设定的时间间隔闪烁 */ #include<> #define uchar unsigned char #define uint unsigned int sbit LED=P1^0; .\r\n"); Puts_to_SerialPort("-------------------------------\r\n"); DelayMS(50); while(1) { Putc_to_SerialPort(c+'A'); DelayMS(100); Putc_to_SerialPort(' '); DelayMS(100); if(c==25) With PCB layout now offering automation of both component ", "can often be the most time consuming element of the exercise.", "And if you use circuit simulation to develop your ideas, ", "you are going to spend even more time working on the schematic." }; //显示缓冲(2行) uchar Disp_Buffer[32]; //垂直滚动显示 void V_Scroll_Display() { uchar i,j,k=0; uchar *p=Msg[0]; uchar *q=Msg[Line_Count]+strlen(Msg[Line_Count]); //以下仅使用显示缓冲的前16字节空间 while(p

单片机实验指导书

《单片机原理与应用》 实验指导书 注意: 1、做实验前必须预习 2、带教材和实验指导书 理工大学

自动化学院自动化系 实验仪的使用 本实例是仿真INTEL的8031单片机,来循环点亮P1口的发光二极管(低电平有效)。程序是用汇编语言来编写。下面介绍相应的操作步骤: 1、运行桌面“星研集成软件”,画面如下: 2、建立源文件 执行[主菜单? 文件? 新建],(或者点击图标)打开窗口。 选择存放源文件的目录,输入文件名,注意:一定要输入文件名后缀。对源文件编译、连接、生成代码文件时,系统会根据不同的扩展名启动相应的编译软件。比如:.ASM文件,使用A51来对它编译。本实例文件名为xunhuan.asm。窗口如下:

按“确定”即可。然后即出现文件编辑窗口: 输入源程序,参照实验一源程序。 这样一个源文件就建立好了。 3.编译、连接文件 首先选择一个源文件,然后可以编译、连接文件了。对文件编译,如果没有错误,再与库文件连接,生成代码文件(DOB、HEX文件)。编译、连接文件的方法有如下二种:(1)使用[ 主菜单? 项目? 编译、连接]或[主菜单? 项目? 重新编译、连接]”。(2)点击图标或来“编译、连接”或“重新编译连接”。编译、连接过程中产生的信息显示在信息窗的“建立”视中。编译没有错误的信息如下: 若有错误则出现如下信息框: 有错误、警告信息,用鼠标左键双击错误、警告信息或将光标移到错误、警告信息上,回车,系统自动打开对应的出错文件,并定位于出错行上。 这时用户可以作相应的修改,直到编译、连接文件通过。 4.调试 编译、连接正确后,可以开始调试程序。进入调试状态方法有: a)执行[ 主菜单? 运行? 进入调试状态] b)点击工具条的进入后的窗口如下:

相关文档
相关文档 最新文档