函数信号发生器和函数信号识别器是一直想做的两个项目,但是一直苦于没时间才做的拖拖拉拉。
这一次的项目是个第一版项目,总共可以产生四种波形,分别为方波、三角波、锯齿波及梯形波。每种波形可以通过按键改变占空比。
预计第二版会加入正弦波余弦波等更加有曲线的波形。
这次的发生器选用了DAC0832作为转化芯片,LM358作为放大芯片。其他的电路组成都是很基础很基础的部分。
在设计中,总共用了四个按键来调节。分别为:K0:复位按键(RST) K1:选择波形(P33) K2:占空比增大(P34) K3:占空比减小(P35)。示波器连接了OUT和RFB是为了对比波形的峰值,主要是体现出LM358的放大作用。
这一次PCB设计用的过孔较少,但是还是受困于20mil的走线没法钻过芯片的引脚,还是把电源线扯的老长了。
部分代码如下:
int main(void)
{
unsigned char model=0;//0-方波 1-三角波 2-锯齿波 3-正弦波
unsigned int count=0;//计数器
unsigned int squ_per=256;
unsigned int tri_per=256;
unsigned int