080902《单片机C程序设计》实验指导书.docx
- 文档编号:8016148
- 上传时间:2023-01-28
- 格式:DOCX
- 页数:22
- 大小:299.32KB
080902《单片机C程序设计》实验指导书.docx
《080902《单片机C程序设计》实验指导书.docx》由会员分享,可在线阅读,更多相关《080902《单片机C程序设计》实验指导书.docx(22页珍藏版)》请在冰豆网上搜索。
080902《单片机C程序设计》实验指导书
广东机电职业技术学院自编教材
《单片机C程序设计》
指导书
李建波、万加富主编
高立新、查鸿山主审
计算机与信息工程系
2009年1月
前言
学生情况分析:
电子0807、0808和控制0805,一年级学生,上学期学习了计算机基础,约1/3学生有计算机;本学期开始学习模拟电子技术和数字电子技术。
总的来讲,对计算机操作不很熟练,对电子知识处于入门阶段。
本学期开设的“单片机C程序设计”为54学时,主要是以一个刚走出学校、走向工厂的小王,经历了低级阶段、中级阶段、高级阶段三个阶段,每个阶段分三个设计,分阶段分层次提高水平的过程。
“单片机C程序设计”是分析现实中的场景,用数学语言描述,最后表达为计算机指令,从而形成智能电子产品的课程。
“‘单片机C程序设计’活动导向智能电子产品设计指导书”则在课程总体指导下指导学生理解场景,安装、调试和操作仪器、设备,观察和分析实验现象,处理试验数据、分析实验结果和完成实验报告等各方面综合能力,以及培养严谨求实的工作作风和加深对理论知识的理解、拓展知识面的重要手段。
在含有产品设计的课程教学大纲中,都含有产品设计部分,规定有产品设计软硬件环境、序号、产品设计名称、要求、周次安排和学时数等内容。
对于含有产品设计的课程,都配有相应的教材,使产品设计环节能够得到有效的落实。
1、必须按照教学大纲的要求,完成应做的(至少是必做的)全部产品设计。
未完成产品设计或产品不合格者,不能取得该课程的学分。
2、应在能达到教学要求的实验室进行,对于暂时确无条件完成的实验,可以用在计算机上进行模拟实验代替。
3、产品设计应尽量与该门课程的理论教学同步进行。
目录
工学结合任务1、显示自己的工号(=)5
工学结合任务2、两点控制1个灯(if)7
工学结合任务3、红绿灯电路或定时炸弹的设计(while)9
工学结合任务4、设计霓虹灯(数组)12
工学结合任务5、带数字显示的红绿灯电路(for)14
工学结合任务6、设计8路抢答器(switch)17
工学结合任务7、设计光控灯(光敏元件、函数)20
工学结合任务8、设计声控灯(咪头、喇叭)22
工学结合任务9、设计水位控制器(传感器、水泵)24
工学结合任务1、显示自己的工号(=)
一任务说明
初级阶段。
小王刚到设计单位,需要进行硬件知识和软件知识的简单测试,设计显示自己的工号,实现这个功能证明自己可以用单片机C程序开发电子产品。
二需要的知识点、硬件、环境
1任务需要的软件知识:
C程序构成、关键词goto、运算符与表达式=、数据结构char、结构化语句loop1:
gotoloop1。
2任务需要的硬件:
单片机芯片、数码管显示设备
3任务需要的环境:
安装操作系统的微机1台、单片机集成开发环境keilC2.0、软硬件开发平台proteus6.9、单片机下载软件STC_ISP_V3.3、单片机产品硬件电路。
三硬件电路
Category,Reference,Value
ICircuits,"U1",AT89C51
Diodes,"D1",
Diodes,"D2",
四软件编程
#include
main()
{
loop1:
P2=0x66;
P3=0x4f;
gotoloop1;
}
五步骤
1进行功能分析,工作框架搭建,工作分工。
2使用单片机集成开发环境keilC2.0。
要点:
C程序构成,关键词,运算符与表达式,数据结构,结构化语句。
●新建文件夹
●新建项目
●新建文件
●添加文件到项目
●编辑C程序
●编译生成“.hex”文件
3使用软硬件开发平台proteus6.9。
本次设计要点:
数码管的引脚配置。
●新建电路图设计文件
●查找元器件
●放置元器件
●布局布线
●修改元器件属性
●进行仿真单片机程序
工学结合任务2、两点控制1个灯(if)
一任务说明
初级阶段。
在本阶段小王有个任务,需要在多个地点(2个)对1个灯进行开和关的控制,实现这个功能证明自己具备了单片机C程序开发能力。
二需要的知识点、硬件、环境
1任务需要的软件知识:
C程序构成、关键词(goto、if)、运算符与表达式==、数据结构char、结构化语句if(){}。
2任务需要的硬件:
单片机芯片、数码管显示设备、微动开关。
3任务需要的环境:
安装操作系统的微机1台、单片机集成开发环境keilC2.0、软硬件开发平台proteus6.9、单片机下载软件STC_ISP_V3.3、单片机产品硬件电路。
三硬件电路
四软件编程
#include
sbitRain=P1^3;
main()
{
P2=0x00;
loop1:
if(Rain==1)P2=0x06;
elseP2=0x5b;
gotoloop1;
}
五步骤
1进行功能分析,工作框架搭建,工作分工。
2使用单片机集成开发环境keilC2.0。
要点:
C程序构成,关键词,运算符与表达式,数据结构,结构化语句。
●新建文件夹
●新建项目
●新建文件
●添加文件到项目
●编辑C程序
●编译生成“.hex”文件
3使用软硬件开发平台proteus6.9。
本次设计要点:
数码管的引脚配置。
●新建电路图设计文件
●查找元器件
●放置元器件
●布局布线
●修改元器件属性
●进行仿真单片机程序
工学结合任务3、红绿灯电路或定时炸弹的设计(while)
一任务说明
初级阶段。
在本阶段小王有个任务,设计个定时电路,当执行某个动作需要10s,执行下一个动作需要5s,类似红绿灯、定时炸弹等,实现这个功能证明自己具备了单片机C程序开发能力。
二需要的知识点、硬件、环境
1任务需要的软件知识:
C程序构成、关键词(goto、while)、运算符与表达式==、数据结构(char、数组)、结构化语句while(){}。
2任务需要的硬件:
单片机芯片、多个发光二极管、。
3任务需要的环境:
安装操作系统的微机1台、单片机集成开发环境keilC2.0、软硬件开发平台proteus6.9、单片机下载软件STC_ISP_V3.3、单片机产品硬件电路。
三硬件电路
Category,Reference,Value
Resistors,"R1",200
Resistors,"R2",200
Resistors,"R3",200
ICircuits,"U1",AT89C51
Diodes,"D1",RED
Diodes,"D2",YELLOW
Diodes,"D3",GREEN
四软件编程
#include
unsignedlonginti;
main()
{
loop1:
i=;while(i--){P2=0xdf;}
i=40000;while(i--){P2=0xbf;}
i=;while(i--){P2=0x7f;}
gotoloop1;
}
五步骤
1进行功能分析,工作框架搭建,工作分工。
2使用单片机集成开发环境keilC2.0。
要点:
C程序构成,关键词,运算符与表达式,数据结构,结构化语句。
●新建文件夹
●新建项目
●新建文件
●添加文件到项目
●编辑C程序
●编译生成“.hex”文件
3使用软硬件开发平台proteus6.9。
本次设计要点:
数码管的引脚配置。
●新建电路图设计文件
●查找元器件
●放置元器件
●布局布线
●修改元器件属性
●进行仿真单片机程序
6.3提高
●显示数字0~9,相隔时间1s。
#include
unsignedlonginti;
main()
{
loop1:
i=20000;while(i--){P2=0x3f;}//0
i=20000;while(i--){P2=0x06;}//1
i=20000;while(i--){P2=0x5b;}//2
i=20000;while(i--){P2=0x4f;}//3
i=20000;while(i--){P2=0x66;}//4
i=20000;while(i--){P2=0x6d;}//5
i=20000;while(i--){P2=0x7d;}//6
i=20000;while(i--){P2=0x07;}//7
i=20000;while(i--){P2=0x7f;}//8
i=20000;while(i--){P2=0x6f;}//9
gotoloop1;
}
工学结合任务4、设计霓虹灯(数组)
一任务说明
中级阶段。
在本阶段小王有个任务,设计霓虹灯电路,8发光设备,可以自动闪亮,实现这个功能证明自己具备了单片机C程序开发能力。
二需要的知识点、硬件、环境
1任务需要的软件知识:
C程序构成、关键词(goto、while)、运算符与表达式==、数据结构(char、数组)、结构化语句for(i=0;i<50000;i++)。
2任务需要的硬件:
单片机芯片、多个发光二极管、。
3任务需要的环境:
安装操作系统的微机1台、单片机集成开发环境keilC2.0、软硬件开发平台proteus6.9、单片机下载软件STC_ISP_V3.3、单片机产品硬件电路。
三硬件电路
类别名称属性
Category,Reference,Value
Diodes,"D1",LED-BARGRAPH-GR
ICircuits,"U2",AT89C51
四软件编程
#include
unsignedcharled[6]={
0x81,0x42,0x24,0x18,0x24,0x42};//10000001
unsignedinti;
main()
{
loop1:
i=10000;while(i--){P2=led[0];}
i=10000;while(i--){P2=led[1];}
i=10000;while(i--){P2=led[2];}
i=10000;while(i--){P2=led[3];}
i=10000;while(i--){P2=led[4];}
i=10000;while(i--){P2=led[5];}
gotoloop1;
}
五步骤
1进行功能分析,工作框架搭建,工作分工。
2使用单片机集成开发环境keilC2.0。
要点:
C程序构成,关键词,运算符与表达式,数据结构,结构化语句。
●新建文件夹
●新建项目
●新建文件
●添加文件到项目
●编辑C程序
●编译生成“.hex”文件
3使用软硬件开发平台proteus6.9。
本次设计要点:
数码管的引脚配置。
●新建电路图设计文件
●查找元器件
●放置元器件
●布局布线
●修改元器件属性
●进行仿真单片机程序
工学结合任务5、带数字显示的红绿灯电路(for)
一任务说明
中级阶段。
在本阶段小王有个任务,设计个带时间显示的红绿灯产品,提高人性化设计,实现这个功能证明自己具备了单片机C程序开发能力。
二需要的知识点、硬件、环境
1任务需要的软件知识:
C程序构成、关键词(goto、for)、运算符与表达式==、数据结构char、结构化语句for(i=0;i<50000;i++)。
2任务需要的硬件:
单片机芯片、发光二极管、微动开关。
3任务需要的环境:
安装操作系统的微机1台、单片机集成开发环境keilC2.0、软硬件开发平台proteus6.9、单片机下载软件STC_ISP_V3.3、单片机产品硬件电路。
三硬件电路
Category,Reference,Value
Resistors,"R1",200
Resistors,"R2",200
Resistors,"R3",200
IntegratedCircuits,"U1",AT89C51
Diodes,"D1",YELLOW3
Diodes,"D2",GREEN3
Diodes,"D3",RED3
四软件编程
#include
sbitRED=P1^5;
sbitGREEN=P1^6;
sbitYELLOW=P1^7;
unsignedlonginti;
unsignedcharx;
unsignedcharnum;
unsignedcharseg[10]={0x3f,0x06,0x5b,0x4f,0x66,//01234
0x6d,0x7d,0x07,0x7f,0x6f};//56789
main()
{
loop1:
RED=0;GREEN=1;YELLOW=1;
for(num=10;num>0;num--)
{
i=50000;while(i--);
P2=seg[num/10];
P3=seg[num%10];
}
gotoloop1;
}
五步骤
1进行功能分析,工作框架搭建,工作分工。
2使用单片机集成开发环境keilC2.0。
要点:
C程序构成,关键词,运算符与表达式,数据结构,结构化语句。
●新建文件夹
●新建项目
●新建文件
●添加文件到项目
●编辑C程序
●编译生成“.hex”文件
3使用软硬件开发平台proteus6.9。
本次设计要点:
数码管的引脚配置。
●新建电路图设计文件
●查找元器件
●放置元器件
●布局布线
●修改元器件属性
●进行仿真单片机程序
工学结合任务6、设计8路抢答器(switch)
一任务说明
中级阶段。
在本阶段小王有个任务,设计个多个地点(2个以上)进行抢答的设备,满足显示抢答成功者号码的功能,实现这个功能证明自己具备了单片机C程序开发能力。
二需要的知识点、硬件、环境
1任务需要的软件知识:
C程序构成、关键词(goto、switch、break)、运算符与表达式==、数据结构char、结构化语句switch(){case:
break}。
2任务需要的硬件:
单片机芯片、数码管显示设备、微动开关。
3任务需要的环境:
安装操作系统的微机1台、单片机集成开发环境keilC2.0、软硬件开发平台proteus6.9、单片机下载软件STC_ISP_V3.3、单片机产品硬件电路。
三硬件电路
四软件编程
#include
sbitS0=P1^0;
sbitS1=P1^1;
sbitS2=P1^2;
sbitS3=P1^3;
sbitS4=P1^4;
sbitS5=P1^5;
sbitS6=P1^6;
sbitS7=P1^7;
unsignedcharch;
unsignedcharseg[10]={0x3f,0x06,0x5b,0x4f,0x66,//01234
0x6d,0x7d,0x07,0x7f,0x6f};//56789
main()
{
P2=0x00;
while(S7==1);
while(S7==0);
loop1:
ch=P1;
switch(ch)
{//76543210
case0xfe:
P2=seg[0];break;//11111110
case0xfd:
P2=seg[1];break;//11111101
case0xfb:
P2=seg[2];break;//11111011
case0xf7:
P2=seg[3];break;//11110111
case0xef:
P2=seg[4];break;
case0xdf:
P2=seg[5];break;
case0xbf:
P2=seg[6];break;
default:
break;
}
gotoloop1;
}
五步骤
1进行功能分析,工作框架搭建,工作分工。
2使用单片机集成开发环境keilC2.0。
要点:
C程序构成,关键词,运算符与表达式,数据结构,结构化语句。
●新建文件夹
●新建项目
●新建文件
●添加文件到项目
●编辑C程序
●编译生成“.hex”文件
3使用软硬件开发平台proteus6.9。
本次设计要点:
数码管的引脚配置。
●新建电路图设计文件
●查找元器件
●放置元器件
●布局布线
●修改元器件属性
●进行仿真单片机程序
工学结合任务7、设计光控灯(光敏元件、函数)
一任务说明
高级阶段。
在以前的设计中,很少涉及到传感器、继电器,设计水平比较低级,目前小王接到了第1个需要传感器的设计任务:
根据光线强弱开灯关灯,光线强的时候关灯,光线弱则开灯。
实现这个功能证明自己具备了较高的单片机C程序开发能力。
二需要的知识点、硬件、环境
1任务需要的软件知识:
C程序构成、关键词(goto、if)、运算符与表达式==、数据结构char、结构化语句if(){}。
2任务需要的硬件:
单片机芯片、继电器、灯、传感器、比较器。
3任务需要的环境:
安装操作系统的微机1台、单片机集成开发环境keilC2.0、软硬件开发平台proteus6.9、单片机下载软件STC_ISP_V3.3、单片机产品硬件电路。
三硬件电路
四软件编程
#include
sbitGuang=P1^0;
sbitLamp=P3^7;
main()
{
loop1:
if(Guang==1)Lamp=0;
elseLamp=1;
gotoloop1;
}
五步骤
1进行功能分析,工作框架搭建,工作分工。
2使用单片机集成开发环境keilC2.0。
要点:
C程序构成,关键词,运算符与表达式,数据结构,结构化语句。
●新建文件夹
●新建项目
●新建文件
●添加文件到项目
●编辑C程序
●编译生成“.hex”文件
3使用软硬件开发平台proteus6.9。
本次设计要点:
数码管的引脚配置。
●新建电路图设计文件
●查找元器件
●放置元器件
●布局布线
●修改元器件属性
●进行仿真单片机程序
工学结合任务8、设计声控灯(咪头、喇叭)
一任务说明
高级阶段。
小王接到了第2个需要传感器的设计任务:
根据声音开灯,晚上有人走动时候开灯(达到人性化设计目的),大约10s后关灯(达到节能目的)。
实现这个功能证明自己具备了较高的单片机C程序开发能力。
二需要的知识点、硬件、环境
1任务需要的软件知识:
C程序构成、关键词(goto、if、while)、运算符与表达式==、数据结构char、结构化语句(if(){}、while(){})。
2任务需要的硬件:
单片机芯片、继电器、灯、传感器、比较器。
3任务需要的环境:
安装操作系统的微机1台、单片机集成开发环境keilC2.0、软硬件开发平台proteus6.9、单片机下载软件STC_ISP_V3.3、单片机产品硬件电路。
三硬件电路
四软件编程
#include
sbitShen=P1^0;
sbitLamp=P3^7;
bitShen_flag=0;
unsignedcharnum;
unsignedlonginti;
unsignedcharseg[10]={0x3f,0x06,0x5b,0x4f,0x66,//01234
0x6d,0x7d,0x07,0x7f,0x6f};//56789
main()
{
loop1:
if(Shen==1)Shen_flag=1;
if(Shen_flag==1)
{
Shen_flag=0;
Lamp=0;
for(num=9;num>0;num--)
{
i=10000;while(i--){P2=~seg[num];}
}
Lamp=1;
P2=0xff;
}
gotoloop1;
}
五步骤
1进行功能分析,工作框架搭建,工作分工。
2使用单片机集成开发环境keilC2.0。
要点:
C程序构成,关键词,运算符与表达式,数据结构,结构化语句。
●新建文件夹
●新建项目
●新建文件
●添加文件到项目
●编辑C程序
●编译生成“.hex”文件
3使用软硬件开发平台proteus6.9。
本次设计要点:
数码管的引脚配置。
●新建电路图设计文件
●查找元器件
●放置元器件
●布局布线
●修改元器件属性
●进行仿真单片机程序
工学结合任务9、设计水位控制器(传感器、水泵)
一任务说明
高级阶段。
小王接到了需要自制传感器的设计任务:
根据水位控制水泵的启动和停止,当水位高于A点时停止,低于B点则运行,低于C点则报警。
设计合理的水位传感器。
并实现这个功能证明自己具备了较高的单片机C程序开发能力。
二需要的知识点、硬件、环境
1任务需要的软件知识:
C程序构成、关键词(goto、if、while)、运算符与表达式==、数据结构char、结构化语句(if(){}、while(){})。
2任务需要的硬件:
单片机芯片、继电器、水泵、传感器、比较器。
3任务需要的环境:
安装操作系统的微机1台、单片机集成开发环境keilC2.0、软硬件开发平台proteus6.9、单片机下载软件STC_ISP_V3.3、单片机产品硬件电路。
三硬件电路
四软件编程
#include
sbitA_shuiwei=P1^0;
sbitB_shuiwei=P1^1;
sbitC_shuiwei=P1^2;
sbitAlaram=P3^6;
sbitBeng=P3^7;
voiddelay()
{
unsignedinti=10;
while(i--);
}
main()
{
loop1:
if(A_shuiwei==1)Beng=1;
if(B_shuiwei==1)Beng=0;
if(C_shuiwei==1)
{
delay();Alaram=0;
delay();Alaram=1;
}
gotoloop1;
}
五步骤
1进行功能分析,工作框架搭建,工作分工。
2使用单片机集成开发环境keilC2.0。
要点:
C程序构成,关键词,运算符与表达式,数据结构,结构化语句。
●新建文件夹
●新建项目
●新建文件
●添加文件到项目
●编辑C程序
●编译生成“.hex”文件
3使用软硬件开发平台proteus6.9。
本次设计要点:
数码管的引脚配置。
●新建电路图设计文件
●查找元器件
●放置元器件
●布局布线
●修改元器件属性
●进行仿真单片机程序
附录:
元器件清单
Category,R
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机C程序设计 080902 单片机 程序设计 实验 指导书