基于单片机PID电机调速控制设计-基于单片机LED条屏显示温度和时间设计-基于单片机PM2.5雾霾检测处理控制设计-基于单片机SHT11温湿度采集报警系统设计-基于单片机8155秒表计时器系统设计
1273基于单片机PID电机调速控制设计-毕设课设资料
/*****************************************************************************************
*文件名:pid.c
*文件描述:PID控制电机转速*****************************************************************************************/#include <reg51.h>
#include <intrins.h>sbit plus_10=P1^3; //对各个按钮进行位定义
sbit minus_10=P1^4;
sbit plus=P1^5;
sbit minus=P1^6;
sbit enter=P1^7;
sbit PWM_OUT1=P1^1;
sbit PWM_OUT2=P1^0;
sbit dir=P1^2;struct PID //定义PID结构体
{int SetValue; //设定值
// long SumError; //误差double Proportion; //比例系数double Integral; //积分系数double Derivative; //微分系数int LastError;int PrevError;
}sPID,*sptr= &sPID;int PWM,PWM_temp=1,count0=0,Speed_Set,Seep_Measure,counter_100ms,counter_10ms;
bit flag_100ms,flag_10ms,start,plus_10_lock=1,minus_10_lock=1,plus_lock=1,minus_lock=1,enter_lock=1;
char num[] = {0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f};//0~9 对应数码/*****************************************************************************************
*函数名:void delayms(unsigned char x)
*函数功能:简单延时 支持0~255ms
1272基于单片机LED条屏显示温度和时间设计-毕设课设资料
#include "..\INCLUDE\config.h"
#include "..\FONT\FONT.H"
uint8 Temp_Value;
void TEMP_Delay(uint16 i)
{while(i--);
}
void TEMP_INITIALIZE()
{DQ=1;TEMP_Delay(8);DQ=0;TEMP_Delay(80);DQ=1;TEMP_Delay(14);TEMP_Delay(20);
}uint8 TEMP_Read_Char()
{uint8 i;uint8 dat;for(i=0;i<8;i++){DQ=0;dat>>=1;DQ=1;if(DQ)dat|=0x80;TEMP_Delay(4);}return dat;
}void TEMP_Write_Char(uint8 dat)
{uint8 i;for(i=0;i<8;i++){DQ=0;DQ=dat&0x01;TEMP_Delay(5);DQ=1;dat>>=1;}
}void TEMP_Read()
{uint8 a,b;TEMP_INITIALIZE();TEMP_Write_Char(0xcc);TEMP_Write_Char(0x44);TEMP_Delay(100);
1279基于单片机PM2.5雾霾检测处理控制设计-毕设课设资料
#include<reg51.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
#define LCD P0 //
sbit PM2_5 = P2^1; //PM2.5模块PWM输入口
sbit busy=P0^7; // "忙"标志位
sbit add=P1^0;
sbit jian=P1^1;
sbit ledred=P1^2;
sbit ledgreen=P1^3;
sbit sanji=P2^2;
sbit erji=P2^3;
sbit yiji=P2^4;
sbit guolvwang=P2^0;
sbit warning=P1^7;
uint ji=120;
uint LowPulseTime_30s = 0; //30秒内低电平的时间,单位为ms
uint LowPulseTime_3s = 0; //3秒内低电平的时间,单位为ms
uint TotalTime_3s = 0;//总时间,3秒计数器
uint TotalTime_30s = 0;//总时间,30秒计数器*
uint LowperTotal = 0; //30秒内的低脉冲率,就是30秒内的低脉冲时间除以30秒的总时间,范围为5%~25%
uint Concen = 0;//浓度值,整数
uint pulseTime[10] = {0}; //每隔3秒的低电平时间数组,10项刚好就是30秒
uchar Index = 0; //上述数组的索引
bit bFreshDis = 0; //显示值刷新标志位,每隔3秒刷新一次显示
bit bStartDis = 0; //开始显示浓度值标志位,因为上电后要等30秒的预热时间才能计算浓度值
#define INT_CLOCK 1 //INT_CLOCK为定时值,单位为ms ,此处定义为1ms
#define CRY_FREQUENCY 11059200 //CRY_FREQUENCY为晶振频率,单位为,Hz
uchar TL0_temp; //暂存TL0的初值 中断值
uchar TH0_temp; //暂存TH0的初值
unsigned char fuhao;
//代码表
1258基于单片机8155秒表计时器系统设计-毕设课设资料
/***********************基于8155的8LED显示电子表设计************************************************/
#include<reg52.h>
#include<absacc.h>/*******************************************宏定义***************************************************/
#define uint unsigned int
#define uchar unsigned char/*******************************************定义8155地址***********************************************/
#define COM8155 XBYTE[0X7FF8] //8155的命令口
#define PA8155 XBYTE[0X7FF9] //8155的PA
#define PB8155 XBYTE[0X7FFA] //8155的PB
#define PC8155 XBYTE[0X7FFB] //8155的PC/*******************************************定义数码管显示的码值**************************************/
uchar code du_code[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F}; //8段共阴极数码管显示码值
uchar dis_buf[]={0x3f,0x3f,0x40,0x3f,0x3f,0x40,0x3f,0x3f}; //数码管显示缓存,格式为MM-NN-SS
uchar code bit_code[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; //数码管显示的位值/*******************************************定义系统变量***************************************************/
bit flag=0; //计时状态标志位
bit flag1=0,flag2=0,flag3=0,flag4=0; //按键状态标志位
uchar num,second,minute,hour; //秒表变量
uchar count=0,count1=0; //计数器变量
1285基于单片机SHT11温湿度采集报警系统设计-全套资料
#include<reg51.h>
#include <intrins.h>
#include <math.h>
#include <stdio.h>
#define LCD_DB P0
sbit LCD_RS=P2^0;
sbit LCD_RW=P2^1;
sbit LCD_E=P2^2;
sbit beep = P1^7;
sbit key1 = P3^0;
sbit key2 = P3^1;
sbit key3 = P3^2;
sbit key4 = P3^3;unsigned char Time; //用来存放定时时间
unsigned char Second;
unsigned char w; //标志位
unsigned char wendumode = 0;
unsigned char shidumode = 0;
unsigned char wenduCB = 40;
unsigned char shiduCB = 100;
unsigned int wendu,shidu; /******定义函数****************/
#define uchar unsigned char
#define uint unsigned int
void LCD_init(void); //初始化函数
void LCD_write_command(uchar command); //写指令函数
void LCD_write_data(uchar dat); //写数据函数
void LCD_disp_char(uchar x,uchar y,uchar dat);//在某个屏幕位置上显示一个字符,X(0-15),y(1-2)
void LCD_disp_str(uchar x,uchar y,uchar *str); //LCD1602显示字符串函数
void delay_n10us(uint n); //延时函数
文章转自电设屋,资料百度网盘下载地址 https://www.aiesst.cn/share.html
目录
1273基于单片机PID电机调速控制设计-毕设课设资料
1272基于单片机LED条屏显示温度和时间设计-毕设课设资料
1279基于单片机PM2.5雾霾检测处理控制设计-毕设课设资料
1258基于单片机8155秒表计时器系统设计-毕设课设资料
1285基于单片机SHT11温湿度采集报警系统设计-全套资料
基于单片机PID电机调速控制设计-基于单片机LED条屏显示温度和时间设计-基于单片机PM2.5雾霾检测处理控制设计-基于单片机SHT11温湿度采集报警系统设计-基于单片机8155秒表计时器系统设计相关推荐
- android秒表课程设计,1258【毕设课设】基于单片机8155秒表计时器系统设计
/***********************基于8155的8LED显示电子表设计************************************************/ #include ...
- 51单片机 PWM 直流电机调速+Proteus仿真
51单片机 PWM 电机调速+Proteus仿真 Proteus仿真 实例代码 /*用PWM控制电机脉冲频率应控制在25HZ-35HZ之间*//*定时1ms,1个周期30ms,脉冲频率为33HZ */ ...
- 电机调速设计并用matlab仿真,终稿毕业论文设计_基于PWM控制的直流电动机调速系统设计及MATLAB仿真.doc最终版(备份存档)...
<毕业论文_基于PWM控制的直流电动机调速系统设计及MATLAB仿真.doc>由会员分享,可免费在线阅读全文,更多与<(终稿)毕业论文设计_基于PWM控制的直流电动机调速系统设计及M ...
- 电机调速设计并用matlab仿真,基于MATLAB的双闭环调速系统设计与仿真
名称 基于MATLAB的双闭环调速系统设计与仿真 设计内容和意义 摘要 转速.电流双闭环控制直流调速系统是性能很好.应用最广的直流调速系统.根据晶闸管的特性,通过调节控制角α大小来调节电压.基于设计题 ...
- 基于51单片机的PWM控制马达电机调速正反转(仿真+源码+全套资料)
资料编号:117 仿真图proteus 7.8 程序编译器:keil 5 编程语言:C语言 采用51单片机,用PWM控制电机脉冲频率应控制在25HZ-35HZ之间 定时1ms,1个周期30ms,脉冲频 ...
- 基于51单片机的PWM控制马达电机调速正反转
资料编号:117 下面是相关功能视频演示: 117-基于51单片机的PWM控制马达电机调速正反转(仿真+源码+全套资料) 仿真图proteus 7.8(理论上高于7.8均可以打开) 程序编译器:ke ...
- matlab数字量转电气量,基于MATLAB的数字PID直流电机调速系统.doc
电力拖动课程设计 作 者 段发鑫 系 (院) 信息工程学院 专 业 电气工程及其自动化 年 级 2010级 学 号 K031041513 指导教师 耿东山 日 期 2013.5.5 基于MATLAB的 ...
- 计算机控制直流电机闭环调速实验报告,电气工程及其自动化电力系统实训报告-基于PLC的直流电机调速实验.pdf...
电气工程及其自动化电力系统实训报告-基于PLC的直流电机调速实验.pdf 华南理工大学广州汽车学院华南理工大学广州汽车学院 电力系统实训电力系统实训报告报告 设计题目设计题目基于基于 PLCPLC 的 ...
- matlab仿真限幅发散,基于模糊控制的直流电机调速系统MATLAB仿真_贾东耀
基于模糊控制的直流电机调速系统MATLAB 仿真 贾东耀,曾智刚 (广东工业大学,广州市 510090) 摘 要:采用Fuzzy-PI 控制策略进行直流电机的调速系统设计,它克服了简单模糊控制和传统P ...
- 基于PLC的变频调速
基于PLC的变频调速系统设计 一.项目目的 1.掌握PLC的应用设计过程: 2.掌握常用变频器的应用过程: 3.初步掌握电气原理图的设计过程: 4.*初步了解人机界面的开发过程: 5.对基本电器元件的 ...
最新文章
- vs2008格式化代码
- Android移动开发之【通往安卓的神奇之旅】Senior VIew高级组件与onClickListener()再探索
- apk ionic 破损_cordova – ionic build android不生成任何.apk文件或错误
- 满分简便解法:1002 写出这个数 (20分)
- java 线程工厂_Java并发编程:Java的四种线程池的使用,以及自定义线程工厂
- 【python】collections.Counter()函数
- java net time_建了服可是老是提示java.net.SocketTimeoutException: Read time
- 中芯国际:与阿斯麦集团签订购买单 总价12亿美元
- OpenShift 4 - Fedora CoreOS (3) - 定制 CoreOS ISO
- 解决Zarp报错,成功运行
- 为什么区块链世界既需要计算机科学家也需要经济学家?
- B+树数据库加锁历史
- 关于Python、R、VBA、SAS的生成批量变量名与动态变量引用的问题
- 每天多抽出一分钟看书,让你的什么更加精彩。1111节当当购书码
- RTP Payload Format for High Efficiency Video Coding (HEVC)
- 将视频背景扣掉换成白色相关知识
- 华为 1+X《网络系统建设与运维(中级)》认 证实验模拟上机试题
- Marvell交换机芯片SMI接口读写协议
- intel NVME SSD 性能 P5600 P5510 P5520
- MongoDB初认识