单片机常见课程设计题目.docx

上传人:b****5 文档编号:4611204 上传时间:2022-12-07 格式:DOCX 页数:17 大小:1.50MB
下载 相关 举报
单片机常见课程设计题目.docx_第1页
第1页 / 共17页
单片机常见课程设计题目.docx_第2页
第2页 / 共17页
单片机常见课程设计题目.docx_第3页
第3页 / 共17页
单片机常见课程设计题目.docx_第4页
第4页 / 共17页
单片机常见课程设计题目.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

单片机常见课程设计题目.docx

《单片机常见课程设计题目.docx》由会员分享,可在线阅读,更多相关《单片机常见课程设计题目.docx(17页珍藏版)》请在冰豆网上搜索。

单片机常见课程设计题目.docx

单片机常见课程设计题目

D1-基于单片机的数字电压表设计

D2-基于单片机的智能电压表设计(温度检测器)

D3-基于单片机的LED流水灯系统设计

D4-基于单片机的智能船模设计

D5-基于单片机的电梯控制模型设计

D6-基于单片机的水位控制系统设计

D7-基于单片机的水位控制系统设计(STC89—51型)

D8-基于单片机的多路数据采集系统设计

D9-基于单片机的抢答器设计

D10-基于单片机的数字温度计设计

D11-基于单片机的智能小车设计

D12-基于单片机的数字温度计设计

D13-基于单片机的遥控器设计

D14-基于单片机的串行通信发射机设计

D15-基于单片机的简易智能电动车设计

D16-基于单片机的太阳能热水器控制器设计

>>>>>>>>>>>>>>>>>憋疯的分割线<<<<<<<<<<<<<<<<<

D17-基于单片机的太阳能热水器控制器设计

D18-MCS-51单片机温度控制系统的设计

D19-直流电动机的转速检测与脉宽调速

D20-基于单片机的智能机器人的设计

D21-基于单片机的简易无线竞赛系统的设计

D22-基于单片机的车辆闯红灯监控系统设计(89C51)

D23-基于单片机控制的井下瓦斯监控系统设计

D24-基于单片机的煤气泄漏检测报警装置设计

D25-基于单片机的井式渗碳炉控制系统设计

D26-基于单片机的蔬菜大棚温湿度智能控制系统设计

D27-基于单片机的电子钟设计

D28-基于单片机的电力线载波节电群控设计

D29-基于单片机的液位控制器设计(8051)

D30-基于单片机的串行通信发射机设计(版本2)

D31-基于单片机的智能八路抢答器设计(AT89C2051)

D32-基于单片机的水位监控器设计(STC12C2052AD)

D33-基于单片机的点阵电子显示屏设计(版1)

D34-基于单片机的智能温度控制系统设计

D35-基于单片机的智能时钟控制器设计

D36-基于单片机的智能温控系统设计(版本1)

D37-基于单片机的智能寻迹避障小车设计

D38-基于单片机的家用太阳能热水器控制器设计

D39-基于单片机的新型抢答计分器设计

D40-基于单片机的热敏电阻测温系统设计

>>>>>>>>>>>>>>>>>憋疯的分割线<<<<<<<<<<<<<<<<<

D41-基于单片机的林火监测系统-飞艇姿态控制系统设计

D42-基于单片机的人性化时钟控制器设计

D43-基于单片机的智能型电话远程遥控器设计

D44-基于单片机的远程通讯控制器设计

D45-基于单片机的温度控制器设计

D46-基于单片机的智能水位控制器设计

D47-基于单片机的水位控制系统设计(版本1)

D48-基于单片机的智能电动小车设计 

D49-基于单片机的数码电子时钟设计 

D50-基于单片机的数控直流电源设计 

D51-基于单片机的交通灯控制器设计 

D52-基于单片机的数字温度计设计(STC89C51) 

D53-基于单片机的智能小车设计 

D54-基于单片机的温度控制器设计 

>>>>>>>>>>>>>>>>>憋疯的分割线<<<<<<<<<<<<<<<<<

D55-基于单片机的串行通信发射机设计(版本3) 

D56-基于单片机的温度控制系统设计(版本1) 

D57-基于单片机的交通灯控制系统设计 

D58-基于单片机的电子万年历设计 

D59-基于单片机的水位控制器设计 

D60-基于单片机的水位控制系统设计(版本2) 

D61-基于单片机的数据采集器设计 

D62-基于单片机的水位控制系统设计(版本3) 

D63-基于单片机的电梯控制系统设计 

D64-基于单片机的智能温控系统设计(版本2) 

D65-基于单片机的温度控制系统设计(版本2) 

D66-基于单片机的数据采集与传输系统设计 

D67-基于单片机的交通灯控制系统设计(版本1) 

D68-基于单片机的交通灯控制系统设计(版本2) 

D69-基于单片机的红外防盗报警器设计 

D70-基于单片机的花卉温室控温系统设计 

D71-基于单片机的焊机温度控制系统设计(89C51)(版式一)

D72-基于单片机的焊机温度控制系统设计(版式二)

D73-基于单片机的路灯控制器设计

D74-基于单片机技术的水位控制器设计(8051)

D75-基于单片机的车床刀架控制系统设计(MCS-51)

D76-基于单片机的电机智能综合保护装置设计

D77-基于单片机的水位控制器设计(STC89C51)

D78-基于单片机的水位控制器设计(STC89C51+水泵)

D79-基于单片机技术的自动停车器的设计

D80-基于ARM的嵌入式图形用户界面设计

>>>>>>>>>>>>>>>>>憋疯的分割线<<<<<<<<<<<<<<<<<

D81-基于单片机的太阳能热水器控制器设计(版本3)

D82-基于单片机的太阳能热水器控制器设计(版本4)

D83-基于单片机的智能型矿用磁力启动器设计(PIC16F877A单片机)

D84-基于单片机的无氧退火炉温控系统设计(8031)

D85-基于单片机的电厂锅炉过热蒸汽温度监测系统设计(MCS-51)

D86-基于单片机的摩托车里程表研制

D87-基于PIC16F84单片机的IC卡智能水表设计

D88-基于单片机的自动车库门的设计

D89-基于单片机的自动滴灌控制系统的设计

D90-基于单片机的预付费电度表设计

D91-基于单片机的智能电子秤设计

D92-基于单片机的太阳能热水器智能控制器设计

D93-基于单片机的油井巡视定位系统设计

D94-基于单片机的照明控制系统

D95-基于单片机的水位测试系统中数据采集电路设计

D96-基于单片机的锅炉液位控制系统设计

D97-基于单片机的洗衣机设计

D98-基于单片机的锅炉汽包水位控制系统设计

D99-基于单片机的多功能秒表设计

D100-基于单片机的GSM网数据传输设计与实现

D101-锅炉燃烧微机DDC控制系统(含组态)

D102-在单片机上实现USB移动存储

51单片机交通灯protues仿真

1.按键可以选择正常模式和夜间模式

2.按键可以选择正常模式和紧急模式

原理图和仿真效果如下:

 

  南北红灯模式

 

 南北黄灯模式

 南北绿灯模式

程序如下:

 

#include

#defineuintunsignedint

#defineucharunsignedchar

ucharnum;//定时器T0计数变量

ucharnum1;//定时器T1计数变量

ucharkey1num;

ucharkey2num;

ucharkey3num;

uchartemp;//南北时间变量

uchartemp1;//东西时间变量

//ucharflagS1; //状态一标志位

ucharflagS2; //状态二标志位

ucharflagS3; //状态三标志位

ucharflagS4; //状态四标志位

ucharkey1flag;

ucharkey2flag;

ucharkey3flag;

ucharflag;

ucharflag1;

disp[]={11,3,8}; //南北显示时间数值

disp1[]={14,5,3};//东西显示时间数值

uchari;

ucharcodesmg_dm[]={

0x3f,0x06,0x5b,0x4f,

0x66,0x6d,0x7d,0x07,

0x7f,0x6f,0x77,0x7c,

0x39,0x5e,0x79,0x71,};//数码管段码数组

ucharcodesmg_wm[]={

0x0f,0x1f,0x2f,0x3f,

0x4f,0x5f,0x6f,0x7f,};//数码管位码数组

////////指示灯位定义//////////////

sbitNS_R=P0^0; //南北走向红灯

sbitNS_Y=P0^1; //南北走向黄灯

sbitNS_G=P0^2; //南北走向绿灯

sbitEW_R=P0^3; //东西走向红灯

sbitEW_Y=P0^4; //东西走向黄灯

sbitEW_G=P0^5; //东西走向绿灯

sbitkey3=P3^2;//设置键

sbitkey2=P3^3;//紧急键 切换正常南北紧急东西紧急三种状态

sbitkey1=P3^4;//模式切换键切换正常模式夜间模式

/////////子函数声明//////////////

voidinit();//初始化

voiddelay_ms(uintz);//延时ms级

/////////////////////////////////

voidsmg();//数码管显示

/////////////////////////////////

voidkey();//按键函数

/////////////////////////////////

voidS0();//初始状态

voidS1();//状态1函数

voidS2();//状态2函数

voidS3();//状态3函数

voidS4();//状态4函数 构成一个正常显示的循环

//////////////////////////////////

voidyejian();

voidzhengchang();

voidnaibeijinji();

voiddongxijinji();

////////////主程序///////////////

voidmain()

{

  init();

//flagS1=1;//进入状态下

temp=disp[i];//取初值

temp1=disp1[i];//取初值

  S0();

TR0=1;

while

(1)

{

 key();

 if(flag==1)

 {   

 if(key2flag==1)

 {

 naibeijinji();

 TR0=0;

 num=0; ///////////////////////////////调试

 }

 elseif(key2flag==2)

 {

 dongxijinji(); 

 TR0=0;

 num=0;//////////////////////////////调试  

 }

 else

 {

  TR0=1;

 // NS_R=1;NS_Y=1;NS_G=1;/////////////调试

   // EW_R=1;EW_Y=1;EW_G=1;

NS_R=0;NS_Y=0;NS_G=0;/////////////调试

    EW_R=0;EW_Y=0;EW_G=0;

  zhengchang();

 }

 }

 elseif(flag1==1)

 {

 if(key3flag==1)

 {

 yejian();

 TR0=0;

 num=0;

 }

 else

 {

 TR0=1;

// NS_R=1;NS_Y=1;NS_G=1;

  // EW_R=1;EW_Y=1;EW_G=1;

NS_R=0;NS_Y=0;NS_G=0;/////////////调试

    EW_R=0;EW_Y=0;EW_G=0;

 zhengchang();

 } 

 } 

 else

 {

 zhengchang();

 }

}

}

voidyejian()

{

 // NS_R=1;NS_Y=0;NS_G=1; 

 // EW_R=1;EW_Y=0;EW_G=1;

  NS_R=0;NS_Y=1;NS_G=0; 

  EW_R=0;EW_Y=1;EW_G=0;

delay_ms(500);//////////延时太长按键切换会不灵敏

//NS_R=1;NS_Y=1;NS_G=1; 

 // EW_R=1;EW_Y=1;EW_G=1;

NS_R=0;NS_Y=0;NS_G=0;/////////////调试

  EW_R=0;EW_Y=0;EW_G=0;

delay_ms(500);

}

voidzhengchang()

{

if(flagS2==1)

 S2();

elseif(flagS3==1)

 S3();

elseif(flagS4==1)

 S4();

 else

 S1();

}

voidnaibeijinji()//南北绿灯,东西红灯

 //NS_R=1;NS_Y=1;NS_G=0; 

 //EW_R=0;EW_Y=1;EW_G=1;

 NS_R=0;NS_Y=0;NS_G=1; 

 EW_R=1;EW_Y=0;EW_G=0;

}

voiddongxijinji()//东西绿灯,南北红灯

{

 //NS_R=0;NS_Y=1;NS_G=1;

 //EW_R=1;EW_Y=1;EW_G=0;

 NS_R=1;NS_Y=0;NS_G=0;

 EW_R=0;EW_Y=0;EW_G=1;

}

voidkey()

{

if(key2==0)

{

delay_ms(10);

if(key2==0)

{

 flag=1;

 flag1=0;

 key2num++;

 key2num=key2num%3;

switch(key2num)

{

case0:

key2flag=0;break; //正常模式

case1:

key2flag=1;break; //南北紧急

case2:

key2flag=2;break; //东西紧急

}

}

while(!

key2);

}

if(key3==0)

{

delay_ms(10);

if(key3==0)

{

 flag=0;

 flag1=1;

 key3num++;

 key3num=key3num%2;

switch(key3num)

{

case0:

key3flag=0;break; //正常模式

case1:

key3flag=1;break; //夜间模式

}

}

while(!

key3);

}

}

voidS0()

{

 //NS_R=0;NS_Y=0;NS_G=0;

 //EW_R=0;EW_Y=0;EW_G=0;

 NS_R=1;NS_Y=1;NS_G=1;

 EW_R=1;EW_Y=1;EW_G=1;

 delay_ms(2000);

 //NS_R=1;NS_Y=1;NS_G=1;

 //EW_R=1;EW_Y=1;EW_G=1;

 NS_R=0;NS_Y=0;NS_G=0;

 EW_R=0;EW_Y=0;EW_G=0;

}

voidS1()

{

 //NS_G=0;//南北绿灯亮

 //EW_R=0;//东西红灯亮

 NS_G=1;//南北绿灯亮

 EW_R=1;//东西红灯亮

 if(num==20)

 {

 num=0;

 temp=temp-1;

 temp1=temp1-1;

 }

 if(temp==0)

 {

 flagS2=1;

//NS_G=1;//南北绿灯灭

//EW_R=0;//东西红灯亮 

 NS_G=0;//南北绿灯灭

 EW_R=1;//东西红灯亮

 i=i+1; //1

 temp=disp[i];//3

 temp1=temp1; 

//flagS1=0;

 }

smg();

}

voidS2()

{

 //NS_Y=0;//南北黄灯亮

 //EW_R=0;//东西红灯亮

 NS_Y=1;//南北黄灯亮

 EW_R=1;//东西红灯亮

 //temp=3;

 if(num==20)

 {

 num=0;

 temp=temp-1;

 temp1=temp1-1;

 }

 if(temp==0)

 { 

 flagS2=0;

 flagS3=1;

//NS_Y=1;

//EW_R=1;

 NS_Y=0;

 EW_R=0;

 i=i+1; //2

 temp=disp[i];//8

 temp1=disp1[i-1];//5

 }

smg();

}

voidS3()

{

//NS_R=0;//南北红灯亮

//EW_G=0;//东西绿灯亮

NS_R=1;//南北红灯亮

EW_G=1;//东西绿灯亮

if(num==20)

{

num=0;

temp=temp-1;

temp1=temp1-1;

}

if(temp1==0)

{

flagS3=0;

flagS4=1;

//NS_R=0;

//EW_G=1;

NS_R=1;

EW_G=0;

i=i+1;

temp=temp;

temp1=disp1[i-1];

}

smg();

}

voidS4()

{

//NS_R=0;//南北红灯亮

//EW_Y=0;//

NS_R=1;//南北红灯亮

EW_Y=1;//

if(num==20)

{

num=0;

temp=temp-1;

temp1=temp1-1;

}

if(temp==0)

{

flagS4=0;

//NS_R=1;

//EW_Y=1;

NS_R=0;

EW_Y=0;

//flagS1=1;

i=i+1; 

if(i>2)

{i=0;}

temp=disp[i];

temp1=disp1[i];

}

smg();

}

voidsmg()

{

 P2=smg_wm[0];

 P1=smg_dm[temp%10];

 delay_ms(5);

 P1=0X00;

 P2=smg_wm[1];

 P1=smg_dm[temp/10];

 delay_ms(5);

 P1=0X00;

 P2=smg_wm[2];

 P1=smg_dm[temp1%10];

 delay_ms(5);

 P1=0X00;

 P2=smg_wm[3];

 P1=smg_dm[temp1/10];

 delay_ms(5);

 P1=0X00;

}

voidinit()

{

TMOD=0X01;

TH0=(65536-50000)/256;

TL0=(65536-50000)%256;

TH1=(65536-50000)/256;

TL1=(65536-50000)%256;

EA=1;

ET0=1;

//TR0=1;

//ET1=1;

//TR1=1;

}

voidtime0()interrupt1

{

TH0=(65536-50000)/256;

TL0=(65536-50000)%256;

num++; 

}

/*

voidtime1()interrupt3

{

TH1=(65536-50000)/256;

TL1=(65536-50000)%256;

num1++; 

}

*/

voiddelay_ms(uintz)

{

 uintx,y;

 for(x=z;x>0;x--)

for(y=110;y>0;y--);

}

窗体底端

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 环境科学食品科学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1