• 大小: 228KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-06-01
  • 语言: C/C++
  • 标签: DAC0832  仿真  程序  

资源简介

51写的波形发生器仿真程序,里面有protues电路图和C语言程序,开关切换波形。含有正弦波、三角波、锯齿波、方波等波形、

资源截图

代码片段和文件信息

#include 
#include  
#include  

#define DAC0832 XBYTE[0x7fff]   
#define   pi     3.14
sbit k1 = P1 ^ 0;
sbit k2 = P1 ^ 1;
sbit k3 = P1 ^ 2;
sbit k4 = P1 ^ 3;
sbit k5 = P1 ^ 4;

sbit k6 = P1 ^ 5;
sbit k7 = P1 ^ 6;

int flag1 = 0;
int flag2 = 0;
int flag3 = 0;
int flag4 = 0;
int flag5 = 0;

int flag6 = 0;
int flag7 = 0;
int zhengxian(int i)
{
    int j;

    float T;
    j = i;
    T = pi * j / 32;
    T = 100 * sin(T) + 100;
    return (int) T;
}
int zhengxian_1(int i)
{
    int j;

    float T;
    j = i;
    T = pi * j / 32;
    T = 100 * sin(2*T) + 100;
    return (int) T;
}
int zhengxian_2(int i)
{
    int j;

    float T;
    j = i;
    T = pi * j / 32;
    T = 100 * sin(4*T) + 100;
    return (int) T;
}
void delay()            //延时程序
{
    int i;
    for (i = 0; i < 1000; i++)
        ;
}
void panduan(void)   //函数panduan用于扫描按键状态,判断输出波形 
{
    if (k1 == 0)
    {    //按键消抖      

        flag1 = 1;
        flag2 = 0;
        flag3 = 0;
        flag4 = 0;
        flag5 = 0;
flag6 = 0;
        flag7 = 0;
    }
    if (k2 == 0)
    {

        flag1 = 0;
        flag2 = 1;
        flag3 = 0;
        flag4 = 0;
        flag5 = 0;
flag6 = 0;
        flag7 = 0;
    }
    if (k3 == 0)
    {
        flag1 = 0;
        flag2 = 0;
        flag3 = 1;
        flag4 = 0;
        flag5 = 0;
flag6 = 0;
        flag7 = 0;
    }
    if (k4 == 0)
    {
        flag1 = 0;
        flag2 = 0;
        flag3 = 0;
        flag4 = 1;
        flag5 = 0;
flag6 = 0;
        flag7 = 0;
    }
    if (k5 == 0)
    {
        flag1 = 0;
        flag2 = 0;
        flag3 = 0;
        flag4 = 0;
        flag5 = 1;
flag6 = 0;
        flag7 = 0;
    }
if (k6 == 0)
    {
        flag1 = 0;
        flag2 = 0;
        flag3 = 0;
        flag4 = 0;
        flag5 = 0;
flag6 = 1;
        flag7 = 0;
    }
if (k7 == 0)
    {
        flag1 = 0;
        flag2 = 0;
        flag3 = 0;
        flag4 = 0;
        flag5 = 0;
flag6 = 0;
        flag7 = 1;
    }
}
void boxing(void)      //函数boxing用于产生选择好的波形 
{
    if (flag1 == 1)            //产生方波     
    {
        DAC0832=0x00;
        delay();
        DAC0832=0xff;
        delay();
    }
    else if(flag2==1)       //产生正弦波    
    {   int i;
        for(i=0;i<256;i++)
        {   DAC0832=(int)zhengxian(i);}
    }
    else if(flag3==1)       //三角波    
    {   int i;
        for(i=0;i<=255;i++)
        DAC0832=i;
        for(i=255;i>=0;i--)
        DAC0832=i;}
    else if(flag4==1)     //梯形波    
    {   int i;
        for(i=0;i<=255;i++)
        DAC0832=0;
        for(i=0;i<=255;i++)
        DAC0832=i;
        for(i=255;i>=0;i--)
        DAC0832=0XFF;
        for(i=255;i>=0;i--)
        DAC0832=i;
    }
    else if(flag5==1)        //锯齿波      
    {   int i;
        for(i=0;i<=255;i++)
        DAC0832=i;
    }
else if(flag6==1)        

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2018-05-31 15:11  51黑论坛_DAC0832\
     目录           0  2018-05-31 16:00  51黑论坛_DAC0832\DAC0832\
     文件       22479  2018-05-31 15:47  51黑论坛_DAC0832\DAC0832\Backup Of zhangjisingba.pdsbak
     文件       22732  2018-05-31 15:53  51黑论坛_DAC0832\DAC0832\Last Loaded last.pdsbak
     文件      126642  2017-01-06 15:22  51黑论坛_DAC0832\DAC0832\Last Loaded zhangjisingba.DBK
     文件      116183  2016-12-24 12:59  51黑论坛_DAC0832\DAC0832\Last Loaded 长记性吧.DBK
     文件       23550  2018-05-31 16:00  51黑论坛_DAC0832\DAC0832\last.pdsprj
     文件        2312  2018-05-31 16:02  51黑论坛_DAC0832\DAC0832\last.pdsprj.ANOOP.PC1.workspace
     文件      135943  2017-05-22 12:52  51黑论坛_DAC0832\DAC0832\zhangjisingba.DSN
     文件        1174  2017-05-22 12:52  51黑论坛_DAC0832\DAC0832\zhangjisingba.PWI
     文件       22734  2018-05-31 15:53  51黑论坛_DAC0832\DAC0832\zhangjisingba.pdsprj
     文件        2105  2018-05-31 15:47  51黑论坛_DAC0832\DAC0832\zhangjisingba.pdsprj.ANOOP.PC1.workspace
     文件         766  2016-12-25 23:04  51黑论坛_DAC0832\DAC0832\长记性吧.PWI
     文件       20124  2018-05-31 15:17  51黑论坛_DAC0832\DAC0832\长记性吧.pdsprj
     文件        2359  2018-05-31 15:17  51黑论坛_DAC0832\DAC0832\长记性吧.pdsprj.ANOOP.PC1.workspace
     文件        1185  2016-12-24 14:35  51黑论坛_DAC0832\DAC0832\长记性吧.pdsprj.USER-20161220CF.Administrator.workspace
     目录           0  2018-05-31 15:11  51黑论坛_DAC0832C\
     目录           0  2018-05-31 16:27  51黑论坛_DAC0832C\DAC0832C\
     文件        6376  2009-05-07 14:37  51黑论坛_DAC0832C\DAC0832C\STARTUP.A51
     文件       14051  2018-05-31 16:27  51黑论坛_DAC0832C\DAC0832C\STARTUP.LST
     文件         749  2018-05-31 16:27  51黑论坛_DAC0832C\DAC0832C\STARTUP.OBJ
     文件        7309  2018-05-31 16:27  51黑论坛_DAC0832C\DAC0832C\chengxv.LST
     文件        8398  2018-05-31 16:27  51黑论坛_DAC0832C\DAC0832C\chengxv.OBJ
     文件       19151  2018-05-31 16:27  51黑论坛_DAC0832C\DAC0832C\chengxv.SRC
     文件          57  2018-05-31 16:27  51黑论坛_DAC0832C\DAC0832C\chengxv.__i
     文件        3415  2018-05-31 15:59  51黑论坛_DAC0832C\DAC0832C\chengxv.c
     文件       70161  2018-05-31 16:27  51黑论坛_DAC0832C\DAC0832C\chengxv.ls1
     文件        5761  2018-05-31 16:27  51黑论坛_DAC0832C\DAC0832C\加油
     文件       31282  2018-05-31 16:27  51黑论坛_DAC0832C\DAC0832C\加油.M51
     文件        2602  2018-05-31 16:27  51黑论坛_DAC0832C\DAC0832C\加油.hex
     文件          44  2018-05-31 16:27  51黑论坛_DAC0832C\DAC0832C\加油.lnp
............此处省略5个文件信息

评论

共有 条评论