一、课程性质
课程名称:单片机C51程序设计
课程代码:109025
学 时 数:84
其中课内实验学时数:34
学 分 数:6
适用专业: 应用电子技术、电子信息工程技术
二、课程教学目标
1、课程知识目标
掌握单片机基本原理,熟悉KEILL软件的使用,熟悉基于proteus软件的单片机的仿真方法,熟悉MCS-51的结构与应用设计方法,掌握C51结构与基本的程序设计方法,通过应用实例熟悉单片机C语言的在单片机应用设计中的用法。
2、课程技能目标
通过本课程的教学,要求学生初步具有用C语言进行单片机系统设计的能力。
3、职业能力目标
掌握电子产品设计的基本方法,能够以单片机作为核心进行电子产品的设计与开发。
三、课程内容
本课程由理论教学模块、实验教学模块两大模块组成。其中理论教学模块50学时、占60%,实践(含实验和实训)教学模块34学时,占40%。各教学模块如下:
1、理论教学模块
| 教学模块 | 模块结构 | 模块内容 | 教学方法手段 | 学时 |
| C51开发软件应用 | KEIL软件应用 | 1.KEIL51软件使用 | 仿真教学 | 2 |
| Proteus应用 | 2.Proteus软件使用 | 仿真教学 | 2 | |
| C51语言编程方法 | C51基础 | 3.数据类型 | 问题法 | 2 |
| 4.存储区域与存储模式 | 问题法 | 2 | ||
| 5.算术、赋值表达式 | 问题法 | 2 | ||
| 6.关系、条件表达式 | 问题法 | 2 | ||
| C51基本程序设计 | 7.基本语句与分支语句 | 案例教学 | 2 | |
| 8.循环语句与辅助语句 | 案例教学 | 2 | ||
| C51函数 | 9.基本函数与函数调用 | 案例教学 | 2 | |
| 10.标准库函数 | 案例教学 | 2 | ||
| 11.中断函数 | 案例教学 | 2 | ||
| C51数组和指针 | 12.一维数组与二维数组 | 案例教学 | 2 | |
| 13.指针 | 案例教学 | 2 | ||
| C51综合应用 | LED彩灯项目 | 14.单片机的中断系统 | 项目教学 | 2 |
| 15.外部中断的应用 | 项目教学 | 2 | ||
| 16.定时器的结构 | 项目教学 | 2 | ||
| 17.定时器应用 | 项目教学 | 2 | ||
| 电子打铃装置项目 | 18.串行通信原理 | 项目教学 | 2 | |
| 19.串行通信应用 | 项目教学 | 2 | ||
| 20.输入输出端口 | 项目教学 | 2 | ||
| 21.LED数码管显示器 | 项目教学 | 2 | ||
| 22.LED点阵显示器 | 项目教学 | 2 | ||
| 智能温度测控装置项目 | 23.液晶显示器 | 项目教学 | 2 | |
| 24.模数转换 | 项目教学 | 2 | ||
| 25.数模转换 | 项目教学 | 2 |
| 教学模块 | 模块内容 | 实验场所 | 教学方法手段 | 学时 |
| C51开发软件应用 | P1口亮灯 | 单片机实验室 | 项目教学 | 2 |
| C51语言编程方法 | P1口灯闪烁发亮 | 单片机实验室 | 项目教学 | 2 |
| 跑马灯 | 单片机实验室 | 项目教学 | 2 | |
| 分支程序设计 | 单片机实验室 | 项目教学 | 2 | |
| 键盘控制LED | 单片机实验室 | 项目教学 | 2 | |
| 交通信号灯控制 | 单片机实验室 | 项目教学 | 2 | |
| 数字密码锁 | 单片机实验室 | 项目教学 | 2 | |
| C51综合应用 | LED点阵 | 单片机实验室 | 项目教学 | 4 |
| LCD应用 | 单片机实验室 | 项目教学 | 4 | |
| 电子打铃装置 | 单片机实验室 | 项目教学 | 6 | |
| 智能温度测控装置 | 单片机实验室 | 项目教学 | 6 |
模块一 keil软件与proteus软件的使用
Keil软件是目前最流行开发MCS-51系列单片机的软件,这从近年来各仿真机厂商纷纷宣布全面支持Keil即可看出。Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部份组合在一起。掌握这一软件的使用对于使用51系列单片机的爱好者来说是十分必要的,如果你使用C语言编程,那么Keil几乎就是你的不二之选。Proteus ISIS是一款Labcenter出品的电路分析实物仿真系统,可仿真各种电路和IC,并支持单片机,元件库齐全,使用方便,是不可多得的专业的单片机软件仿真系统。该软件的特点:① 全部满足我们提出的单片机软件仿真系统的标准,并在同类产品中具有明显的优势。②具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS-232动态仿真、C调试器、SPI调试器、键盘和LCD系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。③ 目前支持的单片机类型有:68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各种外围芯片。④ 支持大量的存储器和外围芯片。总之该软件是一款集单片机和SPICE分析于一身的仿真软件,功能极其强大 ,可仿真51、AVR、PIC。
在本任务教学通过点亮一个发光二极管闪烁,来学习Keil和Proteus软件的使用。
教师采用边示范,学生跟着做的方法进行教学。
模块二、C51语言编程方法
本模块主要讲述C51语言数据类型及存储类型、C51语言对单片机主要资源的控制、C51语言的基本运算与流程控制语句、C51语言的构造数据类、C51语言函数C51语言程序设计的其他问题,使学生具有C51编程的基本能力。
本任务教学过程中采用4个子模块分解进行教学,并分小组进行讨论,程序设计、总结和考核。
1、 C51基础
掌握C51的各种数据类型的特点和使用方法;理解常量和变量的差异;理解C51数据存储类型与单片机存储器结构关系;理解51单片机硬件资源的C51定义及使用方法;掌握算术运算符、关系运算符、逻辑运算符、位操作运算符和自增减运算符的特点和典型应用。单片机的发展及特点,单片机的种类。
重点:C51数据类型;基本运算符的应用。
2、C51基本程序设计
掌握C51程序结构特点和典型程序结构;掌握选择语句if—else、if—else if—else、switch—case的语法特点;掌握典型分支结构程序设计和调试方法;掌握循环语句while、do—while、for的语法特点;掌握典型循环程序设计和调试方法。
重点:C51程序结构及语法特点;常用程序的设计和调试方法。
3、 C51函数定义及应用
掌握C51函数的分类及典型函数结构;掌握C51函数的定义及函数说明;掌握函数的参数传递及返回值的编写方法;掌握函数的调用方法及调用形式。
重点:C51函数结构;C51函数的调用。
4、 C51中数组与指针
理解C51中数组的基本概念及分类;理解一维数组、二维数组的定义及存储区域;掌握数组的典型应用程序设计方法;理解C51中指针的基本概念及分类;掌握指针的典型应用程序设计方法;
重点:数组与指针的典型应用程序设计。
模块三、C51综合应用
理解51系列单片机的中断系统;掌握中断服务程序中寄存器组的切换方法和中断服务程序的设计方法;掌握外部中断应用程序设计;掌握定时器/计数器硬件资源的应用;掌握定时器/计数器中断程序设计。了解常用接口芯片的逻辑功能;掌握系统扩展的总线结构;熟悉常用人机接口的设计方法。
1、 LED彩灯项目
通过单片机产品参观与讲解,介绍单片机应用特点、单片机应用系统的构成,以建立单片机应用系统的概念; 讲授 掌握典型 51单片机的内部逻辑结构、引脚功能; 51单片机内部数据存储器和程序存储器的结构;单片机的时钟和时序; 掌握单片机复位电路的设计。
通过循环彩灯项目制作,讲授掌握循环彩灯的构成和工作原理; 单片机最小系统的概念;延时程序、子函数、循环语句的概念及其设计;讲授Keil集成开发软件的使用;讲授掌握 编程器的使用。
本任务教学过程中要求在单片机实验板完成实际制作,并分小组进行讨论,程序设计、硬件调试、总结和考核。
2、电子打铃装置项目
通过电子打铃装置项目制作,讲授数码管静态和动态显示及接口;按键的输入和去抖;单片机输出接口;进一步掌握常用定时器、中断、串行口基本概念及其应用;程序设计方法和流程图的绘制、培养一定的程序阅读能力;单片机应用系统的软硬件设计;单片机应用系统开发的一般流程;仿真器的使用、单片机应用系统的仿真和调试。
本任务教学过程中要求制作实际电路板,并分小组进行分析讨论、查阅资料、程序设计、硬件制作与调试、总结和考核。
3、 智能温度测控装置项目
通过智能温度测控装置项目制作,讲授智能温度测控装置的组成和基本工作原理; 讲授A/D 转换的基本原理和芯片选型;A/D 芯片( ADC0809 )的结构、典型应用和相关硬件线路的设计和软件编程;D/A 转换的基本原理和芯片选型;D/A 芯片( DAC0832 )的结构、典型应用和相关硬件线路的设计和软件编程;单片机应用系统的软硬件设计的基本方法;单片机应用系统开发的一般流程;讲授 智能温度测控装置的硬件设计和调试;智能温度测控装置的软件设计和调试;智能温度测控装置的仿真和软硬件联调。
本任务教学过程中要求制作实际电路板,并分小组进行分析讨论、查阅资料、程序设计、硬件制作与调试、总结和考核。
五、考试(核)内容与方法
针对单片机C语言课程既有理论性,又有实践性的特点,我们变单一考核为复合考核,变静态考核为动态考核。重视对学生学习过程的考核,侧重考核学生对知识的融会贯通和灵活运用能力,考核手段多样化,有作品、报告、答辩等。
六、课程评价方案
本门课程的最终成绩是个人学习成绩(占60%)与团队学习小组成绩(占40%)之和。
个人学习成绩的评价(60%)方法采用期末考试(闭卷),主要考查学生的理论学习情况、基本概念、基本原理以及应用方法;
团队学习小组学习成绩评价(40%):按照LED彩灯、电子打铃装置、智能温度测控装置等三个项目的实际制作情况进行过程考核,按照如下方法对三个项目分别计分,并采用加权平均法得其分值。
1、学习小组实验报告(10%);
2、学习小组答辩情况(10%);
2、学习小组制作作品的评价(20%);
3、在以上团队分数的基础上,按以下方法计算每个人的团队分数:
个人团队分数=团队分数×个人在团队学习中的表现系数;
个人在团队中的表现系数计算方法如下:
由各个学习小组根据每个人在团队学习中的表现以及对团队学习的贡献给出,系数值在0-1之间。
七、课程资源
1、主讲教师基本情况
黄建科,男,1972年出生,副教授,电子信息教研室主任,湖南大学控制工程硕士,湖南省青年骨干教师,省电子技术技能鉴定专家委员会副秘书长。主要从事电子技术与自动控制的教学与研究工作,主持课题1个,主持院级精品课程1门,参与省部级课题8个;共发表论文10多篇,其中核心期刊3篇,主编参编教材2本。设计开发了湖南浏阳河机械公混泥土泵车的电气控制系统,设计开发了深圳世芯微电子公司LED屏驱动控制器,完成了长沙市扬子冶金厂电弧炉电极调节系统的电气改造工作。指导学生参加全国技能大赛获国家二等奖和湖南省技能竞赛一等奖。
2、教学资料
(1)、主要教学参考书:
《单片机C语言设计实例精讲》,戴佳等编著,电子工业出版社,2008年12月第二版。
《单片机C语言编程与实例》,赵亮等编著,人民邮电出版社,2003年9月第二版。
《新概念51单片机C语言教程》,郭天祥编著,电子工业出版,2009年3月第一版。
《单片机C语言编程与实践》,丁向荣编著,电子工业出版社,2009年8月
《单片机C语言教程》,邹益民编著,中国石化出版社,2010年1月
《单片机应用技术(C语言版)》,王静霞编著,电子工业出版社,2009年5月
《单片机C语言开发技术》,龚运新编著,清华大学出版社,2006年10月
《单片机的C语言应用程序设计》,马忠梅编著,北京航空航天大学出版社 2003年1月第三版
《MCS-51单片机原理与应用(C语言版)》,闫玉德,机械工业出版社,2004年7月
《单片机原理及应用—C语言程序设计与实现》,马斌,人民邮电出版社,2009年10月
《单片机应用开发技术:基于Proteus单片机仿真和C语言编程》,瓮嘉民 编著,中国电力出版社,2010年1月
(2)、主要参考网站
课程学习网站: 湖南生物机电职业技术学院单片机C51程序设计精品课程网站
资料(PDF芯片)查询类网站:
IC/PDF查询 http://www.21icsearch.com
电子元器件查询 http://www.chinadz.com/
IC/PDF查询 http://www.ic37.com/
电子技术文章资源下载类
21IC http://www.21IC.COM
老古开发网 http://www.laogu.com
网易电器 http://co.163.com/index_dq.htm
中国PCB技术网 http://www.pcbtech.net/
电子论坛
21IC社区 http://bbs.21ic.com
电子产品世界论坛 http://forum.eepw.com.cn
中电网技术论坛 http://bbs.eccn.com/
中国PCB论坛 http://www.pcbbbs.com/index.htm
电子工程博客
中国电子工程博客 http://www.mcublog.com/blog
21IC博客 http://blog.21ic.com
工控博客 http://blog.gkong.com/
电源网博客 http://www.dianyuan.com/blog/
单片机类
单片机平凡网 http://www.mcustudio.com
单片机 http://www.51.com/
周立功单片机 http://www.zlgmcu.com/home.asp下载本文