欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
STC15F2K16S2單片機驅動12位DAC MCP4726測試程序
[打印本頁]
作者:
xiuyueyuan2013
時間:
2019-7-9 14:56
標題:
STC15F2K16S2單片機驅動12位DAC MCP4726測試程序
使用STC15單片機驅動12位DAC MCP4726芯片的測試程序,實機測試通過,proteus元件庫沒有這個元件,所以沒做仿真
單片機源程序如下:
#include"mcp.h"
#include"lcd.h"
char *num="0123456789ABCDEF";
extern uchar vh,vl,eph,epl;
sbit k=P1^0;
uint n=0;
//測試使用的單片機型號:STC15F2K16S2,頻率選擇5.5296MHz,理論上STC15系列單片機通用
//必要的話請自行修改改引腳定義
//測試加入了LCD1602和按鍵功能來顯示調整部分參數用于調試,實際使用時可以去掉
//代碼通過實機測試
//MCP4726的VOUT腳串接一個LED和102電阻,用于粗略顯示電壓
void delayms()
{
uchar a,b,c;
for(c=1;c;c--)
for(b=38;b;b--)
for(a=130;a;a--);
}
void vup()
{
if(k==0)
{
delayms();
if(k==0)
{
uchar m=0;
n+=100;
while(k==0&&m<200)
{
delayms();
++m;
}
}
}
}
void main()
{
uchar count=0;
uchar temp=0;
while(!(temp&0x40))
temp=mcpread();
lcdinit();
//mcpwriteall(2400); //這個函數測試時沒用到
while(1)
{
temp=mcpread();
vup();
if(n>4095)
n=0;
mcpwrite(n);
writecom(0x80);
writedata(num[temp/100]);
writedata(num[temp%100/10]);
writedata(num[temp%10]);
writedata(' ');
writedata(num[count/100]);
writedata(num[count%100/10]);
writedata(num[count%10]);
++count;
writedata(' ');
writedata(num[vh/100]);
writedata(num[vh%100/10]);
writedata(num[vh%10]);
writedata(' ');
writedata(num[vl/100]);
writedata(num[vl%100/10]);
writedata(num[vl%10]);
writecom(0xc0);
writedata(num[eph/100]);
writedata(num[eph%100/10]);
writedata(num[eph%10]);
writedata(' ');
writedata(num[epl/100]);
writedata(num[epl%100/10]);
writedata(num[epl%10]);
}
}
復制代碼
#include"mcp.h"
uchar vh,vl,eph,epl;
void mcpwrite(uint dat)
{
uchar datl,dath;
datl=dat&0x00ff;
dath=((dat&0x0f00)>>8);
i2cstart();
i2cwrite(0xc0,1);
i2cwrite(dath,1);
i2cwrite(datl,1);
i2cstop();
}
void mcpwriteall(uint dat)
{
uchar datl,dath;
datl=dat&0x00ff;
dath=(dat&0xff00)>>8;
i2cstart();
i2cwrite(0xc0,1);
i2cwrite(0x61,1);
i2cwrite(dath,1);
i2cwrite(datl,1);
i2cstop();
}
uchar mcpread()
{
uchar temp,config;
i2cstart();
i2cwrite(0xc1,1);
config=i2cread(0);
vh=i2cread(0);
vl=i2cread(0);
temp=i2cread(0);
eph=i2cread(0);
epl=i2cread(0);
i2cstop();
return config;
}
復制代碼
所有資料51hei提供下載:
MCP4726.zip
(43.46 KB, 下載次數: 105)
2019-7-9 14:56 上傳
點擊文件名下載附件
測試程序
下載積分: 黑幣 -5
作者:
sunwg9986
時間:
2019-7-10 09:26
新手弱弱的問一下仿真是干嘛的?
作者:
HongZQ2007
時間:
2020-4-16 13:42
非常感謝您的無私分享!!!
歡迎光臨 (http://m.raoushi.com/bbs/)
Powered by Discuz! X3.1