|
數(shù)字電位器在90年代就有了,當(dāng)時(shí)大學(xué)DIY HI-END頂級(jí)音響流行想用它來(lái)做音量電位器,但是價(jià)格非常昂貴.現(xiàn)已出來(lái)很多年價(jià)格尚可接受,但也和STM32差不多價(jià)!它在某些場(chǎng)合可以高可靠性地代替普通模擬電位器,如美國(guó)美信公司生產(chǎn)的10K歐姆的X9C103,它有100級(jí)調(diào)節(jié),每檔100歐姆.可做為音量調(diào)節(jié)電路,儀器模擬量調(diào)節(jié)及數(shù)控電源DIY什么的,其實(shí)前不久我買(mǎi)幾塊回來(lái)就是想DIY數(shù)控電源(在大蝦眼中就是"假數(shù)控吧"),下面貢獻(xiàn)買(mǎi)來(lái)的所有資料和原程序. 由于水平有限,專業(yè)軟件的我不懂,我也沒(méi)有時(shí)間測(cè)試X9C103行不行,我現(xiàn)在就是善良地為老師大神大蝦們無(wú)條件地分享資料(美信公司20年前的東西,應(yīng)該沒(méi)有版權(quán)問(wèn)題)謝謝!
原理圖:
使用說(shuō)明
一、基礎(chǔ)部分
數(shù)字電位器 X9c103 模塊是一款寬電壓(3V-5V)供電,10K滿量程電位器。
電位器中間抽頭在 0-10k 間滑動(dòng)共 100 級(jí)(電位器滑動(dòng)端典型阻抗 40 歐) 數(shù)字電位器 VL 和 VH 端口分別對(duì)應(yīng)滑動(dòng)變阻器的低端和高端,允許輸入電壓范圍-5V 到+5V。 數(shù)字電位器模塊附帶測(cè)試程序,程序代碼為 C 語(yǔ)言代碼,分模塊編寫(xiě)。代碼包括:主函數(shù)、顯示子函數(shù)、按鍵子函數(shù)以及各模塊的頭文件,可以采用 KEIL4 打開(kāi)源代碼經(jīng)行測(cè)試和學(xué)習(xí)。
二、測(cè)試部分
如只需測(cè)試模塊使用可不研究源代碼,將測(cè)試程序中.HEX 文件下載到目標(biāo)板。
1、按鍵子函數(shù)共涉及兩個(gè)按鍵檢測(cè)和控制,分別對(duì)應(yīng) P3^2 和P3^3.兩個(gè)按鍵每次按下分別實(shí)現(xiàn) 10K 數(shù)字電位器中間滑動(dòng)端往上端和往下端滑動(dòng)1k數(shù)值。數(shù)字電位器接口說(shuō)明:INC 接 P2^0,U_D 接P2^1,CS 接P2^2。
2、顯示器接口:電源端口 VCC(2 腳) GND(1 腳)接 5V 電源。數(shù)據(jù)端口 D0-D7(7 腳到14 腳)接P0 口(P0^0 - P0^7)。對(duì)比度調(diào)節(jié)端口 VL(3 腳)為液晶顯示器對(duì)比度調(diào)整端用電位器分壓得到 0V-5V 中間某一電壓使液晶清晰顯示?刂贫丝 RS(4 腳)為寄存器選擇,高電平1 時(shí)選擇數(shù)據(jù)寄存器、低電平0 時(shí)選擇指令寄存器。控制端口 RW(5 腳)為讀寫(xiě)信號(hào)線,高電平(1)時(shí)進(jìn)行讀操作控制端口 EN(6 腳)端為使能(enable)端,高電平(1)時(shí)讀取信息,負(fù)跳變時(shí)執(zhí)行指令。
單片機(jī)源程序如下(key部分):
/*
* LCD1602顯示器并行驅(qū)動(dòng)子函數(shù)
* 顯示器接口:電源端口VCC(2腳) GND(1腳)接5V電源。
數(shù)據(jù)端口D0-D7(7腳到14腳)接P0口(P0^0 - P0^7)。
對(duì)比度調(diào)節(jié)端口VL(3腳)為液晶顯示器對(duì)比度調(diào)整端用電位器分壓得到0V-5V中間某一電壓使液晶清晰顯示。
控制端口RS(4腳)為寄存器選擇,高電平1時(shí)選擇數(shù)據(jù)寄存器、低電平0時(shí)選擇指令寄存器。
控制端口RW(5腳)為讀寫(xiě)信號(hào)線,高電平(1)時(shí)進(jìn)行讀操作
控制端口EN(6腳)端為使能(enable)端,高電平(1)時(shí)讀取信息,負(fù)跳變時(shí)執(zhí)行指令。
*/
單片機(jī)源程序如下(主程序):
- #include"HEADER.h"
- #include"LCD1602.h"
- #include"BUTTON.h"
- volatile unsigned char DISPLAY[4];//全局顯示數(shù)組
- /*****************************初始化函數(shù)*****************************/
- void Init()//初始化函數(shù)
- {
- TMOD = 0X01;//定時(shí)器0設(shè)置工作方式1
- TH0 =55536/256;//定時(shí)器初值
- TL0 =55536%256;//定時(shí)器初值
-
- EA = 1;//打開(kāi)總中斷
- ET0 = 1;//定時(shí)器0打開(kāi)
- TR0 = 1;//定時(shí)器0運(yùn)行
- // WDT_CONTR = 0X31;//看門(mén)狗定時(shí)器在12M晶振時(shí)131ms復(fù)位
- }
- /****************************主函數(shù)******************************/
- void main(void)
- {
- unsigned char m = 0;
- Init();
- Lcd_Init ();
- Lcd_Clear();
-
- Delayms(20);
- Lcd_Set_xy(1,3);
- Lcd_String("Aether Test");
- Lcd_Set_xy(2,1);
- Lcd_String("Value:00 K");
-
- //數(shù)字電位器初始化
- INC = 1;
- CS = 0;
- U_D = 0;
- _nop_();
- for(m=100;m>0;m--)//電位器強(qiáng)制向下滑動(dòng)100級(jí)到最底端
- {
- INC = 0;
- _nop_();
- _nop_();
- INC = 1;
- }
- CS = 1;
- while(1)
- {
- if(FLAG_BUTTON == 1)//按鍵檢測(cè)
- {
- FLAG_BUTTON = 0;
- ……………………
- …………限于本文篇幅 余下代碼請(qǐng)從51黑下載附件…………
復(fù)制代碼
所有資料51hei提供下載:
數(shù)字電位器測(cè)試程序.rar
(41.8 KB, 下載次數(shù): 521)
2017-12-17 10:49 上傳
點(diǎn)擊文件名下載附件
高精度的數(shù)字電位器X9C103.pdf
(176.6 KB, 下載次數(shù): 260)
2017-12-17 10:49 上傳
點(diǎn)擊文件名下載附件
數(shù)字電位器使用說(shuō)明.pdf
(52.92 KB, 下載次數(shù): 279)
2017-12-17 10:49 上傳
點(diǎn)擊文件名下載附件
數(shù)字電位器原理圖.pdf
(100.01 KB, 下載次數(shù): 309)
2017-12-17 10:49 上傳
點(diǎn)擊文件名下載附件
|
評(píng)分
-
查看全部評(píng)分
|