提供一些项目资料,开题构思
51系列单片机 STM32单片机
以下是部分选题
后续会把所有项目功能分开介绍
以下项目均为本人设计,
- 包括 keil uvision 源码 C语言编写
- Altium designer 原理图
- proteus 仿真
- 任务书
- 开题报告.
- 手敲设计说明文档(论文)
- 个人总结单片机设计答辩会问到的问题
等等
单片机课设毕设通用
具体 可以看链接 单片机课设毕设通用_哔哩哔哩_bilibili
- 01#51单片机蓝牙电子秤LCD1602+三按键+蓝牙
- 02#51单片机指纹+射频+密码+12864锁
- 03#51单片机万年历+闹钟+温度+秒表
- 04#51单片机流量检测+温度检测+流量报警1602
- 05#51单片机热电偶温度报警装置
- 06#51单片机两路从机WIFI无线温湿度报警
- 07#51单片机红外测温gy906
- 08#51单片机函数信号发生器1602
- 09#51单片机水温水位热水器设计1602
- 10#51单片机温度可燃气体监测报警1602
- 11#51单片机水位监测进水+排水1602自动手动模式
- 12#51单片机台灯+坐姿检测+人体感应+红外遥控+光敏手动自动模式
- 13#51单片机智能雨刷设计-检测湿度控制电机转速
- 14#51单片机湿度检测节水农田灌溉系统
- 15#51单片机电阻测量仪装置
- 16#51单片机智能温控风扇+人体检测+数码管显示
- 17#51超声波测距侧速
- 18#51单片机温度烟雾报警控制继电器
- 19#51单片机超声波+寻迹小车
- 20#51单片机出租车计价系统+电机模拟+语音
- 21#51单片机出租车计价系统无语音版本
- 22#51单片机土壤湿度控制+温湿度+蓝牙
- 23#51单片机GPS自动校准万年历
- 24#51单片机红外检测+语音播报药盒
- 25#51单片机数控恒流源(O-1000ma)
- 26#51单片机温湿度+烟雾排风+红外检测人+光照+步进电机窗户
- 27#51单片机射频卡门禁+上位机记录查询+按键出门
- 28#51单片机按键密码锁
- 29#51超声波测距+蓝牙显示
- 30#51单片机紫外线检测
- 31#51单片机指纹+密码门禁LCD12864有仿真
- 32#51单片机 stc 12电子密码锁
- 33#51单片机步数+时间+指南针
- 34#51单片机心率监测
- 35#51单片机温湿度控制+蓝牙+完美论文
- 36#51单片机直流电机PWM调速+霍尔测速
- 37#51单片机电机测速+总里程+时间+超速报警+运行时间显示
- 38#51单片机电机测速+总里程+时间+超速报警+调电机速度
- 39#51单片机 GSM烟雾人体防火防盗
- 40#51单片机超声波测距1602显示(声音随着距离变化)
- 41#51单片机温湿度检测控制系统
- 42#51单片机自动窗帘(烟雾+灯控)
- 43#51单片机俄罗斯方块
- 44#51单片机红外音乐盒
- 45#51单片机红外测温阈值报警带环境温度度
- 46#51单片机 GSM智能快递柜
- 47#51单片机射频卡门禁
- 48#51单片机温湿度wifi控制
- 49#51单片机蓝牙控制多路继电器
- 50#51单片机超声波从机测距主机显示
- 51#51单片机简易示波器
- 52#51单片机数码管显示+18b20温度控制+蓝牙
- 53#51单片机语音垃圾桶+步进电机+串口
- 54#51单片机 RLC测量仪
- 55#51单片机数控稳压电源
- 56#51单片机水质监测
- 57#51单片机超声波人体GSM报警仪
- 58#51单片机震动检测报警+红外遥控
这是具体
本人 所有代码基本均有注释,清晰好理解!
/********************************************************
函数名称:void main()
函数作用:主函数
参数说明:
********************************************************/
void main()
{
led=1; //红灯关闭
led2=0; //绿灯点亮
SC_Speech(0); //语音地址归位
LCD_init(); //LCD1602初始化
T0_init(); //定时器0初始化
Int0_init(); //外部中断初始化
if(key_jian==0)
{
delayms(100);
if(key_jian==0)
{
AT24C02_write_date(1,15); //写入【白天公里价】数据保存
AT24C02_write_date(2,20); //写入【晚上公里价】数据保存
AT24C02_write_date(3,5); //写入【白天等待价】数据保存
AT24C02_write_date(4,10); //写入【晚上等待价】数据保存
AT24C02_write_date(5,15); //写入【起步价】数据保存
}
}
white_price=AT24C02_read_date(1); //读取存储的【白天公里价】数据
evening_price=AT24C02_read_date(2); //读取存储的【晚上公里价】数据
white_Wait=AT24C02_read_date(3); //读取存储的【白天等待价】数据
evening_Wait=AT24C02_read_date(4); //读取存储的【晚上等待价】数据
start_price=AT24C02_read_date(5)*100;//读取存储的【起步价价】数据
lcd1602_write_pic(0x01,pic2); //将自定义字符“¥”写入LCD1602
while(1) //死循环
{
scan(); //按键检测处理
Read_time(); //读取时间
if(strat_f==1) //非初始界面显示下
{
if(set_f==0) //判断是否在设置模式
{
if(start==1) //判断是否在开始计价模式
{
display(); //显示开始计价界面
if(moto_f==1&&TR0==0)//判断是否开启电机状态
TR1=1; //打开定时器开启控制电机速度
else
{
moto=1; //关闭电机
TR1=0; //关闭定时器
}
}
else //否则,在结束计价模式
display2(); //显示结算总价钱
}
else
if(set_f<6) //在设置计价参数模式
display3(); //显示设置计价参数界面
else //否则,在校准时间
{
Read_time(); //读取时间
display4(); //显示校准时间界面
}
}
else
{
if(f==1) //长时间未操作或设置完成,自动恢复初始界面,同时保存设置
{
if(set_f!=0) //在设置退出时需要保存数据
{
set_f=0; //清除设置标志
AT24C02_write_date(1,white_price); //写入【白天公里价】数据保存
AT24C02_write_date(2,evening_price); //写入【晚上公里价】数据保存
AT24C02_write_date(3,white_Wait); //写入【白天等待价】数据保存
AT24C02_write_date(4,evening_Wait); //写入【晚上等待价】数据保存
AT24C02_write_date(5,start_price/100);//写入【起步价】数据保存
Writeds1302 (WRITE_MINUTE,(time[1]/10)*16+time[1]%10);//将设置的分钟写入DS1302
Writeds1302 (WRITE_SECOND,(time[0]/10)*16+time[0]%10);//将设置的秒钟写入DS1302
}
LCD_write_command(0X01); //清除屏幕显示
delay_n40us(100); //延时等待清除完成
f=0; //重置变量
}
lcd1602_write_character(4,1,"THE TAXI"); //显示"THE TAXI"
LCD_disp_char(4,2,ASCII[time[2]/10]); //显示当前时间
LCD_disp_char(5,2,ASCII[time[2]%10]);
LCD_disp_char(6,2,':');
LCD_disp_char(7,2,ASCII[time[1]/10]);
LCD_disp_char(8,2,ASCII[time[1]%10]);
LCD_disp_char(9,2,':');
LCD_disp_char(10,2,ASCII[time[0]/10]);
LCD_disp_char(11,2,ASCII[time[0]%10]);
}
}
}