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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5566|回復: 4
收起左側

51單片機+DAC0832可調幅度及頻率信號發生器程序+Proteus仿真設計

[復制鏈接]
ID:507900 發表于 2019-4-13 13:46 | 顯示全部樓層 |閱讀模式
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
捕獲5.PNG 0.png

單片機源程序如下:
  1. //文件、端口定義、程序開始
  2. #include<reg51.h>
  3. #define uchar unsigned char
  4. #define uint unsigned int
  5. sbit SQU_K=P1^4;                 //開關接口定義
  6. sbit SAW_K=P1^5;
  7. sbit TRI_K=P1^6;
  8. sbit SIN_K=P1^7;               
  9. sbit SQU_L=P1^0;
  10. sbit SAW_L=P1^1;
  11. sbit TRI_L=P1^2;
  12. sbit SIN_L=P1^3;               
  13. sbit ST=P3^0;                          //0808接口定義
  14. sbit EOC=P3^3;
  15. sbit OE=P3^4;
  16. sbit CS=P3^2;                 //0832接口定義
  17. sbit W_R=P3^6;
  18. uchar code sin_tab[]={0,0,0,0,1,1,2,3,4,5,6,8,
  19.                                           9,11,13,15,17,19,22,24,
  20.                                           27,30,33,36,39,42,46,49,
  21.                                           53,56,60,64,68,72,76,80,
  22.                                           84,88,92,97,101,105,110,114,
  23.                                           119,123,128,132,136,141,145,150,
  24.                                           154,158,163,167,171,175,179,183,
  25.                                           187,191,195,199,202,206,209,213,
  26.                                           216,219,222,225,228,231,233,236,
  27.                                           238,240,242,244,246,247,249,250,
  28.                                           251,252,253,254,254,255,255,255
  29.                                           };
  30. //讀ADC0808子程序
  31. unsigned char adc0808(void)
  32. {        
  33.                 uchar dat,i;
  34.                 ST=0;
  35.                 ST=1;
  36.                 ST=0;
  37.                 for(i=10;i>0;i--)
  38.                 while(!EOC);
  39.                 OE=1;
  40.                 dat=P2;
  41.                 return(dat);
  42. }
  43. //方波發生函數
  44. void square()
  45. {
  46.         uchar a,b;
  47.         for(a=0;a<127;a++)
  48.         {
  49.                 P0=0xff;
  50.                 P2=0xff;
  51.                 b=adc0808();
  52.                 b=~b;
  53.                 while(b--);                        //調節相位,b的變化越大,相位變化越小
  54.         }
  55.         for(a=0;a<127;a++)
  56.         {
  57.                 P0=0;
  58.                 P2=0xff;
  59.                 b=adc0808();
  60.                 b=~b;
  61.                 while(b--);
  62.         }
  63. }
  64. //鋸齒波發生函數
  65. void sawtooth()
  66. {
  67.         uchar a,b;
  68.         for(a=0;a<255;a++)
  69.         {        
  70.                 P0=a;
  71.                 P2=0xff;
  72.                 b=adc0808();
  73.                 b=~b;
  74.                 while(b--);
  75.         }
  76. }
  77. //三角波發生函數
  78. void triang()
  79. {
  80.         uchar a,b;
  81.         for(a=0;a<254;a=a+2)
  82.         {
  83.                 P0=a;
  84.                 P2=0xff;
  85.                 b=adc0808();
  86.                 b=~b;
  87.                 while(b--);
  88.         }
  89.         for(a;a>1;a=a-2)
  90.         {
  91.                 P0=a;
  92.                 P2=0xff;
  93.                 b=adc0808();
  94.                 b=~b;
  95.                 while(b--);
  96.         }
  97. }
  98. //正弦波發生函數
  99. void sinwave()
  100. {
  101.         uchar a,b;
  102.         for(a=0;a<92;a++)
  103.         {
  104.                 P0=sin_tab[a];
  105.                 P2=0xff;
  106.                 b=adc0808();
  107.                 b=~b;
  108.                 while(b--);
  109.         }
  110.         for(a=a-1;a>0;a--)
  111.         {
  112.                 P0=sin_tab[a];
  113.                 P2=0xff;
  114.                 b=adc0808();
  115.                 b=~b;
  116.                 while(b--);
  117.         }
  118. }
  119. //主函數
復制代碼
全部資料51hei下載地址:
信號發生器.zip (969.18 KB, 下載次數: 245)

評分

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

查看全部評分

回復

使用道具 舉報

ID:772673 發表于 2020-6-17 16:46 | 顯示全部樓層
沒有仿真圖啊
回復

使用道具 舉報

ID:507900 發表于 2020-6-19 16:33 | 顯示全部樓層

把程序燒進去仿真
回復

使用道具 舉報

ID:944517 發表于 2021-6-25 10:50 來自觸屏版 | 顯示全部樓層
Leawon 發表于 2020-6-19 16:33
把程序燒進去仿真

感謝感謝感謝
回復

使用道具 舉報

ID:235285 發表于 2022-3-4 10:11 | 顯示全部樓層
非常棒哦,是自己想要的
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

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