久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 9153|回復: 1
打印 上一主題 下一主題
收起左側

TLV5618 DA轉換驅動程序

[復制鏈接]
跳轉到指定樓層
樓主
ID:71407 發表于 2015-1-1 17:25 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
下面是基于STC系列單片機的TLV5618驅動程序,該程序的硬件是基于5V供電的,參考電壓為2.5V,編譯環境為KEIL C,已調試成功。
  1. //=====================================================================
  2. //                    TLV5618 DA轉換驅動程序
  3. //硬件連接: DIN ——P0^0;  
  4. //          SCLK ——P0^1;   
  5. //          CS   ——P0^2;      
  6. //          VDD --邏輯電源(+5V)
  7. //          AGND --GND(0V)

  8. //說明   參考電壓為0—3.5V,本程序為2.5V
  9. //       輸出模擬電壓為:V=2*Vref*(dignum/0x1000) 注:dignum后四位為:0x0000~~0x0fff
  10. //注意: 所需輸入的數字信號值為16位數,其中D15~~D12為特殊位設置,D11~~D0為數據位000~~fff


  11. #include <STC89C51RC.h>      //STC單片機頭文件
  12. #include <intrins.h>
  13. #define uint unsigned int
  14. #define uchar unsigned char
  15. #define Channal_A     1    //通道A
  16. #define Channal_B     2    //通道B
  17. #define Channal_AB    3    //通道A&B
  18. //**************************一下為函數聲明修**************************************
  19. static void DA_conver(uint Dignum);
  20. extern void Write_A_B(uint Data_A,uint Data_B,uchar Channal,bit Model);
  21. //**************************修改硬件時要修改的部分********************************
  22. sbit DIN   = P0^0;     //數據輸入端
  23. sbit SCLK = P0^1;     //時鐘信號
  24. sbit CS    = P0^2;     //片選輸入端,低電平有效
  25. //=================================================================
  26. // 函數名稱 :void DA_conver(uint Dignum)
  27. // 函數功能 :進行DA轉換
  28. // 入口參數 :Dignum:根據說明設置轉化數據.頭四位為特殊位用于選擇轉化方式,
  29. //            以及用于通道選擇.請自行設置.后12位為需要轉換的值
  30. // 出口參數 :無
  31. //=================================================================
  32. void DA_conver(uint Dignum)
  33. {
  34. uint Dig=0;
  35. uchar i=0;
  36. SCLK=1;
  37. CS=0;           //片選有效
  38. for(i=0;i<16;i++)   //寫入16為Bit的控制位和數據
  39. {
  40.    Dig=Dignum&0x8000;
  41.    if(Dig)
  42.    {
  43.     DIN=1;
  44.    }
  45.    else
  46.    {
  47.     DIN=0;
  48.    }
  49.    SCLK=0;
  50.    _nop_();
  51.    Dignum<<=1;
  52.    SCLK=1;
  53.    _nop_();
  54. }
  55. SCLK=1;
  56. CS=1;       //片選無效
  57. }
  58. //=================================================================
  59. // 函數名稱 :void Write_A_B(uint Data_A,uint Data_B,uchar Channal,bit Model)
  60. // 函數功能 :模式、通道選擇并進行DA轉換
  61. // 入口參數 :Data_A:A通道轉換的電壓值
  62. //            Data_B:B通道轉換的電壓值
  63. //            Channal:通道選擇,其值為Channal_A,Channal_B,或Channal_AB
  64. //            Model:速度控制位 0:slow mode 1:fast mode
  65. // 出口參數 :無
  66. // 說明:     Data_A,Data_B的范圍為:0—0x0fff
  67. //            本程序如果只需要一個通道時,另外一個通道的值可任意,但是不能缺省
  68. //=================================================================
  69. void Write_A_B(uint Data_A,uint Data_B,uchar Channal,bit Model)
  70. {
  71. uint Temp;
  72. if(Model)
  73. {
  74.    Temp=0x4000;
  75. }
  76. else
  77.     {
  78.    Temp=0x0000;
  79. }
  80. switch(Channal)
  81. {
  82.     case Channal_A:         //A通道
  83.          DA_conver(Temp|0x8000|(0x0fff&Data_A));
  84.       break;
  85.     case Channal_B:       //B通道
  86.          DA_conver(Temp|0x0000|(0x0fff&Data_B));
  87.     break;
  88.     case Channal_AB:
  89.          DA_conver(Temp|0x1000|(0x0fff&Data_B));        //A&B通道
  90.          DA_conver(Temp|0x8000|(0x0fff&Data_A));
  91.     break;
  92.     default:
  93.          break;
  94. }
  95. }
  96. //=================================================================
  97. // 函數名稱 :int main(void)
  98. // 函數功能 :主函數,無實際意義,僅測試TLV5618用
  99. // 入口參數 :無 1-A;2-B;3-A&B
  100. // 出口參數 :無
  101. //=================================================================
  102. int main(void)
  103. {
  104.    Write_A_B(0x0355,0x0000,Channal_A,0);   //測量A通道
  105.    Write_A_B(0x0000,0x0600,Channal_B,1);   //測量B通道
  106. // Write_A_B(0x0504,0x0a47,Channal_AB,1);   //測量AB通道,測量時需屏蔽上面兩句
  107.    while(1);
  108. }
復制代碼



分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:382697 發表于 2018-8-6 21:00 | 只看該作者
大佬用過tlv2548這款ad芯片嗎
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 羞羞的视频免费在线观看 | 亚洲视频a| 欧美一区二区久久 | 九色www| 久久久久国产 | 亚洲色图图片 | 国产亚洲精品久久情网 | 久热中文字幕 | 日韩在线视频免费观看 | 蜜桃毛片 | 亚洲一区二区三区在线免费 | 狠狠夜夜 | 国产一区二区精品在线 | 国产区一区 | 亚洲国产精品久久久久秋霞不卡 | 国产精品久久久久一区二区三区 | 久久99精品久久久久久秒播九色 | 韩国精品在线观看 | 欧美日韩综合 | 欧美一级片在线观看 | 亚洲国产精品自拍 | 亚洲国产精品久久久 | 日本亚洲一区二区 | 一级黄色毛片子 | 日韩欧美在线免费观看视频 | 国产91一区二区三区 | 国产一级片免费在线观看 | 日本一区二区影视 | 在线成人免费视频 | 精品免费视频 | 亚洲精品电影网在线观看 | 国产亚洲精品精品国产亚洲综合 | 五月激情综合 | 无毛av| 精品日韩电影 | 亚洲黄色av | 中文视频在线 | 亚洲精品免费在线观看 | 爱综合 | a视频在线播放 | 久久精品av麻豆的观看方式 |