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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5873|回復: 2
收起左側

基于51單片機的DAC0832 A/D轉換輸出4種波形

[復制鏈接]
ID:150019 發表于 2016-11-25 16:27 | 顯示全部樓層 |閱讀模式
)3APVLG~U35FJLBYHP2GS{T.png

0.png
所有設計資料下載:
DAC0832數模轉換.zip (84.94 KB, 下載次數: 111)

本設計主要用到DAC0832等芯片,輸出四種波形,另外帶有數碼管計數波形個數。
另外主程序
#include <reg52.h>        
#include <stdio.h>
#include <math.h>      
#include <ABSACC.H>         
#define DAC0832Addr0 0x7FFF                                          //DAC0832地址  
                                         //0111 1111
#define DAC0832Addr1 0xBFFF                                          //DAC0832地址
                                         //1011 1111  
#define DAC0832Addr2 0xDFFF                                          //DAC0832地址
                                         //1101 1111
#define DAC0832Addr3 0xEFFF                                          //DAC0832地址
                                         //1110 1111  
#define DAC0832Addr 0xF7FF                                          //DAC0832地址
                                         //1111 0111
char code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; //數碼管顯示0~9
#define uchar unsigned char                                                //uchar代表無符號字符   
#define uint unsigned int  
//sbit P10=P1^0;
sbit P21=P2^1;
sbit P22=P2^2;                               //unit代表無符號整型數據類型                                                      
void TransformData(int i,uchar c0832data);                                //數/模轉換函數                  
void Delay();
//void play();                                                                        //延時函數                  
main()
{   
    int i;                                    
    uchar cDigital=0;
        uint x=0,ge,shi;
//   Uart_Init();
        P0=0xFF;                                                                        //I/O口初始化0xFF
        P1=0xFF;
        P2=0xFF;
        P3=0xFF;
        Delay();                  
                                                            
        while(1)              
        {        
                for(i=0;i<5;i++)                //產生鋸齒波
                {
                    for(cDigital=0;cDigital<255;cDigital++)        //產生三角波上升沿        
                       {                       
                Delay();                          
                        TransformData(0,cDigital);         
                                             
                                   TransformData(1,cDigital);
                                if(cDigital>128)
                                {
                                                TransformData(1,255-cDigital);        
                                }   
                          
                            if(cDigital<128)   
                                {                 
                                        TransformData(2,122);  
                                }            
                                else         
                                {         
                                           TransformData(2,0);   
                                }                                             
                                    
                            if(cDigital<128)         
                                {                                   
                                        TransformData(3,125*sin((float)cDigital/255*3.14*2)-127);  
                                }
                                               
                                else                                 
                                {              
                                           TransformData(3,128*sin((float)cDigital/255*3.14*2)+127);  
                                }
//                                    
                                TransformData(4,cDigital);
                                if(cDigital==254)
                                {
                                        x++;
                                }
                                if(x==254)
                                {
                                        x=0;
                                }
                                ge=x%10;
                                shi=x/10;
                                P1=table[ge];
                                P22=1;  
                                Delay();
                                P22=1;
                                P1=table[shi];
                                P21=1;
                                Delay();
                                P21=0;
                                                                     
            }         }                          
}                                                                     
void TransformData(int i,uchar c0832data)                                //數/模轉換函數
{                        
    //*((uchar xdata*)DAC0832Addr0)=c0832data;
        switch(i)                 
        {                        
           case 0: *((uchar xdata*)DAC0832Addr0)=c0832data;           break;
           case 1: *((uchar xdata*)DAC0832Addr1)=c0832data;           break;
           case 2: *((uchar xdata*)DAC0832Addr2)=c0832data;           break;
           case 3: *((uchar xdata*)DAC0832Addr3)=c0832data;           break;
           case 4: *((uchar xdata*)DAC0832Addr)=c0832data;                   break;
        }      
}  
                                                           
void Delay()                                                                        //延時1ms
{                                   
    uint i;        
           for (i=0;i<250;i++) ;         
}

評分

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

查看全部評分

回復

使用道具 舉報

ID:362266 發表于 2018-6-30 14:24 | 顯示全部樓層
我想下載這個
回復

使用道具 舉報

ID:638700 發表于 2019-11-28 13:22 | 顯示全部樓層
壓縮文件格式未知或已損壞..
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美专区在线观看 | 国产精品久久久久久婷婷天堂 | 精品欧美 | 国产在线一区二区三区 | 日韩免费一区二区 | 国产精品精品久久久久久 | 日本久久网 | 国产一区二区三区四区 | 天天插天天舔 | 亚洲免费在线 | 日韩成人在线观看 | 日韩三区 | 亚洲成a | 亚洲啊v在线| 免费久久99精品国产婷婷六月 | 国产一区二区精品在线观看 | 色资源在线观看 | 亚洲电影第1页 | 中文在线a在线 | 国产精品一区网站 | 精品在线观看入口 | a级黄色片视频 | 成人一区在线观看 | 中文字幕亚洲视频 | 免费视频一区二区 | 亚洲第一黄色网 | 久久精品亚洲一区二区三区浴池 | 在线播放一区二区三区 | 91精品国产91久久久久久丝袜 | 一级毛片免费 | 国产精品美女久久久久aⅴ国产馆 | 亚洲精品在线免费播放 | 国产高清av免费观看 | 日韩欧美国产精品一区二区三区 | 成人精品鲁一区一区二区 | 成人在线一区二区三区 | 免费能直接在线观看黄的视频 | 激情91 | 91网站在线观看视频 | 狠狠操婷婷 | 国产精品久久久久久久免费大片 |