久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
單片機ADC0809中斷模式循環采集電壓源程序+Proteus仿真
[打印本頁]
作者:
上官海涵
時間:
2020-3-3 21:18
標題:
單片機ADC0809中斷模式循環采集電壓源程序+Proteus仿真
51單片機和ADC0809循環采集電壓,實時刷新,proteus仿真
X(J{)3K{6B{I2IQO]FF%%BY.png
(100.48 KB, 下載次數: 35)
下載附件
2020-3-3 21:18 上傳
單片機源程序如下:
/********************
* 程序說明:設計一個中斷模式的ADC0809 通道循環采樣
* 摘要: ADC0809數據手冊
**********************************/
#include <reg51.h> //頭文件
#include <intrins.h>
#define uchar unsigned char
#define uint unsigned int
uchar code Tab[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
uchar code Tab1[]={0xbf,0x086,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef};
uchar code Seg_WEI[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf};
uchar dat[]={0,0,0,0};
uchar adc;
uint V=0;
char IN=0;
uchar num;
long int time;
/*****************P2特殊寄存器*******************/
sbit ADDA=P2^1;
sbit ADDB=P2^2;
sbit ADDC=P2^3;
sbit ST=P2^4; //定義ADC0809位
sbit EOC=P2^5;
sbit OE=P2^6;
sbit CLK =P2^7;
/************ 數碼管位碼****************/
/***********P3特殊寄存器*****************/
sbit WEI=P3^6;
sbit DUAN=P3^7;
void nop(uchar xus);
void display();
void add(uchar c,uchar b,uchar a);
void init();
void gather();
/******************************
* 函數名稱: 主函數
* 函數功能: 程序主體
***************************************/
void main()
{
init();
gather();
}
/******************************
* 函數名稱: 數碼管顯示電壓
* 函數功能: 顯示電壓
***************************************/
void display()
{
dat[0]=V/1000;
dat[1]=V%1000/100;
dat[2]=V%1000%100/10;
dat[3]=V%10;
P0=Seg_WEI[0]; //P0特殊寄存器
WEI=1;
WEI=0;
P0=0Xff;
P0=Tab[IN];
DUAN=1;
DUAN=0;
nop(30);
P0=Seg_WEI[1];
WEI=1;
WEI=0;
P0=0XFF;
P0=0x40;
DUAN=1;
DUAN=0;
nop(30);
P0=Seg_WEI[2];
WEI=1;
WEI=0;
P0=0XFF;
P0=Tab1[dat[0]];
DUAN=1;
DUAN=0;
nop(30);
P0=Seg_WEI[3];
WEI=1;
WEI=0;
P0=0XFF;
P0=Tab[dat[1]];
DUAN=1;
DUAN=0;
nop(30);
P0=Seg_WEI[4];
WEI=1;
WEI=0;
P0=0XFF;
P0=Tab[dat[2]];
DUAN=1;
DUAN=0;
nop(30);
P0=Seg_WEI[5];
WEI=1;
WEI=0;
P0=0XFF;
P0=Tab[dat[3]];
DUAN=1;
DUAN=0;
nop(30);
}
/******************************
* 函數名稱: 延時函數
* 函數功能: 延時
***************************************/
void nop(uchar xus)
{
uint i;
for(i=0;i<xus;i++)
{
_nop_();
}
}
/******************************
* 函數名稱: 通道選擇函數
* 函數功能: 確定ADC的通道
***************************************/
void add(uchar c,uchar b,uchar a)
{
ADDA=a;
ADDB=b;
ADDC=c;
}
/******************************
* 函數名稱: 初始化
* 函數功能: 中斷初始化
***************************************/
void init()
{
TMOD=0x01; //設置定時器0為工作方式1
TH0=(65536-2)/256; //200us定時,裝入初值
TL0=(65536-2)%256;
EA=1; //開總中斷
ET0=1; //開定時器0中斷
TR0=1; //啟動定時器0
}
/******************************
* 函數名稱: 定時器
* 函數功能: 定時器0工作
***************************************/
void T0_time() interrupt 1
{
TH0=(65536-2)/256; //重裝初值
TL0=(65536-2)%256;
CLK=~CLK;
}
/******************************
* 函數名稱: 采集電壓
* 函數功能: 采集電壓
***************************************/
void gather()
{
uchar i;
while(1)
{
for(i=0;i<8;i++)
{
if(i==0)
{
IN=0;
add(0,0,0);
ST=0;
OE=0;
ST=1;
ST=0;
while(EOC==0);
OE=1;
adc=P1;
V=adc*20;
for(time=20;time>0;time--)
{
display();
}
}
else if(i==1)
{
IN=1;
add(0,0,1);
ST=0;
OE=0;
ST=1;
ST=0;
while(EOC==0);
OE=1;
adc=P1;
V=adc*20;
for(time=20;time>0;time--)
{
display();
}
}
else if(i==2)
{
IN=2;
add(0,1,0);
ST=0;
OE=0;
ST=1;
ST=0;
while(EOC==0);
OE=1;
adc=P1;
V=adc*20;
for(time=20;time>0;time--)
{
display();
}
}
else if(i==3)
{
IN=3;
add(0,1,1);
ST=0;
OE=0;
ST=1;
ST=0;
while(EOC==0);
OE=1;
adc=P1;
V=adc*20;
for(time=20;time>0;time--)
{
display();
}
}
else if(i==4)
{
IN=4;
add(1,0,0);
ST=0;
OE=0;
ST=1;
ST=0;
while(EOC==0);
OE=1;
adc=P1;
V=adc*20;
for(time=20;time>0;time--)
{
display();
}
}
else if(i==5)
{
IN=5;
add(1,0,1);
ST=0;
OE=0;
ST=1;
ST=0;
while(EOC==0);
OE=1;
adc=P1;
V=adc*20;
for(time=20;time>0;time--)
{
display();
}
}
else if(i==6)
{
IN=6;
add(1,1,0);
ST=0;
OE=0;
ST=1;
ST=0;
while(EOC==0);
OE=1;
adc=P1;
V=adc*20;
for(time=20;time>0;time--)
{
display();
}
}
else if(i==7)
{
IN=7;
add(1,1,1);
ST=0;
OE=0;
ST=1;
ST=0;
while(EOC==0);
OE=1;
adc=P1;
V=adc*20;
for(time=20;time>0;time--)
{
display();
}
}
}
}
}
復制代碼
所有資料51hei提供下載:
ADC0809.zip
(111.51 KB, 下載次數: 77)
2020-3-3 21:18 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
歡迎光臨 (http://m.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
国产乱码精品一区二三赶尸艳谈
|
久久久久久亚洲欧洲
|
欧美一级二级视频
|
黄视频网址
|
午夜国产精品视频
|
欧美成年网站
|
99久久精品国产一区二区三区
|
欧美日韩成人
|
亚洲传媒在线
|
亚洲精品一区在线
|
亚洲男女视频在线观看
|
九九爱这里只有精品
|
性高湖久久久久久久久3小时
|
国产婷婷精品
|
国产精品不卡一区
|
一区二区三区在线免费观看
|
午夜手机在线
|
黄视频网址
|
国产精品久久久久久久久久久久
|
国产69精品久久久久777
|
久久综合狠狠综合久久
|
一区二区亚洲
|
国产精品成人一区二区三区吃奶
|
国产精品久久久乱弄
|
男女羞羞视频网站
|
91精品国产91久久久久久丝袜
|
欧美三区视频
|
久久久精品久
|
久草网址
|
免费v片
|
一级片av
|
人人干视频在线
|
一区二区三区四区电影视频在线观看
|
伊人网国产
|
久久人体视频
|
久久里面有精品
|
超碰人人爱
|
午夜小电影
|
青青草一区
|
一级毛片视频在线
|
日韩精品久久
|