
Microchip EGT图形界面课程资料下载
版权申诉
773KB |
更新于2024-10-14
| 56 浏览量 | 举报
收藏
EGT是一种用于微控制器(MCU)和数字信号处理器(DSP)的图形库技术,特别设计用于创建复杂的用户界面和图形显示。本课程资料将帮助开发者掌握使用Microchip EGT图形库进行嵌入式系统开发的技能。
课程资料内容涵盖了EGT图形库的安装、配置以及基础图形绘制等各个方面。重点介绍了如何通过EGT库来设计和实现用户界面,包括但不限于按钮、滑块、图形和文本的处理。此外,课程还会教授如何将EGT图形界面集成到Microchip的多种微控制器产品中,例如PIC和dsPIC系列。
本课程的实践部分可能会包含多个实验和练习,这些实验和练习将涉及到使用EGT图形界面的API进行编程。通过这些实践操作,学员可以加深对EGT图形库功能和潜力的理解。课程资料中可能还包含了对Microchip产品生态系统的介绍,帮助学员理解EGT技术在整体系统中的位置和作用。
Microchip公司提供的这一系列课程旨在培养能够利用EGT技术开发高效、专业和视觉吸引力强的嵌入式系统界面的工程师。它适合那些希望通过图形化界面提升用户体验的嵌入式开发人员和系统集成商。课程资料的结构编排非常清晰,从基础到高级,逐步深入,确保了不同背景的学员都能从中受益。
由于Microchip EGT图形界面课程资料专为嵌入式系统开发人员设计,因此,参与者需要具备一定的嵌入式编程基础,并对图形用户界面设计有基本的了解。同时,了解Microchip的产品线和开发工具链会更有助于理解课程内容。
对于想要掌握现代嵌入式系统中图形用户界面开发技能的开发者来说,Microchip的EGT图形界面课程资料是一个宝贵的资源。通过这些资料的学习,开发者不仅能够提升自己在图形界面设计方面的技能,还能够更好地理解如何将复杂的用户交互集成到微控制器项目中去。"
相关推荐












/** * 搜索列表 */ public function lists() { $param = input('param.'); $users = session('?users') ? session('users') : []; $users_id = !empty($users['users_id']) ? intval($users['users_id']) : 0; $admin_id = !empty($users['admin_id']) ? intval($users['admin_id']) : 0; $nowTime = getTime(); /*记录搜索词*/ if (!isset($param['keywords'])) { die('标签调用错误:缺少属性 name="keywords",请查看标签教程修正 前往查看'); } $word = $this->request->param('keywords'); if(empty($word)){ $this->error(foreign_lang('system15', $this->home_lang)); } $page = $this->request->param('page'); if(!empty($word) && 2 > $page) { $word_decode = htmlspecialchars_decode($word); $searchConf = tpCache('search'); if (!isset($searchConf['search_tabu_words'])) { $searchConf['search_tabu_words'] = ['<','>','"',';',',','@','&','#','\\','*']; } else { $searchConf['search_tabu_words'] = explode(PHP_EOL, $searchConf['search_tabu_words']); } /*前台禁止搜索开始*/ if (!empty($searchConf['search_tabu_words'])) { foreach ($searchConf['search_tabu_words'] as $key => $val) { if (strstr($word_decode, $val)) { $msg = sprintf(foreign_lang('system13', $this->home_lang), $val); $this->error($msg); } } } /*if (is_dir('./weapp/Wordfilter/')) { $wordfilterRow = Db::name('weapp')->where(['code'=>'Wordfilter', 'status'=>1])->find(); if(!empty($wordfilterRow['data'])){ $wordfilterRow['data'] = json_decode($wordfilterRow['data'], true); if ($wordfilterRow['data']['search'] == 3){ $wordfilter = Db::name('weapp_wordfilter')->where(['title'=>$word, 'status'=>1])->find(); if(!empty($wordfilter)){ $this->error('包含敏感关键词,禁止搜索!'); } } } }*/ /*前台禁止搜索结束*/ // 如果tag标签有,默认跳到tag列表页 /*$tagInfo = Db::name('tagindex') ->alias('a') ->field('a.id AS tagid') ->join('taglist b','a.id=b.tid','left') ->where(['a.tag'=>$word,'b.arcrank'=>['egt',0]]) ->find(); if (!empty($tagInfo)) { $city_switch_on = config('city_switch_on'); $domain = preg_replace('/^(http(s)?:)?(\/\/)?([^\/\:]*)(.*)$/i', '${1}${3}${4}', tpCache('web.web_basehost')); if (empty($city_switch_on)) { $tagurl = tagurl('home/Tags/lists', array('tagid'=>$tagInfo['tagid'])); } else { $tagurl = tagurl('home/Tags/lists', array('tagid'=>$tagInfo['tagid']), true, $domain); } $this->redirect($tagurl); exit; }*/ $word = addslashes($word); $method = input('param.method/d'); if (!empty($method)) { /*搜索频率限制 start*/ if (!isset($searchConf['search_second'])) { $searchConf['search_second'] = 60; } if (!isset($searchConf['search_maxnum'])) { $searchConf['search_maxnum'] = 5; } if (!isset($searchConf['search_locking'])) { $searchConf['search_locking'] = 120; } if (empty($admin_id) && 0 < $searchConf['search_second']) { $where = []; if (!empty($users_id)) { $where['users_id'] = $users_id; } else { $where['ip'] = clientIP(); } $where2 = [ 'update_time' => ['gt', $nowTime - $searchConf['search_second']], ]; $searchTotal = Db::name('search_word')->where($where)->where($where2)->count(); $lockingInfo = Db::name('search_locking')->where($where)->find(); if ($searchTotal >= intval($searchConf['search_maxnum'])) { if (empty($lockingInfo)) { $lockingInfo = [ 'users_id' => $users_id, 'ip' => clientIP(), 'locking_time' => $nowTime, 'add_time' => $nowTime, 'update_time' => $nowTime, ]; $insertId = Db::name('search_locking')->insertGetId($lockingInfo); $lockingInfo['id'] = $insertId; } else { if (($lockingInfo['locking_time'] + $searchConf['search_locking']) < $nowTime) { Db::name('search_locking')->where(['id'=>$lockingInfo['id']])->update([ 'locking_time' => $nowTime, 'update_time' => $nowTime, ]); $lockingInfo['locking_time'] = $nowTime; } } } if (!empty($lockingInfo)) { $locking_time = !empty($lockingInfo['locking_time']) ? $lockingInfo['locking_time'] : 0; $surplus_time = $locking_time + $searchConf['search_locking'] - $nowTime; if ($surplus_time > 0) { $minute = ceil($surplus_time/60); $msg = sprintf(foreign_lang('system14', $this->home_lang), $minute); $this->error($msg, null, [], $surplus_time); } } } /*搜索频率限制 end*/ /*记录搜索词*/ $row = $this->searchword_db->field('id')->where(['word'=>$word, 'lang'=>$this->home_lang])->find(); if(empty($row)) { $this->searchword_db->insert([ 'word' => $word, 'sort_order' => 100, 'users_id' => $users_id, 'ip' => clientIP(), 'lang' => $this->home_lang, 'add_time' => $nowTime, 'update_time' => $nowTime, ]); }else{ $this->searchword_db->where(['id'=>$row['id']])->update([ 'searchNum' => Db::raw('searchNum+1'), 'users_id' => $users_id, 'ip' => clientIP(), 'update_time' => $nowTime, ]); } } } /*--end*/ $result = $param; !isset($result['keywords']) && $result['keywords'] = ''; $eyou = array( 'field' => $result, ); $this->eyou = array_merge($this->eyou, $eyou); $this->assign('eyou', $this->eyou); /*模板文件*/ $viewfile = 'lists_search'; $channelid = input('param.channelid/d'); if (!empty($channelid)) { $viewfilepath = TEMPLATE_PATH.$this->theme_style_path.DS.$viewfile."_{$channelid}.".$this->view_suffix; if (file_exists($viewfilepath)) { $viewfile .= "_{$channelid}"; } } /*--end*/ if (config('city_switch_on') && !empty($this->home_site)) { // 多站点内置模板文件名 $viewfilepath = TEMPLATE_PATH.$this->theme_style_path.DS.$this->home_site; $viewfilepath2 = TEMPLATE_PATH.$this->theme_style_path.DS.'city'.DS.$this->home_site; if (!empty($this->eyou['global']['site_template'])) { if (file_exists($viewfilepath2)) { $viewfile = "city/{$this->home_site}/{$viewfile}"; } else if (file_exists($viewfilepath)) { $viewfile = "{$this->home_site}/{$viewfile}"; } } } else if (config('lang_switch_on') && !empty($this->home_lang)) { // 多语言内置模板文件名 $viewfilepath = TEMPLATE_PATH.$this->theme_style_path.DS.$viewfile."_{$this->home_lang}.".$this->view_suffix; if (file_exists($viewfilepath)) { $viewfile .= "_{$this->home_lang}"; } } return $this->fetch(":{$viewfile}"); } 检测sql注入利用链






Dyingalive
- 粉丝: 113
最新资源
- 基于LAMP环境的论坛信息管理系统课程设计与实现
- CCNA2基础教程:路由与交换网络配置实战
- CCNA基础教程:安装配置中型路由与交换网络
- RouterPassView:从路由器备份文件中找回丢失的密码
- Head First Servlet & JSP 经典教程与 SCWCD 认证指南
- Extendsim多实例仿真案例合集:洗车、排队与物流仿真
- 基于数据库技术的物业管理系统课程设计研究
- 基于VC++与MFC的局域网聊天系统实现
- 世纪联线网吧影视多媒体系统4.5版本更新与功能详解
- PMP考试备考指南第五版电子书
- ZoneAlarm Pro 9注册机绝对可用
- ObjectDock Plus 190HH:桌面高效快捷方式工具
- 解决Adobe CS4/CS2缺少VersionCue.dll文件的完整方案
- WinHex 15.8注册机工具及使用方法
- 基于C#与SQL Server的学生学籍管理系统设计与实现
- SSD5考试第三部分内容解析与总结
- 高效Java反编译工具,助你快速解析代码原理
- 薛薇SPSS统计分析方法及应用详解
- CrossLoop:便捷安全的远程桌面控制工具
- Python 3 面向对象编程:助力初学者掌握编程核心技能
- 经典抠图教程详解(PS技巧与资源分享)
- 解决WP7 Marketplace软件安装限制的工具
- ADSL IP自动更换工具及使用指南
- WPF编程学习资料全集:涵盖布局、数据绑定与控件机制