第1课-现代电子技术综合实验(2015春)-赵宏飞-20150504_第1页
第1课-现代电子技术综合实验(2015春)-赵宏飞-20150504_第2页
第1课-现代电子技术综合实验(2015春)-赵宏飞-20150504_第3页
第1课-现代电子技术综合实验(2015春)-赵宏飞-20150504_第4页
第1课-现代电子技术综合实验(2015春)-赵宏飞-20150504_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1指导教师:赵宏飞Email: 现代电子技术综合实验讲述内容:实验要求2实验平台介绍3基础知识及开发工具软件介绍4实验步骤与任务要求5考核办法及成绩构成6单片机简介(复习或自学)1(见“单片机简介”教学PPT)单片机定义单片机就是单片计算机(Single Chip Computer),在一块芯片上,它集成了中央处理器(CPU)、随机读写存储器(RAM,Random Access Memory)、只读存储器(ROM, Read Only Memory)、定时器/计数器(Timer/Counter)以及输入/输出(Input/Output)接口电路等计算机主要部件。单片机主要用于控制领域,目前国际

2、上统称微控制器(Microcontroller)。 虽然单片机只是一个芯片,但从组成与功能来看,具有计算机的主要特点1、单片机简介目前单片机生产厂家:Intel , Motorola, TI, Philips, Zilog, Rockwell, NEC, Siemens, Hitachi, Toshiba, Atmel等。单片机常用系列: Intel MCS-51 8位 单片机。 Intel MCS-96 16位单片机 。 Motorola MC68系列, 8位、16位单片机。 TI MSP430系列16位低功耗单片机。 Microchip的PIC系列RISC单片机。 单片机简介低速场合采用4

3、位单片机,高速场合采用16位、32位单片机甚至DSP。大部分应用场合仍采用8位单片机。Intel MCS-51 系列8位单片机,简称8051系列、51系列、80C51系列。8051系列单片机1980年由Intel公司推出,历久不衰。主要用于中小系统场合。90年代Intel公司将8051内核的使用权以专利形式转让给众多的集成电路制造商如Philips, Siemens, Atmel, TI, ADI等,发展出数百个品种的8051大家族。8051已成为单片机领域的实际标准,成为主流机型与教学首选机型。 80C51的引脚功能 图1-1 PDIP40封装80C51引脚布局图 2、实验要求熟悉单片机应用

4、系统设计与实现原理掌握开发工具KEIL C51的基本使用方法熟悉SOPC核心板与SMART SOPC实验平台的使用连接电路,编程调试,实现各部分的功能完成系统软件的编写与调试3、实验平台介绍PC机一台SMART SOPC实验箱一套SmartSOPC教学实验开发平台集众多功能于一体SOPC、DSP、EDA、ARM、ARM7 SOC以及MC8051教学实验平台采用“主板核心板”的模式,更换不同的核心板即可实验不同平台的功能。SmartSOPC相配套的基于MC8051单片机的SOPC核心板3、实验平台介绍SmartSOPC教学实验开发平台上,实验将采用众多功能于中的部分作为实验的构成内容。系统应用构

5、成示意框图4、基础知识及开发工具软件介绍基于MSC51系列的单片机基础知识应用于单片机编程的C51知识(见“单片机C语言程序设计”教学PPT)Keil C51德国知名软件公司Keil(现已并入ARM公司)开发的基于8051内核的微控制器软件开发平台,是目前开发8051内核单片机的主流编译工具。在计算机中有Keil C51 V7.09的评估版本。C语言与MCS-51单片机 简化具体组织、分配存储器资源和处理端口数据;在C语言编程中,根据单片机存储结构及内部资源定义相应的数据类型和变量。 C51包含的数据类型、变量存储模式、输入输出处理、函数等方面与标准的C语言有一定的区别。其它的语法规则、程序结

6、构及程序设计方法等与标准的C语言程序设计相同。 KEIL C51编译器能够识别的基本数据类型:基本数据类型长度取值范围unsigned char1字节0255signed char1字节-128+127unsigned int2字节065535signed int2字节-32768+32767unsigned long4字节04294967295signed long4字节-2147483648+2147483647float4字节1.175494E-383.402823E+38bit1位0或1sbit1位0或1sfr1字节0255sfr162字节065535存储器类型存储器类型是用于指明变量

7、所处的单片机的存储器区域情况。存储器类型与存储种类完全不同。C51编译器能识别的存储器类型有以下几种,见表所示。存储器类型描 述 data直接寻址的片内RAM低128B,访问速度快 bdata片内RAM的可位寻址区(20H2FH),允许字节和位混合访问 idata间接寻址访问的片内RAM,允许访问全部片内RAM pdata用Ri间接访问的片外RAM的低256B xdata用DPTR间接访问的片外RAM,允许访问全部64k片外RAM code程序存储器ROM 64k空间C51运算符算术运算符有:+ 加或取正值运算符- 减或取负值运算符 * 乘运算符/ 除运算符 % 取余运算符关系运算符: 大于=

8、 大于等于= 小于等于= = 等于!= 不等于 逻辑运算符:| 逻辑或& 逻辑与! 逻辑非位运算符有:& 按位与| 按位或 按位异或 按位取反 右移C51程序基本结构与相关语句if语句if语句是C51中的一个基本条件选择语句,它通常有三种格式:(1)if (表达式) 语句;(2)if (表达式) 语句1; else 语句2;(3)if (表达式1) 语句1;else if (表达式2) (语句2;)else if (表达式3) (语句3;)else if (表达式n-1) (语句n-1;)else 语句nC51程序基本结构与相关语句 switch/case语句if语句通过嵌套可以实现多分支结构

9、,但结构复杂。switch是C51中提供的专门处理多分支结构的多分支选择语句。它的格式如下:switch (表达式)case 常量表达式1:语句1;break;case 常量表达式2:语句2;break;case 常量表达式n:语句n;break;default:语句n+1;C51程序基本结构与相关语句for语句for(表达式1;表达式2;表达式3)语句; /*循环体*/for语句后面带三个表达式,它的执行过程如下:(1)先求解表达式1的值。(2)求解表达式2的值,如表达式2的值为真,则执行循环休中的语句,然后执行下一步(3)的操作,如表达式2的值为假,则结束for循环,转到最后一步。(3)若

10、表达式2的值为真,则执行完循环体中的语句后,求解表达式3,然后转到第四步。(4)转到(2)继续执行。(5)退出for循环,执行下面的一条语句。C51函数的使用函数定义的一般格式如下:函数类型 函数名(形式参数表) reentrantinterrupt musing n形式参数说明局部变量定义函数体前面部件称为函数的首部,后面称为函数的尾部,格式说明:1函数类型函数类型说明了函数返回值的类型。2函数名函数名是用户为自定义函数取的名字以便调用函数时使用。3形式参数表形式参数表用于列录在主调函数与被调用函数之间进行数据传递的形式参数。C51函数的使用 interrupt m是C51函数中非常重要的一

11、个修饰符,这是因为中断函数必须通过它进行修饰。在C51程序设计中,当函数定义时用了interrupt m修饰符,系统编译时把对应函数转化为中断函数,自动加上程序头段和尾段,并按MCS-51系统中断的处理方式自动把它安排在程序存储器中的相应位置。 在该修饰符中,m的取值为031,对应的中断情况如下:0外部中断01定时/计数器T02外部中断13定时/计数器T14串行口中断5定时/计数器T2其它值预留。C51函数的使用编写MCS-51中断函数注意如下:(1)中断函数不能进行参数传递,如果中断函数中包含任何参数声明都将导致编译出错。(2)中断函数没有返回值,如果企图定义一个返回值将得不到正确的结果,建

12、议在定义中断函数时将其定义为void类型,以明确说明没有返回值。(3)在任何情况下都不能直接调用中断函数,否则会产生编译错误。因为中断函数的返回是由8051单片机的RETI指令完成的,RETI指令影响8051单片机的硬件中断系统。如果在没有实际中断情况下直接调用中断函数,RETI指令的操作结果会产生一个致命的错误。(4)如果在中断函数中调用了其它函数,则被调用函数所使用的寄存器必须与中断函数相同。否则会产生不正确的结果。C51函数的使用一函数的调用 函数调用的一般形式如下: 函数名(实参列表); 对于有参数的函数调用,若实参列表包含多个实参,则各个实参之间用逗号隔开。 按照函数调用在主调函数中

13、出现的位置,函数调用方式有以下三种:(1)函数语句。把被调用函数作为主调用函数的一个语句。(2)函数表达式。函数被放在一个表达式中,以一个运算对象的方式出现。这时的被调用函数要求带有返回语句,以返回一个明确的数值参加表达式的运算。(3)函数参数。被调用函数作为另一个函数的参数。C51函数的使用二自定义函数的声明 在C51中,函数原型一般形式如下: extern 函数类型 函数名(形式参数表); 函数的声明是把函数的名字、函数类型以及形参的类型、个数和顺序通知编译系统,以便调用函数时系统进行对照检查。函数的声明后面要加分号。 如果声明的函数在文件内部,则声明时不用extern,如果声明的函数不在

14、文件内部,而在另一个文件中,声明时须带extern,指明使用的函数在另一个文件中。5、实验步骤与任务要求 实验步骤LED定时中断数码管按键温度采集电压采集通过简单的LED驱动实验熟习实验平台的使用和软件的操作。掌握定时中断的使用技巧,采用定时中断完成多个定时系统的设计与实现。掌握数码管动态扫描的原理和实现方法;掌握按键扫描及其处理的方法。掌握并熟习数字温度传感器与电压ADC的使用;掌握PWM驱动原理;完成最终实验内容。1)、程序开始后:当核心板上LED的D1D8只有第1个发光二极管亮时,同时第1个数码管显示数字1,其余显示- ;持续0.5秒之后,只有第2个发光二极管亮,同时第2个数码管显示数字

15、2,其余显示- ;再过0.5秒,只有第3个发光二极管亮,同时第3个数码管显示数字3,其余显示- ;间隔0.5秒后,只有第8个发光二极管亮,同时第8个数码管显示数字8,其余显示- 。此后进入循环状态。循环过程中,按按键进入任务2。2)、停止任务1中发光二极管显示,核心板上数码管的第1、2位显示学号最后二位,第4、5、6位显示 - 。第7、8位实现秒表功能,从5.0开始倒计时,计时到0.0后程序自动进入任务3.3)、核心板上数码管其余不显示,第6、7、8位显示三位电压值(0.002.49V),增减调节电压值,LED1亮度跟随变化。按按键进入任务1。实验任务要求(课堂作业):授课方式1、授课时间:周

16、1、周3周1上午10:2012:00周1晚上7:009:00周3晚上7:009:00课堂教学。1)实验内容、实验要求、实验平台等介绍2)系统原理及范例程序讲解。2、指导时间:除了公休日及上述课堂教学时间,每日早上9:0012:00,下午14:0017:00,晚上18:0021:00。3、考试时间:下周星期5晚上7:308:30,每场考试60分钟,考前要通过Email提交实验报告电子档。4、在上课的一周半时间内一直开放,学生可以在科A331、A333房间自主安排,独立完成实验内容;也可课后完成程序,在实验室调试,有问题可向值班教师请求帮助。开放式教学实验课程安排1)、第一次课之后,熟悉上面要求的

17、目录: D:/实验室资料/ SOPC_Quick51实验例程 下的实验例程:“点亮LED”。 在熟悉以上试验的基础上,掌握中断编程、蜂鸣器、数码管、按键、脉冲宽度调制(PWM)、I2C总线、串行ADC电压测试等应用的实现方法。2)、第二次课,讲述数码管静态显示及定时器和中断应用。3)、第三次课,讲述例程及其难点、综合实验内容的难点。注意:实验例程源代码以及原理图等学习资料位于计算机D盘下的“实验室资料”目录下:D:/实验室资料/ SOPC_Quick51实验例程D:/实验室资料/ SOPC_实验最新版/原理图要求必须掌握的实验有:“D:/实验室资料/ SOPC_Quick51实验例程”目录下:

18、 点亮LED; 简单的定时; 控制交流蜂鸣器发声; 数码管的动态扫描; 加减计数器; 用PWM波控制LED亮度; LM75A数字温度计; TLC549串行ADC。6、考核办法及成绩构成成绩构成:实验成绩40%+实验报告10%+考试成绩50%实验成绩:学生完成实验内容后提请考核,教师根据其完成的速度、质量以及学生对实验内容的阐述,综合考核满分40分。实验报告:满分10分,未提交者,视为放弃该课程。考试成绩:根据完成上机考试的速度和质量,最多不超过50分。实验内容提示1、定时器的使用实验中如何使用两个定时器实现多个定时任务将直接关系到实验内容的完成。一种办法是统计定时中断进入的次数乘以定时时间可以

19、获得新的一个时间长度;另外一个办法是采用软件延时的办法,但不易过多使用。还有一种软件定时器的实现方式需要掌握。2、数码管显示范例程序使用了ASCII码转换十进制再查表显示的方法,请你考虑简化显示程序,将字符串、指针、ASCII码转换等内容改为直接使用十进制查表的方式。会精简你的程序,并且编写简单,容易理解。实验内容提示 定时器+数码管显示练习内容1) LED+蜂鸣器,即试验2和3合并。 要求:点亮LED100ms,熄灭 LED 900ms;驱动蜂鸣器的方波频率1KHz; (先用两个定时器完成,再用一个定时器完成。)2) 数码管静态及动态显示 8个数码管显示如下: 第1、2个显示学号末尾两位数字

20、 第4、5个显示0059的秒表,每秒加1,循环。 第7、8个显示初值25,通过按键可以加减1,范围1630 第3、6个不显示。实验内容提示3、按键操作实验范例的按键操作灵敏度较高,但是缺点是循环识别按键影响了其他可能出现的并行操作流程,请你参照此按键程序设计自己的按键识别,注意:如果在该循环体内加入程序,且执行时间较长(例如长延时),将严重影响按键的灵敏度。4、电机驱动仔细阅读并理解PWM方式驱动电机的原理,注意如何设置脉宽调整电机转速。实验内容提示 数码管显示+按键+直流电机驱动练习内容1) 8个数码管显示如下:1、2显示学号最后两位4、5显示3059秒表7、8显示按键数值16-25,可以加减,按键按下响0.5s 按键数值和秒表数值的绝对差值改变电机转速2) 液晶静态及动态显示 可以自己尝试完成上述内容。实验内容提示5、SOPC核心板端口使用: 参考计算机目录: D:实验室资料SO

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论