標(biāo)題:
用光敏電阻通過ADC0832控制LED燈的亮滅,大神們幫忙看看我的程序哪里錯了,燈一直亮
[打印本頁]
作者:
橘生淮南
時間:
2017-6-13 20:24
標(biāo)題:
用光敏電阻通過ADC0832控制LED燈的亮滅,大神們幫忙看看我的程序哪里錯了,燈一直亮
用光敏電阻通過ADC0832控制LED燈的亮滅,大神們幫忙看看我的程序哪里錯了,燈一直亮
作者:
51mcu
時間:
2017-6-14 06:37
你讓人幫你看程序,你要把程序貼出來?
作者:
lingwise
時間:
2017-6-14 09:59
用單片機(jī)模擬采集到最大、最小的ADC數(shù)據(jù);255,0,分別輸出控制LED看看能不能讓LED正常亮滅,要是LED都不能亮滅應(yīng)該是LED的控制方式不對吧,要是最大最小ADC可以讓燈亮滅,那就檢查ADC的程序吧,
PS,你提供的資料太少,電路圖框圖、關(guān)鍵控制程序都沒一丁點,讓人家怎么幫你呢
作者:
橘生淮南
時間:
2017-6-24 14:35
51mcu 發(fā)表于 2017-6-14 06:37
你讓人幫你看程序,你要把程序貼出來?
#include<reg52.h>
#include <intrins.h>
#define uchar unsigned char
#define uint unsigned int
sbit Cs0832 =P2^0; //ADC0832 片選
sbit Clk0832 =P2^2; //ADC0832 時鐘
sbit Di0832 =P2^1; //ADC0832 數(shù)據(jù)輸入 /*因為單片機(jī)的管腳是雙向的,且ADC0832的數(shù)據(jù)輸入輸出不同時進(jìn)行,
sbit Do0832 =P2^1; //ADC0832 數(shù)據(jù)輸出 /*為節(jié)省單片機(jī)引腳,簡化電路所以輸入輸出連接在同一個引腳上
sbit D1 = P0^0;
sbit D2 = P0^1;
sbit D3 = P0^2;
sbit D4 = P0^3;
uint yushe_dy=3;
uint dy;
void delay(uint z)
{ uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
uchar ADC0832(uchar Channel) //入口:通道0或1 出口:數(shù)值。
{
uchar i,Dat1=0,Dat2=0;
Clk0832=0;
Di0832=1;
Cs0832=0;
Clk0832=1;
Clk0832=0; //第一脈沖,開始位
Di0832=1;
Clk0832=1;
Clk0832=0; //第二脈沖,模式選擇
Di0832=Channel;//通道選擇,0或1
Clk0832=1;
Clk0832=0; //第三脈沖,通道選擇
Di0832=1; //釋放輸入線
for(i=0;i<8;i++) //從高到低取一次數(shù)
{
Clk0832=1; //下降沿有效
Clk0832=0;
if(Do0832) Dat1|=0x80>>i;
}
for(i=0;i<8;i++) //從低到高取一次數(shù)
{
if(Do0832) Dat2|=0x01<<i;
Clk0832=1; //下降沿有效
Clk0832=0;
}
Cs0832=1;
Di0832=1;
Clk0832=1; //數(shù)據(jù)讀取完成,釋放所有數(shù)據(jù)線
if(Dat1==Dat2)
return Dat1; //校驗兩次數(shù)相等,輸出
}
void main()
{ dy=ADC0832(0);
dy=(5*dy/256);
while(1)
{if(dy<yushe_dy){
D2=0;
}
else{
D2=1;
}
}
}
作者:
過過過兒
時間:
2019-1-3 19:33
sbit D1 = P0^0;
sbit D2 = P0^1;
sbit D3 = P0^2;
sbit D4 = P0^3;
uint yushe_dy=3;
uint dy;
D0 D1這些是什么意思?
作者:
Romanticyang
時間:
2022-4-19 18:15
請問 uint yushe_dy=3;是什么意思?
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1