开关3用来切换输出波形、开关7和8用来调节频率的加减。当按开关7时输出波形的频率增加,按开关8时输出波形的频率减小。
15软件设计流程本系统采用AT89S52单片机,用编程的方法来产生三种波形,并通过编程来切换三种波形以及波形频率的改变。具体功能有:(1)各个波形的切换;(2)各种参数的设定;(3)频率增减等。软件调通后,通过编程器下载到AT89S52芯片中,然后插到系统中即可独立完成所有的控制。软件的流程图如下:
9
f图(7)程序流程图
16源程序i
cludereg51hdefi
eucharu
sig
edchardefi
eui
tu
sig
edi
tsbitlcdrwP33sbitlcdrsP32sbitlcdeP34sbitdP27sbits1P20sbits2P21sbits3P22sbitcsP35sbitwrP36uchars1
umaysjui
tfreucharcodetosi
2560x800x830x860x890x8d0x900x930x960x990x9c0x9f0xa20xa50xa80xab0xae0xb10xb40xb70xba0xbc0xbf0xc20xc5
10
f0xc70xca0xcc0xcf0xd10xd40xd60xd80xda0xdd0xdf0xe10xe30xe50xe70xe90xea0xec0xee0xef0xf10xf20xf40xf50xf60xf70xf80xf90xfa0xfb0xfc0xfd0xfd0xfe0xff0xff0xff0xff0xff0xff0xff0xff0xff0xff0xff0xff0xfe0xfd0xfd0xfc0xfb0xfa0xf90xf80xf70xf60xf50xf40xf20xf10xef0xee0xec0xea0xe90xe70xe50xe30xe10xde0xdd0xda0xd80xd60xd40xd10xcf0xcc0xca0xc70xc50xc20xbf0xbc0xba0xb70xb40xb10xae0xab0xa80xa50xa20x9f0x9c0x990x960x930x900x8d0x890x860x830x800x800x7c0x790x760x720x6f0x6c0x690x660x630x600x5d0x5a0x570x550x510x4e0x4c0x480x450x430x400x3d0x3a0x380x350x330x300x2e0x2b0x290x270x250x220x200x1e0x1c0x1a0x180x160x150x130x110x100x0e0x0d0x0b0x0a0x090x080x070x060x050x040x030x020x020x010x000x000x000x000x000x000x000x000x000x000x000x000x010x020x020x030x040x050x060x070x080x090x0a0x0b0x0d0x0e0x100x110x130x150x160x180x1a0x1c0x1e0x200x220x250x270x290x2b0x2e0x300x330x350x380x3a0x3d0x400x430x450x480x4c0x4e0x510x550x570x5a0x5d0x600x630x660x690x6c0x6f0x720x760x790x7c0x80正弦波码voiddelayui
tz延时子程序ucharijforizi0iforj110j0jvoiddelay1ui
tyui
tiforiyi0ivoidwrite_comucharcom1602写指令lcdrs0P1comdelay5lcde1delay5lcde0voidwrite_datauchardate1602数据lcdrs1
11
fP1datedelay5lcde1delay5lcde0voidi
it初始化lcdrw0lcde0wr0cs0write_com0x38write_com0x0cwrite_com0x06write_com0x01write_com0x800x00write_data0x77写wavewrite_data0x61write_data0x76write_data0x65write_data0x3awrite_com0x800x40写f:write_data0x66write_data0x3avoidwrite_fui
tdate写频率ucharqia
baishigeqia
date1000baidate10010shidatr