由51單片機(jī)作為主控制器實(shí)現(xiàn)的恒流源設(shè)計(jì)
部分程序:
#include "reg52.h" //stc頭文件
#include "Delay.h" //延時(shí)頭文件
//設(shè)置按鍵
sbit KEY_ADD = P3^2; //加
sbit KEY_DEC = P3^3; //減
//DA
sbit SCK = P2^0;
sbit CS = P2^1;
sbit DIN = P2^2;
int ADC_num = 0;
/*=========================================
//按鍵掃描處理函數(shù)
=========================================*/
void KEY_Scan( void )
{
if( KEY_ADD == 0 ) // 按鍵按下
{
Delay_ms(1); //延時(shí)消抖
while( !KEY_ADD ); //松手檢測(cè)
ADC_num = ADC_num + 102;
if( ADC_num >= 512 )
{
ADC_num = 512;
}
}
if( KEY_DEC == 0 ) // 按鍵按下
{
Delay_ms(1); //延時(shí)消抖
while( !KEY_DEC ); //松手檢測(cè)
ADC_num = ADC_num - 102;
if( ADC_num <= 0 )
{
ADC_num = 0;
}
}
}
/*=========================================
//DA
=========================================*/
void TCL5615_DAC(unsigned int Data)
{
unsigned char i;
Data <<= 6; //移除高6位,int型數(shù)據(jù)有16位,該DA是10位
SCK = 0; //在片選有效前,時(shí)鐘信號(hào)要為低
CS = 0;; //片選有效
for(i=0;i<12;i++) //每次轉(zhuǎn)換需要10個(gè)時(shí)鐘下降沿
{
if(Data&0x8000) //取最高位數(shù)據(jù),模擬串行數(shù)據(jù)
{
DIN = 1;
SCK = 0;
SCK = 1;
}
else
{
-
控制器
+關(guān)注
關(guān)注
112文章
16448瀏覽量
179463 -
恒流
+關(guān)注
關(guān)注
1文章
206瀏覽量
30800 -
51單片機(jī)
+關(guān)注
關(guān)注
274文章
5705瀏覽量
124304 -
恒流源
+關(guān)注
關(guān)注
16文章
335瀏覽量
56329
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
基于單片機(jī)的數(shù)控恒流源電路的設(shè)計(jì)
基于單片機(jī)的恒流源技術(shù)研究

51單片機(jī)控制舵機(jī)
基于單片機(jī)控制的恒流源電路技術(shù)研究

51單片機(jī)教程第3講-控制引腳
什么是51單片機(jī)?又該如何自學(xué)51單片機(jī)
51單片機(jī)是什么?應(yīng)該如何學(xué)習(xí)51單片機(jī)
基于51單片機(jī)的自動(dòng)尋跡小車(chē)控制的設(shè)計(jì)

基于單片機(jī)控制的直流恒流源設(shè)計(jì).

51單片機(jī)(一)—— 51單片機(jī)簡(jiǎn)介

51單片機(jī)如何跳出wile循環(huán)_51單片機(jī)(九)匯編指令

如何實(shí)現(xiàn)一種基于51單片機(jī)控制的恒流源設(shè)計(jì)?

評(píng)論