TLC5615芯片帶10位DAC 雙極性板資料V2017
0.png (42.41 KB, 下載次數: 136)
下載附件
2017-7-27 18:47 上傳
TLC5615的原理圖:
0.png (144.67 KB, 下載次數: 126)
下載附件
2017-7-27 18:47 上傳
TLC5615大量參考資料:
0.png (16.01 KB, 下載次數: 117)
下載附件
2017-7-27 18:48 上傳
示范例程包含51單片機 stm32和avr單片機的源程序
TLC5615 Sine 1024 51單片機源程序如下:
- /************************************************************************************
- 【中文名】水星電子科技
- 【英文名】Mercury Electronics Technology
- 【店鋪網址】選購您喜愛的寶貝,歡迎。
- 【服務承諾】如實描述,真實可信,拒絕一切虛標。專業開發,優質服務,提供高品質各類電子模塊。
- 【版權聲明】原創程序,僅限學習交流,禁止商業應用。引用請注明版權和作者信息!
- 【作者】leaf
- 【修改日期】09.13
- 感謝支持原創設計。!
- ************************************************************************************/
- /************************************************************************************
- 【配套產品】
- 1.TLC5615 DA模塊
- 2.TLC5615 正弦波模塊
- 【程序功能】TLC5615輸出1024點正弦波
- 【適應芯片】
- STC89C52RC
- STC89LE52RC
- STC12C5A60S2
- STC12LE5A60S2均兼容。
- 對于其他型號的芯片,修改IO配置即可。
- 【晶振頻率】
- 4-24M任意頻率(不得超過對應的MCU型號最高頻率均可),僅僅是運行速度不同。
- 【操作說明】
- 主芯片:STC89C52RC,11.0592M,約30HZ.
- 主芯片:STC12C5A60S2,22.1184M晶振,約160HZ。
- 其他頻率可自行更換晶振和調節參數實現!
- 【注意事項】
- 1.LED連接時,不能使用P1口的ADC功能(STC12)。如通過排針引出其他功能,也請注意LED可能造成的干擾。
- 2.TLC5615 DA模塊本身必須使用5V電源,控制信號可以接受3.3V或者5V。
- 3.請注意極性!
- 【IO配置】
- DIN ---> P1.0
- SCLK ---> P1.1
- CS ---> P1.2
- Dout ---> 空,未定義
- ************************************************************************************/
- #include<reg52.h> //包含51單片機寄存器定義的頭文件
- #include<intrins.h> //包含nop函數的頭文件
- #define uchar unsigned char //宏定義
- #define uint unsigned int //宏定義
- sbit DIN =P1^0; //IO定義
- sbit SCLK =P1^1;
- sbit CS =P1^2;
- uint code sin1[1024]= //1024點12位數據的正弦波表
- {
- 0x1FF,0x202,0x205,0x208,0x20C,0x20F,0x212,0x215,0x218,0x21B,0x21E,0x221,0x225,0x228,0x22B,0x22E
- ,0x231,0x234,0x237,0x23A,0x23E,0x241,0x244,0x247,0x24A,0x24D,0x250,0x253,0x256,0x25A,0x25D,0x260
- …………限于本文篇幅 余下代碼請從51黑下載附件…………
- ,0x16B,0x16E,0x171,0x174,0x177,0x17A,0x17D,0x180,0x183,0x186,0x189,0x18C,0x18F,0x192,0x195,0x198
- ,0x19B,0x19E,0x1A1,0x1A4,0x1A8,0x1AB,0x1AE,0x1B1,0x1B4,0x1B7,0x1BA,0x1BD,0x1C0,0x1C4,0x1C7,0x1CA
- ,0x1CD,0x1D0,0x1D3,0x1D6,0x1D9,0x1DD,0x1E0,0x1E3,0x1E6,0x1E9,0x1EC,0x1EF,0x1F2,0x1F6,0x1F9,0x1FC};
- void delay_us(unsigned char n) //us級延時函數
- {
- unsigned char i;
- for(i=0;i<n;i++);
- }
- /******************************************************************
- 1.sclk的上升沿數據進入輸入寄存器
- 2.在sclk為低的時候,CS的上升沿數據開始DA轉化
- 3.連續輸入12位數據,高位在前,其中前10位有效,后兩位補0
- ***************************************************************/
- void output(uint DA_Value) //TLC5615驅動函數
- {
- unsigned char i;
- DA_Value=DA_Value<<6; //將DA_Value左移6位,即nnnn nnnn nnnn變為nnnn nnnn nn00 0000
-
- SCLK=0; //為低,準備輸入數據
- CS=0; //片選
- for(i=12;i>0;i--) //從高位開始,連續取出12位數據,
- {
- if(DA_Value&0x8000) //和1000 0000 0000 0000 求與,獲取最高位的值。
- DIN=1;
- else
- DIN=0;
- SCLK=1; //上升沿,進入輸入寄存器
- SCLK=0; //準備下一次輸入
- DA_Value=DA_Value<<1; //左移1位,準備輸入下一位數據
- }
- CS=1; //在sclk為低的時候,CS上升沿,數據開始DA轉化
- }
- void main()
- {
- uint i;
- while(1)
- {
- i=0;
- for(i=0;i<1023;i++) //連續取出1024點正弦數據
- output(sin1[i]); //輸出正弦波
-
- }
- ……………………
- …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼
所有資料51hei提供下載(stm32和avr代碼都有完整版):
TLC5615 10位DAC 雙極性板資料V2017.03.17.rar
(6.56 MB, 下載次數: 217)
2017-7-27 18:55 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|