找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 3959|回復(fù): 2
收起左側(cè)

DAC0832函數(shù)信號(hào)發(fā)生器proteus仿真與單片機(jī)源碼

[復(fù)制鏈接]
ID:309083 發(fā)表于 2018-4-17 21:09 | 顯示全部樓層 |閱讀模式
函數(shù)信號(hào)發(fā)生器DA8032帶proteus框圖

DAC0832仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
0.png

0.png

單片機(jī)源程序如下:
  1. #include <reg51.h>
  2. #include "timer.h"

  3. #define uint unsigned int
  4. #define uchar unsigned char
  5. sbit key1=P3^0;
  6. unsigned int keytime=0;
  7. unsigned char i;
  8. void delayms(uint x)
  9. {
  10. uint i,j;
  11. for(i=x;i>0;i--)
  12. for(j=110;j>0;j--);
  13. }
  14. void set_key()
  15. {
  16.     if(key1 == 0)
  17.     {
  18.        delayms(3);
  19.                  if(key1 == 0)
  20.            keytime += 1;
  21.         if(keytime == 4)
  22.         {      
  23.             keytime = 0;
  24.         }
  25.     }
  26. }
  27. void Timer0_Init(void)
  28. {
  29. TMOD = 0x01;
  30. TH0 = 0xff;
  31. TL0 =0xb2;
  32. TR0 = 1;
  33. ET0 = 1;
  34. EA =1;
  35. }
  36. void main()
  37. {
  38. Timer0_Init();
  39. while(1)
  40. {
  41. set_key();
  42. }
  43. }

  44. void Timer0_Int(void) interrupt 1
  45. {
  46. TH0 = 0xff;
  47. TL0 =0xb2;
  48. i+=1;
  49. switch(keytime)
  50. {
  51. case 0:
  52.       P1 = sintab[i];break;
  53. case 1:
  54.       P1 = jctab[i];break;
  55. case 2:
  56.       P1 = fbtab[i];break;
  57. case 3:
  58. ……………………

  59. …………限于本文篇幅 余下代碼請(qǐng)從51黑下載附件…………
復(fù)制代碼

所有資料51hei提供下載:
樣衣.rar (100.41 KB, 下載次數(shù): 71)




回復(fù)

使用道具 舉報(bào)

ID:308395 發(fā)表于 2018-5-3 09:14 | 顯示全部樓層
程序沒反應(yīng)
回復(fù)

使用道具 舉報(bào)

ID:475164 發(fā)表于 2019-2-7 11:46 | 顯示全部樓層
怎么提示找不到壓縮文件?
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表