×
单片机 > 单片机程序设计 > 详情

51单片机信号发生器例子程序包括Proteus仿真

发布时间:2021-01-18 发布时间:
|

面的附件是两种AD芯片和51单片机而做出的信号发生器,幅度频率可以调整。芯片有PCF8591 和AD0832
按键1:设置/确定
按键2:在设置模式下,切换是频率调节还是幅度调节,
       设置频率或者幅度时,对应的f/a闪烁;
       在常态模式下,切换正弦波、三角波、锯齿波、
       方波等波形;
按键3:频率/幅度增加
按键4:频率/幅度减少

 

单片机源程序如下:

/*信号发生器程序*/

#include

#include

#include

//1、IO口以及变量定义等

unsigned int pinlv;//频率值

unsigned char fudu;//幅度系数,1~10,表示5v的0.1  0.2 0.3~1的10倍

unsigned char boxing;//波形,0为正弦波,1为三角波,2为锯齿波,3方波

//bit  zj_sj;//三角波符号,0增,1减


sbit WR1=P3^6;//0832写控制端

unsigned char index_sin;//正弦波指针

unsigned char index_sj;//三角波指针

unsigned char index_jc;//锯齿波指针

unsigned char index_fb;//方波波指针


unsigned char code tosin[256]={                                         //正弦波编码

128         ,

141         ,

153         ,

165         ,

177         ,

188         ,

199         ,

209         ,

219         ,

227         ,

234         ,

241         ,

246         ,

250         ,

254         ,

255         ,

255         ,

255         ,

254         ,

250         ,

246         ,

241         ,

234         ,

227         ,

219         ,

209         ,

199         ,

188         ,

177         ,

165         ,

153         ,

141         ,

128         ,

115         ,

103         ,

91         ,

79         ,

68         ,

57         ,

47         ,

37         ,

29         ,

22         ,

15         ,

10         ,

6         ,

2         ,

1         ,

0         ,

1         ,

2         ,

6         ,

10         ,

15         ,

22         ,

29         ,

37         ,

47         ,

57         ,

68         ,

79         ,

91         ,

103         ,

115         ,


};



unsigned char code pinlvtable[100][2]={ 

195        ,        58         ,

225        ,        191         ,

235        ,        235         ,

241        ,        1         ,

244        ,        14         ,

246        ,        23         ,

247        ,        139         ,

248        ,        162         ,

249        ,        123         ,

250        ,        41         ,

250        ,        183         ,

251        ,        45         ,

251        ,        145         ,

251        ,        231         ,

252        ,        49         ,

252        ,        114         ,

252        ,        172         ,

252        ,        223         ,

253        ,        13         ,

253        ,        54         ,

253        ,        91         ,

253        ,        125         ,

253        ,        156         ,

253        ,        184         ,

253        ,        210         ,

253        ,        234         ,

254        ,        0         ,

254        ,        21         ,

254        ,        40         ,

254        ,        58         ,

254        ,        75         ,

254        ,        91         ,

254        ,        106         ,

254        ,        119         ,

254        ,        133         ,

254        ,        145         ,

254        ,        157         ,

254        ,        168         ,

254        ,        178         ,

254        ,        188         ,

254        ,        198         ,

254        ,        207         ,

254        ,        216         ,

254        ,        224         ,

254        ,        232         ,

254        ,        239         ,

254        ,        247         ,

254        ,        253         ,

255        ,        4         ,

255        ,        11         ,

255        ,        17         ,

255        ,        23         ,

255        ,        28         ,

255        ,        34         ,

255        ,        39         ,

255        ,        44         ,

255        ,        49         ,

255        ,        54         ,

255        ,        58         ,

255        ,        63         ,

255        ,        67         ,

255        ,        71         ,

255        ,        75         ,

255        ,        79         ,

255 ,


关键字:51单片机  信号发生器  Proteus仿真 

『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
ARM基础知识八