標(biāo)題:
單片機(jī)AD603 DA TL5615控制直流電機(jī)
[打印本頁(yè)]
作者:
wd5601236
時(shí)間:
2016-10-17 12:29
標(biāo)題:
單片機(jī)AD603 DA TL5615控制直流電機(jī)
基于51單片機(jī)的,通過(guò)DA TL5615輸出電壓,控制寬帶高增益壓控放大芯片AD603的放大倍數(shù)。放大倍數(shù)由DA輸出電壓與AD603的另一固定的參考電壓之差共同決定
0.png
(56.95 KB, 下載次數(shù): 89)
下載附件
2016-10-17 13:53 上傳
完整代碼下載:
AD603-TL5615直流電機(jī).rar
(24.75 KB, 下載次數(shù): 21)
2016-10-17 13:52 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
代碼預(yù)覽:
#include "TLC5615.H"
sbit TLV5616_CS = P2^2;
sbit TLV5616_SCLK = P2^1;
sbit TLV5616_DIN = P2^0;
#define HIGH 1;
#define LOW 0;
/******************************************************************************/
/* 函數(shù)功能: 輸出0-2000mv電壓 */
/* 參數(shù): 電壓值 */
/* 返回: 無(wú) */
/******************************************************************************/
void TLV5616_ExportVol(uint vol)
{
uint da=0;//idata da=0;
uchar i;//idata i;
TLV5616_CS = HIGH;
TLV5616_SCLK = LOW;
da = (vol / 5000.0) * 4096; // 計(jì)算輸出電壓的DA值,公式: vol = 2*REF*DA/0x1000(v)
TLV5616_CS = LOW;
for(i=0; i<16; i++)
{
TLV5616_SCLK = LOW;
if(da & 0x8000)
TLV5616_DIN = 1;
else
TLV5616_DIN = 0;
_nop_();
TLV5616_SCLK = HIGH;
da = da << 1;
}
TLV5616_SCLK = LOW;
TLV5616_CS = HIGH;
}
/******************************************************************************/
/* 函數(shù)功能: 輸出0-20mA電流 */
/* 參數(shù): 百分比 * 1000 */
/* 返回: 無(wú) */
/******************************************************************************/
/*void ExportCurrent(uint percent)
{
uint idata vol; //電壓 mv
if(percent <= 840) // 84% 防止電壓超范圍
vol = 0;
else if(percent >= 1000) // 100% 防止電壓超范圍
vol = 2000;
else
vol = (percent - 840) / 0.08; // 計(jì)算控制電壓(mv)
TLV5616_ExportVol(vol); // 輸出電流
}*/
復(fù)制代碼
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1