欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2981|回復: 1
收起左側

單片機DA10位TLC5615-SPI電機調速-輸出三角鋸齒正弦波源程序Proteus仿真圖

[復制鏈接]
ID:808939 發表于 2021-7-19 15:03 | 顯示全部樓層 |閱讀模式
       本次實驗實現了三角波、鋸齒波、正弦波的轉換。并且通過本次實驗可以了解DA10位TLC5615芯片的運用。
  • 單5V電源工作;
  • 3線串行接口;
  • 上電時內部自動復位;
  • 10位DAC電路;
  • 推薦工作條件:負載電阻不得小于2KΩ
  • TLC時序電路圖
1.png
       TLC5615周期取值方法(我這里一個周期采了512個點)
       用EXCEL公式 =INT(SIN( A2 *2 * 3.1415926)/512) * 512+0.5)
       TLC5615判斷最高頻率或最低頻率
       KEIL5先設置系統時鐘為12MHZ
       運行DEBUG,觀察左側SEC的差值
       用差值乘以采樣的數值算出來的值是被測信號最低時刻的周期
       再把所設變量數值加到最大再次運行DUBUG得出來的是最高時刻的周

仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
要求修改實現三角波、鋸齒波、正弦波.png 51hei.gif
51hei.png
單片機源程序如下:
  1. #include "reg51.h"
  2. #include "math.h"
  3. #define u8 unsigned char//0--255
  4. #define u16 unsigned int//0--665535

  5. sbit DA_CLK=P3^5;
  6. sbit DA_CS=P3^6;
  7. sbit DA_DAT=P3^7;
  8. u8 j=0,i=0;
  9. u8 tab[]={           //此數組內的數據為,da輸出對應電壓值對應的數字量,0是0V,255是5V
  10. 135,145,158,167,176,188,199,209,218,226,234,240,245,249,252,254,254,253,251,247,243,237,230,222,213,204,193,182,170,158,
  11. 146,133,121,108,96,84,72,61,50,41,32,24,17,11,7,3,1,0,0,2,5,9,14,20,28,36,45,55,66,78,90,102,114,128
  12. };  
  13. u16 da;
  14. void delay16(u8 i){while(i--);}

  15. void WriteDA(u16 dat)//寫入0到482的數,控制輸出電壓0-4.71V
  16. {
  17.         u8 i;
  18.         DA_CS=0;
  19.         dat<<=2;//TLC5615的低2位無效
  20.         for(i=0;i<12;i++)
  21.         {
  22.                 DA_CLK=0;
  23.                 DA_DAT=(dat&0x0800)?1:0;
  24.                 DA_CLK=1;
  25.                 dat<<=1;
  26.                 DA_CLK=0;
  27.         }
  28.         DA_CS=1;
  29. }

  30. //void getSinTab(u8 point,u16 maxnum)
  31. //{
  32. //        float x;
  33. //        float jiao;
  34. //        jiao=360.000/point;
  35. //        for(i=0;i<point;i++)
  36. //{
  37. //        x=jiao*i; //得到角度值
  38. //        x=x*(3.14/180); //角度轉弧度  弧度=角度*(π/180)
  39. //        tab[i]=(maxnum/2)*sin(x)+(maxnum/2); // tab[i] 為得到的正弦波數據,用于送給DA輸出。
  40. //}
  41. //}
  42. void main()
  43. {
  44.         EA=1;
  45.         IT0=1;
  46.   EX0=1;
  47. //  getSinTab(64,1024);
  48.         while(1)
  49.         {
  50.                 if(j==0)
  51.                         {WriteDA(da++);
  52.                                 if(da>482)da=0;//Vout=2*5V*da/1024。實際輸出最大為4.6V到4.7V
  53.                                 delay16(1000);}
  54.                 if(j==2)
  55.                         {
  56.                                 u16 k;
  57.                                 for(k=0;k<64;k++)
  58.                                         {
  59. //                   tab[k]<<=6;
  60.                                                 WriteDA(tab[k]);
  61.                                         }
  62.                         }
  63.                 if(j==1)
  64.                         {
  65.                                         u16 up;
  66.                                         for(up=0;up<200;up++)
  67.                                                 {
  68.                                                         WriteDA(up);
  69.                                                 }
  70.                                         for(up=200;up>0;up--)
  71.                                                 {
  72.                                                         WriteDA(up);
  73.                                                 }
  74.                         }
  75.         }
  76. }

  77. void INT() interrupt 0
  78. {
  79.         if(j<=1) j++;
  80.         else j=0;
  81. }
  82. //TLC5615最大輸出電壓為VDD-0.4V。5V的邏輯電平最大輸入電壓為4.6V,參考電壓Vref輸入必須在0~2.3V范圍之內
  83. //SPI最大傳輸速度為1.21MHz,DA轉換時間12.5us,故一次寫入數據(CS引腳從低電平至高電平跳躍)后須延時15us左右才可第二次刷入數據
復制代碼
51hei.png
所有資料51hei提供下載:
DA10位TLC5615-SPI電機調速-輸出三角鋸齒正弦波.7z (367.48 KB, 下載次數: 29)

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

回復

使用道具 舉報

ID:95059 發表于 2021-7-21 15:39 | 顯示全部樓層
用Proteus8.8才能打開嗎?
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表