当前位置: 首页 > news >正文

例说FPGA:可直接用于工程项目的第一手经验【3.6】

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变量值,在主函数中将切换显示波形模式。
其他函数请参看工程实例8的例程解析。
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地址递增功能。随后写入的数据将如同示波器的效果实现波形的移动。
其他函数请参看工程实例8的例程解析。

17.6 板级调试

①参考装配说明完成装配。
②下载例程所在的“http://www.hzcourse.com/resource/re

http://www.jsqmd.com/news/359327/

相关文章:

  • 详细介绍:无人机遥控器CPU技术要点解析
  • 2/8
  • 计算机Java毕设实战-基于springboot的周至猕猴桃产品售卖网站的设计与实现【完整源码+LW+部署说明+演示视频,全bao一条龙等】
  • P12653 [KOI 2024 Round 2] 分数竞赛
  • 计算机小程序毕设实战-基于springboot+小程序的驾校考试模拟系统小程序基于微信小程序的驾校模拟考试系统【完整源码+LW+部署说明+演示视频,全bao一条龙等】
  • P5712 【深基3.例4】Apples
  • 例说FPGA:可直接用于工程项目的第一手经验【3.2】
  • 小程序毕设项目推荐-基于微信小程序的驾校考试预约系统基于springboot+小程序的驾校考试模拟系统小程序【附源码+文档,调试定制服务】
  • 从平台工程视角“封装 Kubernetes”
  • 计算机小程序毕设实战-基于springboot+小程序的家教兼职系统小程序基于微信小程序的家教信息管理平台【完整源码+LW+部署说明+演示视频,全bao一条龙等】
  • 11.Python文件操作
  • 【课程设计/毕业设计】基于SpringBoot的助眠小程序系统设计与实现基于springboot+小程序的睡眠健康管理系统小程序【附源码、数据库、万字文档】
  • 【课程设计/毕业设计】基于springboot的特色农产品,周至猕猴桃产品售卖网站的设计与实现【附源码、数据库、万字文档】
  • Kubernetes 上构建 AI 基础设施全景实践
  • 【课程设计/毕业设计】基于微信小程序的驾校预约管理系统的小程序基于springboot+小程序的驾校考试模拟系统小程序【附源码、数据库、万字文档】
  • 【计算机毕业设计案例】基于springboot+小程序的睡眠健康管理系统小程序(程序+文档+讲解+定制)
  • 【课程设计/毕业设计】基于微信小程序的家教兼职系统家教预约基于springboot+小程序的家教兼职系统小程序【附源码、数据库、万字文档】
  • Windows也能跑OpenClaw:完整安装教程+飞书接入,一步步带你避坑
  • 星球助手v1.8.3发布
  • ntp服务端和客户端
  • 小程序毕设项目:基于springboot+小程序的家教兼职系统小程序(源码+文档,讲解、调试运行,定制等)
  • 小程序毕设项目:基于springboot+小程序的睡眠健康管理系统小程序(源码+文档,讲解、调试运行,定制等)
  • 《Software Defined Radio软件无线电》学习笔记
  • 小程序计算机毕设之基于微信小程序的家教兼职平台基于springboot+小程序的家教兼职系统小程序(完整前后端代码+说明文档+LW,调试定制等)
  • 封神组合!finalCodecs+完美解码+PotPlayer,再也没有打不开的视频
  • 基于GRU门控循环单元的轴承剩余寿命预测MATLAB实现
  • 小程序计算机毕设之基于springboot+小程序的睡眠健康管理系统小程序t基于微信小程序的睡眠健康管理系统(完整前后端代码+说明文档+LW,调试定制等)
  • 第五章 栈与队列part02
  • 【计算机毕业设计案例】基于SpringBoot+微信小程序的微信医院挂号系统基于springboot+小程序的医院挂号系统小程序(程序+文档+讲解+定制)
  • 【毕业设计】基于springboot+小程序的家教兼职系统小程序(源码+文档+远程调试,全bao定制等)