標題: 基于AT89C51的速度測量與仿真 [打印本頁]
作者: 丁榮全001 時間: 2018-12-16 13:44
標題: 基于AT89C51的速度測量與仿真
基于51單片機的簡單速度測量儀
protues仿真如圖參考代碼如下
#include <reg51.h>
#define N 1//轉盤上所安裝的磁鋼個數
sbit DLed1=P2^0;//定義第一位數碼管"位選"控制線的別名
sbit DLed2=P2^1;//定義第二位數碼管"位選"控制線的別名
sbit DLed3=P2^2;
sbit DLed4=P2^3;
Sbit Buzzer=P3^3;
unsigned int speed=0;//最后的轉速值
unsigned int count=0;//在指定時間內記到的外部脈沖數
unsigned char k=0;
Unsigned char code tab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
void disp(unsigned char x1,unsigned char x2,unsigned char x3,unsigned char x4);
(2)延時子函數程序
void delay1ms(unsigned int k)
{
unsigned char n,m;
for(m=0;m<k;m++)
{for(n=0;n<115;n++);}
}
void main()
{
unsigned char n;
//EA=0;
TMOD=0x51;
TH0=0x3c;
TL0=0xb0;
ET0=1;
EA=1;
TR0=1;
TR1=1;
while(1)
{
speed=2*0.25*3.14*3.6*100*count/N;
Buzzer=1;
If(speed>=2000)
{
Buzzer=~Buzzer;
}
for(n=20;n>0;n--)
{
disp(speed/1000,speed%1000/100,speed%100/10,speed%10);
}
TR0=1;
TR1=1;
}
}
(3)T0中斷處理函數程序
void int0_fun() interrupt 1
{
k++;
TH0=0x3c;
TL0=0xb0;
if(k>=20)
{
TR0=0;
TR1=0;
count=TH1*256+TL1;
TH1=0x00;
TL1=0x00;
k=0;
}
}
(4)四位數碼管的顯示函數程序
void disp(unsigned char x1,unsigned char x2,unsigned char x3,unsigned char x4)
{
DLed1=1;DLed2=0;DLed3=0;DLed4=0;
P1=tab[x1];
delay1ms(10);
P1=0xff;
DLed1=0;DLed2=1;DLed3=0;DLed4=0;
P1=tab[x2];
delay1ms(10);
P1=0xff;
DLed1=0;DLed2=0;DLed3=1;DLed4=0;
P1=tab[x3];
delay1ms(10);
P1=0xff;
DLed1=0;DLed2=0;DLed3=0;DLed4=1;
P1=tab[x4];
delay1ms(10);
P1=0xff;
}
-
112.png
(371.42 KB, 下載次數: 48)
下載附件
2018-12-16 13:42 上傳
歡迎光臨 (http://www.zg4o1577.cn/bbs/) |
Powered by Discuz! X3.1 |
主站蜘蛛池模板:
欧美国产日韩一区二区三区
|
中文字幕亚洲欧美
|
中文字幕在线观看一区二区
|
色综合久
|
三级成人在线观看
|
国产精品一区二区久久精品爱微奶
|
亚洲成年影院
|
毛片免费看
|
国产91久久久久
|
黄色国产在线视频
|
久久av网
|
日韩欧美国产一区二区三区
|
国产91丝袜|
免费三级网
|
国产视频日韩
|
久久精品视频免费看
|
伊人精品在线视频
|
亚洲品质自拍视频
|
99久久婷婷国产综合精品首页
|
在线观看国产视频
|
一区二区三区国产精品
|
精品av|
精品久久久久久久久久久久久久久久久
|
亚洲精品一区二区三区蜜桃久
|
欧美日韩一区在线
|
欧美午夜视频
|
国产美女在线观看
|
日韩视频国产
|
国产精品国产三级国产aⅴ中文
|
色精品|
欧美一级欧美三级在线观看
|
亚洲综合色视频在线观看
|
欧美一级二级三级视频
|
国产精品我不卡
|
在线亚洲免费
|
日日干天天干
|
日日干天天操
|
三区四区在线观看
|
91中文
|
免费成人在线网站
|
午夜婷婷激情
|