|
量=6V÷0.06V=100,注意這里的100是十進(jìn)制的,單片機(jī)不能識別十進(jìn)制數(shù)據(jù),所以要把十進(jìn)制
轉(zhuǎn)換成二進(jìn)制或十六進(jìn)制(轉(zhuǎn)換時(shí)可用WINDOWS自帶的科學(xué)計(jì)算器進(jìn)行)。100轉(zhuǎn)換成十六進(jìn)制后為
64H。只要給DAC0808輸入64H,它就能輸出6V的電壓(注意:理論值和實(shí)踐值有所出入,具體運(yùn)用時(shí)
要適當(dāng)?shù)恼{(diào)節(jié)數(shù)據(jù)輸入量),該電壓經(jīng)運(yùn)放TL082后再去推動LM317,由LM317輸出我們需要的電壓值,
實(shí)現(xiàn)了電壓數(shù)控調(diào)節(jié)。
三、保護(hù)電路:
保護(hù)電路由89C51的P2.4,R10和R11組成,R11的作用是預(yù)先給P2.4一個(gè)高電位。當(dāng)某種原因
(如短路,過流)使得輸出電壓降低至一定值時(shí),P2.4端電位也隨之降低。程序立即檢測到P2.4這
一變化,并立刻通過繼電器關(guān)閉電源輸出。直至原因排除才能再次開機(jī);V3采用PNP型管是為了防止
在單片機(jī)復(fù)位前,LM317失控的電壓輸出到用電器上。
四、安裝與調(diào)試:
圖中的正負(fù)15V、5V由黑白電視機(jī)的變壓器經(jīng)整流穩(wěn)壓后取得。運(yùn)放TL082可以用NE5532、4558等
常見的型號代替。LM317發(fā)熱量較大,散熱片要盡可能的做大些。在確認(rèn)接線無誤后就可試機(jī)。若一
開機(jī)即自動關(guān)機(jī),同時(shí)顯示“OF”,這說說明P2.4電壓太低。正常值應(yīng)在1.5V以上。發(fā)現(xiàn)這種情況可
以適當(dāng)?shù)恼{(diào)節(jié)R11和R10的大小直至P2.4的電壓正常。
- #include <reg52.h> //通用52單片機(jī)頭文件
- #define uchar unsigned char
- sbit RESET=P3^3; //DA轉(zhuǎn)換數(shù)值復(fù)位端口位定義
- sbit keyup=P3^4; //步進(jìn)加端口位定義
- sbit keydown=P3^5; //步進(jìn)減端口位定義
- sbit LEDwei1=P2^7; //低位數(shù)碼管位選
- sbit LEDwei2=P2^6; //高位數(shù)碼管位選
- #define duan P0 //段選宏定義
- void delay(int); //延時(shí)函數(shù)聲明
- void display(uchar); //顯示函數(shù)聲明
- uchar code LEDcode[]={0xc0,0xf9,0xa4,0xb0,0x99,
- 0x92,0x82,0xF8,0x80,0x90,0x8e}; //共陽數(shù)碼管0-9和F(為段選所用)
- uchar code byte[]={ 0x00,0x02,0x04,0x06,0x08,0x0a,0x0c,0x0e, 0x10,0x12,0x14,0x16,0x18,0x1a,0x1c,0x1e,
-
- 0x20,0x22,0x24,0x26,0x28,0x2a,0x2c,0x2e, 0x30,0x32,0x34,0x36,0x38,0x3a,0x3c,0x3e,
-
- 0x40,0x42,0x44,0x46,0x48,0x4a,0x4c,0x4e, 0x50,0x52,0x54,0x56,0x58,0x5a,0x5c,0x5e,
-
- 0x60,0x62,0x64,0x66,0x68,0x6a,0x6c,0x6e, 0x70,0x72,0x74,0x76,0x78,0x7a,0x7c,0x7e,
-
- 0x80,0x82,0x84,0x86,0x88,0x8a,0x8c,0x8e, 0x90,0x92,0x94,0x96,0x98,0x9a,0x9c,0x9e,
-
- 0xa0,0xa2,0xa4,0xa6,0xa8,0xaa,0xac,0xae, 0xb0,0xb2,0xb4,0xb6,0xb8,0xba,0xbc,0xbe,
-
- 0xc0,0xc2,0xc4,0xc6,0xc8,0xca,0xcc,0xce, 0xd0,0xd2,0xd4,0xd6,0xd8,0xda,0xdc,0xde,
-
- 0xe0,0xe2,0xe4,0xe6,0xe8,0xea,0xec,0xee, 0xf0,0xf2,0xf4,0xf6,0xf8,0xfa,0xfc,0xfe,
-
- };//DA轉(zhuǎn)換數(shù)據(jù)
- uchar code table[]={0x11,0x12,15,16,17,18,20,21,22,23, 24,25,27,28,29,30,31,32,34,35,
- 36,37,38,39,41,42,43,44,45,47, 48,49,50,51,52,53,55,56,57,58,
- 59,61,62,63,64,65,66,68,69,70, 71,72,73,75,76,77,78,79,80,82,
- 83,84,85,86,87,89,90,91,92,93, 94,96,97,98,99}; //用于顯示電壓值的數(shù)組
- void main()
- {
- uchar num=0;
- while(1)
- {
- if(keyup==0) //步進(jìn)加端口為低電平,
- {
- delay(10); //稍作延時(shí),消抖,
- if(keyup==0) //步進(jìn)加端口依然為低電平,說明的確是被按下,
- {
- if(num==128) //執(zhí)行電壓DA轉(zhuǎn)換數(shù)值步進(jìn)增加一
- num=0;
- else
- num++;
- }
- while(keyup==0); //防止按死語句
- }
- if(keydown==0) //步進(jìn)減端口為低電平,
- {
- delay(10); //稍作延時(shí),消抖,
- if(keydown==0) //步進(jìn)減端口依然為低電平,說明的確是被按下,
- {
- if(num==0) //執(zhí)行電壓DA轉(zhuǎn)換數(shù)值步進(jìn)減一
- num=128;
- else
- num--;
- }
- while(keydown==0); //防止按死語句
- }
- if(RESET==0) // 復(fù)位端口為低電平
- {
- delay(10); //稍作延時(shí),消抖,
- if(RESET==0) //復(fù)位端口依然為低電平,說明的確是被按下,
- {
- num=0; //執(zhí)行復(fù)位操作
- }
- while(RESET==0); //防止按死語句
- }
-
- P1=byte[num]; //給DA一個(gè)數(shù)值,轉(zhuǎn)化成相應(yīng)的電壓值
- delay(10);
- display(num); //調(diào)用顯示函數(shù)顯示電壓值
- }
- }
- void delay(int x) //12M晶振,約1ms延時(shí)函數(shù)
- {
- int i;
- for(;x>0;x--)
- for(i=0;i<123;i++)
- ;
- }
- void display(uchar num) //顯示函數(shù)
- { uchar temp;
- temp=table[num];
- if(num<75) //電壓值小于10V的可以直接在數(shù)碼管上顯示出來
- {
- duan=LEDcode[temp/10]&0x7f; //顯示個(gè)位,并加顯小數(shù)點(diǎn)
- LEDwei1=1;
- delay(5);
- LEDwei1=0;
- duan=LEDcode[temp%10];; //顯示小數(shù)點(diǎn)后一位
- LEDwei2=1;
- delay(5);
- LEDwei2=0;
- }
- else //電壓值大于10V的在數(shù)碼管上顯示字母"FF"
- {
- duan=LEDcode[10]; //顯示高位
- LEDwei1=1;
- delay(5);
- LEDwei1=0;
- duan=LEDcode[10]; //顯示低位
- LEDwei2=1;
- delay(5);
- LEDwei2=0;
- }
- }
復(fù)制代碼
0.png (49.24 KB, 下載次數(shù): 106)
下載附件
2016-7-5 03:29 上傳
0.png (74.96 KB, 下載次數(shù): 102)
下載附件
2016-7-5 03:26 上傳
所有資料下載:
|
-
-
單片機(jī)數(shù)控電源套件.rar
2016-7-5 03:27 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
1.55 MB, 下載次數(shù): 172, 下載積分: 黑幣 -5
-
-
原理圖等.rar
2016-7-5 03:30 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
228.46 KB, 下載次數(shù): 186, 下載積分: 黑幣 -5
評分
-
查看全部評分
|