17.5 软件程序解析
1. main.c 源文件软件程序解析
main.c 的函数列表如表 17-3 所示。
表 17-3 main.c 文件的函数列表

2. int main(void) 函数
该函数为主函数,其流程图如图 17-16 所示。在各种外设初始化后,首先让 LCD 显示预先存储在 Flash 中的背景图片;接着对波形显示窗口进行初始化设置并显示坐标字符;最后进入主循环,等待菜单波形定时显示、串口'下载'指令、通用串口指令以及菜单切换任务的到来。

图 17-16 软件程序流程图
3. void menu_process(void) 函数
该函数对 LCD 显示图像上的 4 个按钮区域的点按情况作状态切换。当触摸屏被按下后,该函数将判断坐标是否落在 4 个按钮'方波测试'、'三角波测试'、'正弦波测试'、'AD 采集监控'对应的有效区域内,若坐标区域匹配,则更新 menu_flag 变量值,在主函数中将切换显示波形模式。
4. lcd.c 源文件软件程序解析
lcd.c 的函数列表如表 17-4 所示。
void Lcd_wave_setting(alt_u8 ctrl, alt_u16 xs, alt_u16 ys, alt_u16 xe, alt_u16 ye, alt_u16 fcor, alt_16 bcor) 函数
该函数对波形显示窗口进行初始化设定。该函数各个入口参数定义如下。
·ctrl--bit0 值为 1 表示开启,值为 0 表示关闭波形显示;bit1 值为 1 表示保留原波形,为 0 表示清除原波形。
·xs--波形窗口 x 轴起始地址。
·ys--波形窗口 Y 轴起始地址。
·xe--波形窗口 x 轴结束地址。
·ye--波形窗口 Y 轴结束地址。
·fcor--波形窗口前景色。
·bcor--波形窗口背景色。

5. void Lcd_wave_print(alt_u8 point) 函数
该函数采集当前 AD 值,并送该数据作为 LCD 波形点显示。该函数的入口参数 point 即写入的波形点数据。每调用一次该函数,变量 wave_bnum 递增,直到写入数据量和波形显示 x 区域总像素点 wave_anum 相等,则开启 LCD 读双口 RAM 地址递增功能。随后写入的数据将如同示波器的效果实现波形的移动。
17.6 板级调试
①参考装配说明完成装配。
②下载例程所在资源。


