日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

单片机C52系列之(DA)TLC5615

發(fā)布時(shí)間:2024/8/1 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 单片机C52系列之(DA)TLC5615 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

單片機(jī)C52系列之(DA)TLC5615

TLC5615介紹(挑了一些自己覺得有用的介紹)

  • 單5V電源工作;
  • 3線串行接口;
  • 上電時(shí)內(nèi)部自動(dòng)復(fù)位;
  • 10位DAC電路;
  • 推薦工作條件:負(fù)載電阻不得小于2KΩ
  • TLC時(shí)序電路圖
  • 硬件連接(仿真顯示)

    TLC5615輸出正弦波(頻率可變)

    若不想改變頻率可自行刪改

    #include "reg52.h" #include "intrins.h" sbit sclk = P2^0; //串行時(shí)鐘輸入端 sbit cs = P2^1; //芯片選擇,低有效 sbit din = P2^2; //串行二進(jìn)制數(shù)輸入端 sbit key1 = P2^7; //控制頻率的加按鍵 sbit key2 = P2^6; //控制頻率的減按鍵 int code table[]={512,518,525,531,537,543,550,556,562,568,575,581,587,593,599,606,612,618,624,630,636,642,648,654,660,666,672,678,684,690,696,702,708,713,719,725,730,736,742,747,753,758,764,769,775,780,785,791,796,801,806,811,816,821,826,831,836,841,846,850,855,860,864,869,873,878,882,886,891,895,899,903,907,911,915,919,922,926,930,933,937,940,944,947,950,953,957,960,963,966,968,971,974,977,979,982,984,986,989,991,993,995,997,999,1001,1003,1004,1006,1008,1009,1011,1012,1013,1014,1015,1017,1017,1018,1019,1020,1021,1021,1022,1022,1022,1023,1023,1023,1023,1023,1023,1023,1022,1022,1022,1021,1021,1020,1019,1018,1017,1017,1015,1014,1013,1012,1011,1009,1008,1006,1004,1003,1001,999,997,995,993,991,989,986,984,982,979,977,974,971,968,966,963,960,957,953,950,947,944,940,937,933,930,926,922,919,915,911,907,903,899,895,891,886,882,878,873,869,864,860,855,850,846,841,836,831,826,821,816,811,806,801,796,791,785,780,775,769,764,758,753,747,742,736,730,725,719,713,708,702,696,690,684,678,672,666,660,654,648,642,636,630,624,618,612,606,599,593,587,581,575,568,562,556,550,543,537,531,525,518,512,506,499,493,487,481,474,468,462,456,449,443,437,431,425,418,412,406,400,394,388,382,376,370,364,358,352,346,340,334,328,322,316,311,305,299,294,288,282,277,271,266,260,255,249,244,239,233,228,223,218,213,208,203,198,193,188,183,178,174,169,164,160,155,151,146,142,138,133,129,125,121,117,113,109,105,102,98,94,91,87,84,80,77,74,71,67,64,61,58,56,53,50,47,45,42,40,38,35,33,31,29,27,25,23,21,20,18,16,15,13,12,11,10,9,7,7,6,5,4,3,3,2,2,2,1,1,1,1,1,1,1,2,2,2,3,3,4,5,6,7,7,9,10,11,12,13,15,16,18,20,21,23,25,27,29,31,33,35,38,40,42,45,47,50,53,56,58,61,64,67,71,74,77,80,84,87,91,94,98,102,105,109,113,117,121,125,129,133,138,142,146,151,155,160,164,169,174,178,183,188,193,198,203,208,213,218,223,228,233,239,244,249,255,260,266,271,277,282,288,294,299,305,311,316,322,328,334,340,346,352,358,364,370,376,382,388,394,400,406,412,418,425,431,437,443,449,456,462,468,474,481,487,493,499,506,512 }; //正弦波 int val = 1000; //初始值void delay(unsigned int y) {unsigned int x,z;for(x = y;x>0;x--);for(z = 120;z>0;z--); } void key_scan() //按鍵掃描程序 {if(key1==0) //key1按下{delay(10);while(!key1);val+=1000; //頻率加if(val==10000) //上界{val = 1000;}} else if(key2==0) //key2按下{delay(10);while(!key2);val-=100; //頻率減if(val==100) //下界{val = 1000;}}}void DAC( unsigned int val) {int a;cs = 0;val <<= 6;for(a = 0;a<12;a++) //從高到低發(fā)送{sclk = 1;_nop_();_nop_();if((val&0x8000) != 0) //判斷是否有數(shù)據(jù)輸入{din = 1; //信號1寫入芯片}else din = 0; //信號0寫入芯片_nop_();_nop_();val <<= 1;sclk = 0; //開啟下一個(gè)數(shù)據(jù)寫入}cs = 1;//芯片關(guān)閉 } void main() {TMOD = 0x01;TH0 = (65536 - val)/256;TL0 = (65536 - val)%256;TR0 = 1;ET0 = 1;EA = 1;while(1){ key_scan();} } void Timer0_isr() interrupt 1 {int i;TH0 = (65536 - val)/256;TL0 = (65536 - val)%256;DAC(table[i++]);if(i>512) i = 0; }

    TLC5615輸出三角波

    void sanjiaobo() //三角波 {unsigned int i;for(i = 0;i < 200;i++){DAC(i); //上}for(i=200;i>0;i--){DAC(i); //下} }
    • TLC5615周期取值方法(我這里一個(gè)周期采了512個(gè)點(diǎn))
    • 用EXCEL公式 =INT(SIN( A2 *2 * 3.1415926)/512) * 512+0.5)
    • TLC5615判斷最高頻率或最低頻率
    • KEIL5先設(shè)置系統(tǒng)時(shí)鐘為12MHZ
    • 運(yùn)行DEBUG,觀察左側(cè)SEC的差值
    • 用差值乘以采樣的數(shù)值算出來的值是被測信號最低時(shí)刻的周期
    • 再把所設(shè)變量數(shù)值加到最大再次運(yùn)行DUBUG得出來的是最高時(shí)刻的周期

    總結(jié)

    以上是生活随笔為你收集整理的单片机C52系列之(DA)TLC5615的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。