五、流程图设计
主流程图
开始 寄存器送初值 否 按键S0是否按下 是 调用方波子程序 输出方波 按键S0是否松开 否 是 调用三角波子程序 输出三角波 否
按键S1是否按下 按键S1是否松开 否 按键S2是否按下 是 调用梯形波子程序 输出梯形波 否 按键S2是否松开 否 按键S3是否按下 是 调用锯齿波子程序 输出锯齿波 否 按键S3是否松开 否 是 调用正弦波子程序 输出正弦波 否
按键S4是否按下 按键S4是否松开 否 返回主函数
6
1、方波产生流程图
开 始 循环开始 给R1赋值00H 延时 给R1赋值0FFH 延时 输出波形,数码管显示 是
判断仍否按下 否 返回主函数
7
2、三角波产生流程图
开 始 定义变量R1、R2 变量R1=-加1 循环次数R2减1 否 判断R2是否 为0 是 输出波形,数码显示 是 按键仍否按下 否 返回主函数
8
3、梯形波发生流程图
开 始 定义变量R1、R2 变量R1加1 变量R2减1 否 判断R2是否为0 是 延时 是 输出波形,数码管显示 按键仍否按下 否 返回主函数
9
4、锯齿波产生流程图
开始 定义变量R1、R2 变量R1加一、R2减一 否 判断R2是否为0 是 输出波形,数码管显示 是 按键仍否按下 否 返回主函数
六、程序设计
ORG 0000H
AJMP MAIN ORG 0030H
MAIN: MOV R7,#00H MOV A,P1 MOV R0,A
10