久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
單片機自動換擋電壓表設計 仿真+源程序+電路原理圖
[打印本頁]
作者:
51黑ff
時間:
2016-8-31 21:24
標題:
單片機自動換擋電壓表設計 仿真+源程序+電路原理圖
0.png
(30.96 KB, 下載次數: 63)
下載附件
2016-8-31 21:22 上傳
單片機自動換擋電壓表設計的仿真電路原理圖(工程文件清晰版請下載本帖最后的附件)采用adc0808 ad芯片采集電壓
下面是單片機自動換擋電壓表設計部分源程序:
#include <AT89X52.H>
#define LEDDATA P0
#define v20_on {s3=0;s2=0;s1=1;} //宏定義不同量程,不同的開關狀態
#define v2_on {s3=0;s2=1;s1=0;}
#define v02_on {s3=1;s2=0;s1=0;}
unsigned char code dispcode[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00};
unsigned char dispbuf[8]={0,0,0,0,0,0,0,0};
unsigned char getdata;
unsigned long temp;
unsigned char i,k,l,m;
unsigned char code mytable0[]=" Welcome to use ";
unsigned char code mytable1[]="Auto Voltmeter!";
unsigned char code line0[]=" Voltmeter "; //初始化顯示
unsigned char code line1[]=" Value: V ";
//引腳定義
sbit lcdrs=P2^0;
sbit lcden=P2^1;
sbit s3=P3^7;
sbit s2=P3^6;
sbit s1=P3^5;
sbit OE=P3^0;
sbit EOC=P3^1;
sbit ST=P3^2;
void delay(unsigned int z) //延時子函數 z*1ms
{
unsigned int x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
void write_com(unsigned char c) //寫命令子函數
{
lcdrs=0; //低電平選擇為 寫指令
lcden=0;
LEDDATA=c; //把指令寫入P0口
delay(5); //參考時序圖
lcden=1; //開使能
delay(5); //讀取指令
lcden=0; //關閉使能
}
void write_data(unsigned char d) //寫數據子函數
{
lcdrs=1; //高電平選擇為 寫數據
LEDDATA=d; //把數據寫入P0口
delay(5); //參考時序圖
lcden=1; //開使能
delay(5); //讀取數據
lcden=0; //關閉使能
}
void initialize() //LCD初始化函數
{
unsigned char num;
lcden=0;
write_com(0x38); //設置16x2顯示,5x7點陣顯示,8位數據接口
write_com(0x0c); //00001DCB,D(開關顯示),C(是否顯示光標),B(光標閃爍,光標不顯示)
write_com(0x06); //000001N0,N(地址指針+-1)
write_com(0x01); //清屏指令 每次顯示下一屏內容時,必須清屏
write_com(0x80+0x10); //第一行,頂格顯示
for(num=0;num<17;num++)
{
write_data(mytable0[num]);
delay(10);
}
write_com(0x80+0x50); //第二行,從第一格開始顯示
for(num=0;num<15;num++)
{
write_data(mytable1[num]);
delay(10);
}
for(num=0;num<16;num++)
{
write_com(0x1c); //0001(S/C)(R/L)**; S/C:高電平移動字符,低電平移動光標; R/L:高電平左移,低電平右移
delay(300);
}
delay(1000);
write_com(0x01); //清屏指令 每次顯示下一屏內容時,必須清屏
write_com(0x80);
for(num=0;num<14;num++)
{
write_data(line0[num]);
delay(10);
}
write_com(0x80+0x40);
for(num=0;num<15;num++)
{
write_data(line1[num]);
delay(10);
}
}
void value(unsigned char add,unsigned char dat)
{
write_com(0x80+0x47+add);
if(l==3&&add==2||l!=3&&add==1)
{
write_data(0x2e);
}
else
{
write_data(0x30+dat);
}
}
main()
{
initialize();
while(1)
_20v:
{
v20_on;
ST=0;
ST=1;
ST=0;
while(EOC==0);
OE=1;
getdata=P1;
OE=0;
if(getdata<21)
{
goto _2v;
}
l=3;
temp=getdata;
temp=(temp*1000/51)/2;
goto disp;
_2v:
v2_on;
ST=0;
ST=1;
ST=0;
while(EOC==0);
OE=1;
getdata=P1;
OE=0;
if(getdata<21)
{
goto _02v;
}
else if(getdata>204)
{
goto _20v;
}
l=2;
temp=getdata;
temp=(temp*1000/51)/2;
goto disp;
_02v:
v02_on;
ST=0;
ST=1;
ST=0;
while(EOC==0);
OE=1;
getdata=P1;
OE=0;
if(getdata>204)
{
goto _2v;
}
l=1;
temp=getdata;
temp=(temp*1000/51)/2;
m=temp%10;
if(m>5){temp=temp/10+1;}
else{temp=temp/10;}
goto disp;
disp: for(i=0;i<=3;i++)
{
dispbuf[i]=temp%10;
temp=temp/10;
}
if(l==3)
{
for(i=4;i>=3;i--)
dispbuf[i]=dispbuf[i-1];
}
else
{
dispbuf[4]=dispbuf[3];
}
for(k=0;k<5;k++)
{
value(k,dispbuf[4-k]);
}
if(l==2){goto _2v;}
else if(l==1){goto _02v;}
}
}
復制代碼
0.png
(82.39 KB, 下載次數: 55)
下載附件
2016-8-31 21:23 上傳
單片機自動換擋電壓表設計的全部資料下載:
http://m.zg4o1577.cn/bbs/dpj-54940-1.html
作者:
8x8
時間:
2022-1-13 10:47
題主我下載了你的資料鏈接,不過自動換擋電壓表實例中沒有那個DSN仿真文件啊
歡迎光臨 (http://m.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
av不卡在线播放
|
国产精品网站在线观看
|
日韩一区中文字幕
|
亚洲精品久久久久久久久
|
一区在线观看
|
日韩免费视频
|
成人香蕉网
|
精品国产乱码久久久久
|
青草视频网站
|
亚洲免费小视频
|
一本色道久久综合亚洲精品酒店
|
午夜在线观看免费视频
|
www.午夜
|
91av在线看
|
日韩黄色一级片
|
亚洲男人天堂网
|
欧美一区二区三区在线视频
|
色综合久久88色综合天天
|
婷婷午夜天
|
免费一级全黄少妇性色生活片
|
国产成人一区二区三区
|
永久免费av
|
午夜视频福利
|
成人h片在线观看
|
免费网站观看www在线观
|
日韩在线网址
|
麻豆av片
|
国产成人免费
|
神马香蕉久久
|
亚洲 欧美 激情 另类 校园
|
日韩毛片在线
|
免费在线
|
欧美色图在线观看
|
欧美一二
|
亚洲一区成人
|
一级免费片
|
亚洲影视一区
|
日日干干
|
国产成人一区
|
日韩成人影院
|
黄色一级片网站
|