欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
51單片機直流電機轉速控制Proteus仿真和源程序
[打印本頁]
作者:
hhj_king
時間:
2018-11-4 15:20
標題:
51單片機直流電機轉速控制Proteus仿真和源程序
51單片機控制直流電機轉速仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
0.png
(12.34 KB, 下載次數: 61)
下載附件
2018-11-4 15:29 上傳
0.png
(56.37 KB, 下載次數: 57)
下載附件
2018-11-4 15:28 上傳
單片機源程序如下:
#include <reg52.h>
sbit P20=P2^0;
sbit P21=P2^1;
sbit P22=P2^2;
sbit P23=P2^3;
sbit P24=P2^4;
sbit P25=P2^5;
sbit P26=P2^6;
sbit P27=P2^7;
sbit P30=P3^0;
unsigned int ge,shi,bai,qian,g,s,b;
unsigned int j=0,getdata=0,t;
unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
void delay(unsigned int z) //延時
{
unsigned char x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
void display() //顯示
{
P0=table[ge];
P20=1;
P21=1;
P22=1;
P23=1;
P24=1;
P25=1;
P26=1;
P27=0;
delay(5);
P0=0x00;
P0=table[shi];
P20=1;
P21=1;
P22=1;
P23=1;
P24=1;
P25=1;
P26=0;
P27=1;
delay(5);
P0=0x00;
P0=table[bai];
P20=1;
P21=1;
P22=1;
P23=1;
P24=1;
P25=0;
P26=1;
P27=1;
delay(5);
P0=0x00;
P0=table[qian];
P20=1;
P21=1;
P22=1;
P23=1;
P24=0;
P25=1;
P26=1;
P27=1;
delay(5);
P0=0x00;
//P0=able[b];
//P20=1;
//P21=1;
//P22=1;
//P23=1;
//P24=1;
//P25=0;
//P26=1;
//P27=1;
//delay(5);
//P0=0x00;
//
//P0=table[s];
//P20=1;
//P21=1;
//P22=1;
//P23=1;
//P24=1;
//P25=1;
//P26=0;
//P27=1;
//delay(5);
//P0=0x00;
//P0=table[g];
//P20=1;
//P21=1;
//P22=1;
//P23=1;
//P24=1;
//P25=1;
//P26=1;
//P27=0;
//delay(5);
//P0=0x00;
if(P30==0)
P0=0x40;
P20=0;
P21=1;
P22=1;
P23=1;
P24=1;
P25=1;
P26=1;
P27=1;
delay(50);
P0=0x00;
}
void init()//初始化
{
TMOD=0X11;//定時器0和1開啟16位定時/計數模式(方式二)
EX0=1;//允許開啟外部中斷0
IT0=1;//設置中斷0下降沿觸發
EA=1;//總開關開啟
ET0=1;//定時/計數器0溢出中斷允許
TR0=1;//啟動定時器0
TH0=(65536-1000)/256; //定時1ms
TL0=(65536-1000)%256;
}
void main() //主程序
{
init();
while(1)
{
ge=getdata%10;
shi=getdata/10%10;
bai=getdata/100%10;
qian=getdata/1000%10;
// g=n%10;
// s=n/10%10;
// b=n/100%10;
display();
}
}
//M
void int0(void) interrupt 0 //外部中斷0
{
j++; //每有一個脈沖觸發就加1
}
void Timer0() interrupt 1 //定時器中斷0
{
TR0=0;//關閉定時器0 暫停計時
TH0=(65536-3000)/256;
TL0=(65536-3000)%256;
t++;
if(t==1000)//設定1s判斷一次轉速
{
t=0;
getdata=j*60.0/(24*3.0);//此電動機轉一圈編碼器產生24個脈沖
j=0;
}
TR0=1;//開啟定時器0 重新計時
}
復制代碼
全部資料51hei下載地址:
First.zip
(83.62 KB, 下載次數: 81)
2018-11-4 15:20 上傳
點擊文件名下載附件
仿真圖+51工程
下載積分: 黑幣 -5
作者:
LRX1113100356
時間:
2018-12-25 23:30
發的什么東西,仿真和程序都打不開,用其他軟件看了程序寫的太啰嗦
作者:
楊嵐嵐
時間:
2020-3-27 00:00
轉速為多大呢
歡迎光臨 (http://m.raoushi.com/bbs/)
Powered by Discuz! X3.1