单片机控制的三相全控桥触发系统设计 第13页
第七章 软件设计
7.1 触发脉冲控制软件的设计
触发脉冲的控制软件可方便进行延迟计算,由软件完成系统初始化、初值的输入和触发电角度时间的计算并送入定时器,通过外部中断实现触发延迟角的处理。移相触发脉冲控制软件流程图如图1所示。
7.2 软件控制程序清单
#include<AT89X52.h>
#include"math.h"
#define uint unsigned int
#define uchar unsigned char
uchar Temp_1[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};
uchar temp;
uchar num; //键盘返回值
毕业论文
http://www.Lwfree.cn/ 论文网
http://www.751com.cn/uchar ge=0;
uchar shi=0;
uchar shijian;
float dingshi;
uint dingshi_1;
sbit A_1=P2^6;
sbit B_1=P2^7;
sbit ug_1=P2^0; //脉冲输出引脚定义
sbit ug_2=P2^1;
sbit ug_3=P2^2;
sbit ug_4=P2^3;
sbit ug_5=P2^4;
sbit ug_6=P2^5;
uchar js=0; //辣脉冲计数器
void chushihua()//定时器、中断初始化函数
{
TMOD=0x11;
EA=1;
ET0=1;
ET1=1;
TR1=0;
TR0=0;
IP=0x08;
IPH=0x01;
{ jishu++;
case 0xee:num=0;break;
case 0xed:num=1;break;
case 0xeb:num=2;break;
case 0xe7:num=3;break;
}
while(temp!=0x0f) //松手检测
{
temp=P1;
temp=temp&0x0f;
}
}
}
P1=0xdf;
temp=P1;
temp=temp&0x0f;
if(temp!=0x0f)
{
delay(5);
temp=P1;
temp=temp&0x0f;
if(temp!=0x0f)
{jishu++;
temp=P1;
switch(temp)
{
case 0xde:num=4;break;
case 0xdd:num=5;break;
case 0xdb:num=6;break;
case 0xd7:num=7;break;
}
while(temp!=0x0f) //松手检测
{
temp=P1;
temp=temp&0x0f;
}
}
}
P1=0xbf;
temp=P1;
<< 上一页 [11] [12] [13] [14] 下一页
单片机控制的三相全控桥触发系统设计 第13页下载如图片无法显示或论文不完整,请联系qq752018766