OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 6084|回复: 4

能不能帮我解释一下这个函数用ucgui在LCD上显示实时波形

[复制链接]

85

主题

169

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
413
金钱
413
注册时间
2015-2-1
在线时间
1 小时
发表于 2015-10-21 20:40:27 | 显示全部楼层 |阅读模式
5金钱

能不能帮我解释一下这个函数用ucgui
说明:在LCD上显示实时波形
------------------------------------------*/
void ShowRealTimeWave(void)
{
 GUI_RECT Rect = {0,0,479,200};      //无闪烁显示区域
 int i,j=0;
 OS_CPU_SR  cpu_sr = 0u;
 WaveInfo.Vmax = 2047.0;
 WaveInfo.Vmin = 2047.0;

 for (i = 0; i < SAMPDEPTH; i++)
 { //把AD值按比例转换成在LCD上显示的值
  ADCVlaue2ScreenValue = ( ADCConvertedValue*200/4096 ); 
   
  if(WaveInfo.Vmax < ADCConvertedValue)  //找出Vmax Vmin
  {
   WaveInfo.Vmax = ADCConvertedValue
  }
  if(WaveInfo.Vmin > ADCConvertedValue)
  {
    WaveInfo.Vmin = ADCConvertedValue
  }
  //周期追踪线寻找
  if(ADCVlaue2ScreenValue>98 && ADCVlaue2ScreenValue<102 && j==0 && i>10 && i<200)
  {
   if(ADCVlaue2ScreenValue[i-5]>101 && ADCVlaue2ScreenValue[i+5]<99)
   {
     TrackLine_PriodStart = i;
    j = 1;
   }
  }
  else if(ADCVlaue2ScreenValue>98 && ADCVlaue2ScreenValue<102 && j==1 && i>TrackLine_PriodStart+20 && i<SAMPDEPTH)
  {
   if(ADCVlaue2ScreenValue[i-5]>101 && ADCVlaue2ScreenValue[i+5]<99)
   {
     TrackLine_PriodEnd = i;
    j = 2;
   }
  }
 }
 
 TrackLine_VppMax = 200 - WaveInfo.Vmax*200/4096;  //最大值追踪线
 TrackLine_VppMin = 200 - WaveInfo.Vmin*200/4096;  //最小值追踪线
 
 if(JDQ_ACDC == 1)   //AC耦合
 {
   WaveInfo.Vmax -= 2047.0;
  WaveInfo.Vmin -= 2047.0; 
 }
 WaveInfo.Vmax = (WaveInfo.Vmax/4095 * 3.3 * WaveCtrl.AmpDiv);
 WaveInfo.Vmin = (WaveInfo.Vmin/4095 * 3.3 * WaveCtrl.AmpDiv);
 WaveInfo.Vpp  = WaveInfo.Vmax - WaveInfo.Vmin; 
 WaveInfo.Vrms = WaveInfo.Vpp*1000 / 2828; 
 
 OS_ENTER_CRITICAL();
 GUI_MEMDEV_Draw(&Rect,&Draw,ADCVlaue2ScreenValue,0,0); //GUI无闪烁绘制波形
 OS_EXIT_CRITICAL(); 
}

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2015-10-21 21:35:11 | 显示全部楼层
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

85

主题

169

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
413
金钱
413
注册时间
2015-2-1
在线时间
1 小时
 楼主| 发表于 2015-10-22 10:43:17 | 显示全部楼层
自己顶一下,求大神啊
回复

使用道具 举报

2

主题

29

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
229
金钱
229
注册时间
2015-1-19
在线时间
26 小时
发表于 2015-10-22 13:57:13 | 显示全部楼层
我也在研究这个波形,帮顶
活在当下,静心坚持。
回复

使用道具 举报

小黑马 该用户已被删除
发表于 2017-3-1 16:29:09 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-19 07:30

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表