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

网站收录提交接口新闻发布会发言稿范文

网站收录提交接口,新闻发布会发言稿范文,业余做网站,wordpress头像加载第8章 示波器设计—测量功能 二代示波器测量功能实现比较简单#xff0c;使用2D函数绘制即可。不过也专门开辟一个章节#xff0c;为大家做一个简单的说明#xff0c;方便理解。 8.1 水平测量功能 8.2 垂直测量功能 8.3 总结 8.1 水平测量功能 水平测量方… 第8章        示波器设计—测量功能     二代示波器测量功能实现比较简单使用2D函数绘制即可。不过也专门开辟一个章节为大家做一个简单的说明方便理解。 8.1    水平测量功能 8.2     垂直测量功能 8.3     总结     8.1  水平测量功能 水平测量方式的效果如下   水平测量功能的数据显示不要以窗口的形式呈现因为将窗口显示在波形显示区上会造成波形刷新慢。当前的方案是在绘制完毕波形后直接2D函数绘制测量窗口这种方式的实际效果好很多。对应的代码如下 /*********************************************************************************************************** 函 数 名: DSO_DrawCursorH* 功能说明: 绘制示波器的水平测量游标用于测量幅值。* 形 参: 无 * 返 回 值: 无**********************************************************************************************************/void DSO_DrawCursorH(void){char buf[60];/* 第1步绘制用于测量的两个游标线********************************************************/GUI_SetColor(0x0040f0);/* 绘制横线A */GUI_DrawHLine(g_Cursors-sCursorHA, DSOSCREEN_STARTX, DSOSCREEN_ENDX);GUI_DrawHLine(g_Cursors-sCursorHA1, DSOSCREEN_STARTX, DSOSCREEN_ENDX); GUI_FillRoundedRect(50, g_Cursors-sCursorHA3, 61, g_Cursors-sCursorHA18, 3);/* 绘制横线B */GUI_DrawHLine(g_Cursors-sCursorHB, DSOSCREEN_STARTX, DSOSCREEN_ENDX);GUI_DrawHLine(g_Cursors-sCursorHB-1, DSOSCREEN_STARTX, DSOSCREEN_ENDX); GUI_FillRoundedRect(50, g_Cursors-sCursorHB-18, 61, g_Cursors-sCursorHB-3, 3);/* 在横线A和横线B旁边的小圆圈中显示字母a和字母b */GUI_SetColor(GUI_BLACK);GUI_SetFont(GUI_Font20_ASCII);GUI_SetTextMode(GUI_TEXTMODE_TRANS); GUI_DispCharAt(a, 51, g_Cursors-sCursorHA);GUI_DispCharAt(b, 51, g_Cursors-sCursorHB-19);/* 第2步绘制游标数据显示窗口********************************************************/GUI_SetColor(GUI_BLACK);GUI_FillRoundedRect(500, 55, 635, 135, 4);GUI_SetColor(GUI_WHITE);GUI_DrawRoundedRect( 499, 54, 636, 136, 4);GUI_SetColor(0x0040f0);GUI_FillRoundedRect(75 433 , 47 15, 86 433, 62 15, 3); GUI_FillRoundedRect(75 433 , 45 45, 86 433, 60 45, 3);GUI_SetColor(GUI_BLACK);GUI_SetFont(GUI_Font20_1);GUI_SetTextMode(GUI_TEXTMODE_TRANS); GUI_DispCharAt(a, 509, 59);GUI_DispCharAt(b, 509, 88);GUI_SetColor(GUI_YELLOW);GUI_SetFont(GUI_Font16_1);GUI_DispCharAt(#, 511, 115);/* 第3步计算竖线线A的数值***********************************************************/g_Cursors-WaveCursorA (float)((g_Cursors-sCursorVA - 340) * g_CursorUintTable[TimeBaseId][0])/1000;if(g_CursorUintTable[TimeBaseId][1] 1){sprintf(buf, %5.1fus, g_Cursors-WaveCursorA);}else if(g_CursorUintTable[TimeBaseId][1] 2){sprintf(buf, %5.3fms, g_Cursors-WaveCursorA);}else if(g_CursorUintTable[TimeBaseId][1] 3){sprintf(buf, %5.2fms, g_Cursors-WaveCursorA);}else if(g_CursorUintTable[TimeBaseId][1] 4){sprintf(buf, %5.1fms, g_Cursors-WaveCursorA);}else if(g_CursorUintTable[TimeBaseId][1] 5){sprintf(buf, %5.3fs, g_Cursors-WaveCursorA);}else if(g_CursorUintTable[TimeBaseId][1] 6){sprintf(buf, %5.2fs, g_Cursors-WaveCursorA);}else if(g_CursorUintTable[TimeBaseId][1] 7){sprintf(buf, %5.1fs, g_Cursors-WaveCursorA);}GUI_DispStringAt(buf, 523, 63);/* 第3步计算竖线线B的数值***********************************************************/g_Cursors-WaveCursorB (float)((g_Cursors-sCursorVB - 340) * g_CursorUintTable[TimeBaseId][0])/1000;if(g_CursorUintTable[TimeBaseId][1] 1){sprintf(buf, %5.1fus, g_Cursors-WaveCursorB);}else if(g_CursorUintTable[TimeBaseId][1] 2){sprintf(buf, %5.3fms, g_Cursors-WaveCursorB);}else if(g_CursorUintTable[TimeBaseId][1] 3){sprintf(buf, %5.2fms, g_Cursors-WaveCursorB);}else if(g_CursorUintTable[TimeBaseId][1] 4){sprintf(buf, %5.1fms, g_Cursors-WaveCursorB);}else if(g_CursorUintTable[TimeBaseId][1] 5){sprintf(buf, %5.3fs, g_Cursors-WaveCursorB);}else if(g_CursorUintTable[TimeBaseId][1] 6){sprintf(buf, %5.2fs, g_Cursors-WaveCursorB);}else if(g_CursorUintTable[TimeBaseId][1] 7){sprintf(buf, %5.1fs, g_Cursors-WaveCursorB);}GUI_DispStringAt(buf, 523, 91);/* 第5步计算竖线A竖线B的差值***********************************************************/if(g_CursorUintTable[TimeBaseId][1] 1){sprintf(buf, %5.1fus, (g_Cursors-WaveCursorB - g_Cursors-WaveCursorA));}else if(g_CursorUintTable[TimeBaseId][1] 2){sprintf(buf, %5.3fms, (g_Cursors-WaveCursorB - g_Cursors-WaveCursorA));}else if(g_CursorUintTable[TimeBaseId][1] 3){sprintf(buf, %5.2fms, (g_Cursors-WaveCursorB - g_Cursors-WaveCursorA));}else if(g_CursorUintTable[TimeBaseId][1] 4){sprintf(buf, %5.1fms, (g_Cursors-WaveCursorB - g_Cursors-WaveCursorA));}else if(g_CursorUintTable[TimeBaseId][1] 5){sprintf(buf, %5.3fs, (g_Cursors-WaveCursorB - g_Cursors-WaveCursorA));}else if(g_CursorUintTable[TimeBaseId][1] 6){sprintf(buf, %5.2fs, (g_Cursors-WaveCursorB - g_Cursors-WaveCursorA));}else if(g_CursorUintTable[TimeBaseId][1] 7){sprintf(buf, %5.1fs,(g_Cursors-WaveCursorB - g_Cursors-WaveCursorA));}GUI_DispStringAt(buf, 523, 115);/* 第6步显示水平线的计算数值***********************************************************/GUI_DispCharAt(#, 50972, 115);g_Cursors-WaveCursorA (float)((240 - g_Cursors-sCursorHA) * g_AttTable[Ch1AmpId][1]) / 50000;sprintf(buf, %5.3fV, g_Cursors-WaveCursorA);GUI_DispStringAt(buf, 51872, 63);g_Cursors-WaveCursorB (float)((240 - g_Cursors-sCursorHB) * g_AttTable[Ch1AmpId][1]) / 50000;sprintf(buf, %5.3fV, g_Cursors-WaveCursorB); GUI_DispStringAt(buf, 51870, 91);sprintf(buf, %5.3fV, g_Cursors-WaveCursorA - g_Cursors-WaveCursorB);GUI_DispStringAt(buf, 52070, 115);} 水平测量的实现比较简单就是2D函数调用和字符显示。如果大家要自己实现按照代码中注释的步骤制作即可。测量功能的调节是通过开发板上面的摇杆实现的。 8.2   垂直测量功能 垂直测量方式的效果如下   垂直测量功能的数据显示不要以窗口的形式呈现因为将窗口显示在波形显示区上会造成波形刷新慢。当前的方案是在绘制完毕波形后直接2D函数绘制测量窗口这种方式的实际效果好很多。对应的代码如下 /*********************************************************************************************************** 函 数 名: DSO_DrawCursorV* 功能说明: 绘制示波器的垂直测量游标用于测量的时间。* 形 参: 无 * 返 回 值: 无**********************************************************************************************************/void DSO_DrawCursorV(void){char buf[60];/* 第1步绘制用于测量的两个游标线********************************************************/GUI_SetColor(0x0040f0);/* 绘制竖线A */GUI_DrawVLine(g_Cursors-sCursorVA, DSOSCREEN_STARTY, DSOSCREEN_ENDY);GUI_DrawVLine(g_Cursors-sCursorVA1, DSOSCREEN_STARTY, DSOSCREEN_ENDY); GUI_FillRoundedRect(g_Cursors-sCursorVA5, 47, g_Cursors-sCursorVA16, 62, 3);/* 绘制竖线B */GUI_DrawVLine(g_Cursors-sCursorVB, DSOSCREEN_STARTY, DSOSCREEN_ENDY);GUI_DrawVLine(g_Cursors-sCursorVB-1, DSOSCREEN_STARTY, DSOSCREEN_ENDY);GUI_FillRoundedRect(g_Cursors-sCursorVB-16, 47, g_Cursors-sCursorVB-5, 62, 3);/* 在竖线A和竖线B旁边的小圆圈中显示字母a和字母b */GUI_SetColor(GUI_BLACK);GUI_SetFont(GUI_Font20_ASCII);GUI_SetTextMode(GUI_TEXTMODE_TRANS); GUI_DispCharAt(a, g_Cursors-sCursorVA6, 44);GUI_DispCharAt(b, g_Cursors-sCursorVB-15, 45);/* 第2步绘制游标数据显示窗口********************************************************/GUI_SetColor(GUI_BLACK);GUI_FillRoundedRect(500, 55, 635, 135, 4);GUI_SetColor(GUI_WHITE);GUI_DrawRoundedRect( 499, 54, 636, 136, 4);GUI_SetColor(0x0040f0);GUI_FillRoundedRect(75 433 , 47 15, 86 433, 62 15, 3); GUI_FillRoundedRect(75 433 , 45 45, 86 433, 60 45, 3);GUI_SetColor(GUI_BLACK);GUI_SetFont(GUI_Font20_1);GUI_SetTextMode(GUI_TEXTMODE_TRANS); GUI_DispCharAt(a, 509, 59);GUI_DispCharAt(b, 509, 88);GUI_SetColor(GUI_YELLOW);GUI_SetFont(GUI_Font16_1);GUI_DispCharAt(#, 513, 115);/* 第3步计算竖线A的数值***********************************************************/g_Cursors-WaveCursorA (float)((g_Cursors-sCursorVA - 340) * g_CursorUintTable[TimeBaseId][0])/1000;if(g_CursorUintTable[TimeBaseId][1] 1){sprintf(buf, %5.1fus, g_Cursors-WaveCursorA);}else if(g_CursorUintTable[TimeBaseId][1] 2){sprintf(buf, %5.3fms, g_Cursors-WaveCursorA);}else if(g_CursorUintTable[TimeBaseId][1] 3){sprintf(buf, %5.2fms, g_Cursors-WaveCursorA);}else if(g_CursorUintTable[TimeBaseId][1] 4){sprintf(buf, %5.1fms, g_Cursors-WaveCursorA);}else if(g_CursorUintTable[TimeBaseId][1] 5){sprintf(buf, %5.3fs, g_Cursors-WaveCursorA);}else if(g_CursorUintTable[TimeBaseId][1] 6){sprintf(buf, %5.2fs,g_Cursors-WaveCursorA);}else if(g_CursorUintTable[TimeBaseId][1] 7){sprintf(buf, %5.1fs, g_Cursors-WaveCursorA);}/* 显示竖线A数值 */GUI_DispStringAt(buf, 523, 63);/* 第4步计算竖线B的数值***********************************************************/g_Cursors-WaveCursorB (float)((g_Cursors-sCursorVB - 340) * g_CursorUintTable[TimeBaseId][0])/1000;if(g_CursorUintTable[TimeBaseId][1] 1){sprintf(buf, %5.1fus, g_Cursors-WaveCursorB);}else if(g_CursorUintTable[TimeBaseId][1] 2){sprintf(buf, %5.3fms, g_Cursors-WaveCursorB);}else if(g_CursorUintTable[TimeBaseId][1] 3){sprintf(buf, %5.2fms, g_Cursors-WaveCursorB);}else if(g_CursorUintTable[TimeBaseId][1] 4){sprintf(buf, %5.1fms, g_Cursors-WaveCursorB);}else if(g_CursorUintTable[TimeBaseId][1] 5){sprintf(buf, %5.3fs, g_Cursors-WaveCursorB);}else if(g_CursorUintTable[TimeBaseId][1] 6){sprintf(buf, %5.2fs, g_Cursors-WaveCursorB);}else if(g_CursorUintTable[TimeBaseId][1] 7){sprintf(buf, %5.1fs, g_Cursors-WaveCursorB);}/* 显示竖线B数值 */GUI_DispStringAt(buf, 523, 91);/* 第5步计算竖线A竖线B的差值***********************************************************/if(g_CursorUintTable[TimeBaseId][1] 1){sprintf(buf, %5.1fus, (g_Cursors-WaveCursorB - g_Cursors-WaveCursorA));}else if(g_CursorUintTable[TimeBaseId][1] 2){sprintf(buf, %5.3fms, (g_Cursors-WaveCursorB - g_Cursors-WaveCursorA));}else if(g_CursorUintTable[TimeBaseId][1] 3){sprintf(buf, %5.2fms, (g_Cursors-WaveCursorB - g_Cursors-WaveCursorA));}else if(g_CursorUintTable[TimeBaseId][1] 4){sprintf(buf, %5.1fms, (g_Cursors-WaveCursorB - g_Cursors-WaveCursorA));}else if(g_CursorUintTable[TimeBaseId][1] 5){sprintf(buf, %5.3fs, (g_Cursors-WaveCursorB - g_Cursors-WaveCursorA));}else if(g_CursorUintTable[TimeBaseId][1] 6){sprintf(buf, %5.2fs, (g_Cursors-WaveCursorB - g_Cursors-WaveCursorA));}else if(g_CursorUintTable[TimeBaseId][1] 7){sprintf(buf, %5.1fs,(g_Cursors-WaveCursorB - g_Cursors-WaveCursorA));}/* 显示竖线A和竖线B的差值 */GUI_DispStringAt(buf, 523, 115);/* 第6步显示水平线的计算数值***********************************************************/GUI_DispCharAt(#, 50972, 115);g_Cursors-WaveCursorA (float)((240 - g_Cursors-sCursorHA) * g_AttTable[Ch1AmpId][1]) / 50000;sprintf(buf, %5.3fV, g_Cursors-WaveCursorA);GUI_DispStringAt(buf, 51872, 63);g_Cursors-WaveCursorB (float)((240 - g_Cursors-sCursorHB) * g_AttTable[Ch1AmpId][1]) / 50000;sprintf(buf, %5.3fV, g_Cursors-WaveCursorB); GUI_DispStringAt(buf, 51870, 91);sprintf(buf, %5.3fV, g_Cursors-WaveCursorA - g_Cursors-WaveCursorB);GUI_DispStringAt(buf, 52070, 115);} 垂直测量的实现比较简单就是2D函数调用和字符显示。如果大家要自己实现按照代码中注释的步骤制作即可。测量功能的调节是通过开发板上面的摇杆实现的。 8.3   总结 由于测量功能的实现比较简单所以我们这里只是简单的进行了说明。如果大家要自己制作的话建议实际操作下。   转载于:https://www.cnblogs.com/armfly/p/9253918.html
http://wiki.neutronadmin.com/news/196012/

相关文章:

  • 关于建设 网站的请示线上教育培训机构十大排名
  • 旅游网站建设策划方案大连在哪个省份哪个市
  • 网站开发前后端分离要多少钱wordpress手机下浮动
  • 塔里木油田公司档案馆网站建设研究企业网站开发研究现状
  • 会展相关app和网站的建设情况网页设计免费模板代码
  • 网站备案的意思网页设计图片怎么居中对齐
  • 大学生做爰网站qq互联 网站开发
  • 网站主页和子页怎么做郑州网站优化培训
  • dw中用php做网站电子商务网站建设jsp考卷
  • 永川网站开发小榄镇做网站公司
  • 织梦做的网站后台怎么进一套金蝶erp系统多少钱
  • 湛江建设培训学校网站专业手机网站公司哪家好
  • 邯郸市网站建设企业建设网站公司哪家好
  • 手机百度屏蔽我网站关键词网站上传的视频播放卡
  • asp.net做电商网站设计做视频解析网站
  • 求职招聘网站开发网站排名优化如何做
  • 浦东新区苏州网站建设陇南地网站seo
  • 中国深圳航空公司官方网站个人网站 空间
  • 网站建设公司海报物业管理系统价格
  • 越南做彩票网站是违法的吗网站设计制作上海
  • 自己做装修效果的网站购物网站建立
  • 网站的备案号查询建设网站西丽
  • 网站图片多大合适大宗商品最新交易平台
  • 做dm素材网站无锡网站建设营销型
  • 点胶机 东莞网站建设企业开源建站系统
  • 网站开发竞品分析wordpress 检测redis
  • 做苗木生意上什么网站织梦多语言网站
  • 北京网站seo哪家公司好秦皇岛手机网站制作公司
  • 青岛网站制作服务网站上线流程
  • 最新互联网项目平台网站温岭建设规划局网站