使用TouchGFX开发STM32界面应用之入门篇(三)-- 多屏呈现与MVP框架(3)

【注:这是《TouchGFX入门篇(三)-- 多屏呈现与MVP框架》文章的第二部分的续篇,之前的部分请 看这里 】

之前我们已经完成了2个Screen的创建,以及他们之间的相互切换和数据交换。下面继续实现时钟的走时和圆弧的动画。

为了让时间显示不断变化,一个通常的想法是:利用STM32的定时器。而在touchgfx中,实现这个功能变得更加简单:touchgfx直接提供了一个“滴答”函数(以及自动运行这个功能的机制)---- handleTickEvent()。限于文章篇幅,关于这个函数的具体解释请见touchgfx的API说明手册,这里直接展示如何应用他:

上图中在Screen2View.hpp中添加了 handleTickEvent() 函数声明和一个变量 tickCount (记录tick的数值,逢60进位)。然后在Screen2View.cpp中实现handleTickEvent() :

模拟器运行效果如下:

还需要最后一步:处理圆弧,让他动起来!圆弧动画的原理:定时更新圆弧的起始位置和结束位置。增加2个变量addStart、addEnd,分别控制首末位置的“增量”,addStart==2、addEnd==1时,起始位置变得快、结束位置变得慢,看起来就是圆弧长度在缩短;反之,圆弧长度则不断变长(不理解这个算法没关系,看下面图示):

细心的你可能已经看到:设置页面里设置的是分钟,但运行页面里分钟却是按秒变化的 ---- 这个bug留给你修改吧。

最后,烧写到目标板上跑跑看!(本讲完毕)

  • 浣跨敤TouchGFX寮鍙慡TM32鐣岄潰搴旂敤涔嬪叆闂ㄧ瘒(涓)-- 澶氬睆鍛堢幇涓嶮VP妗嗘灦(3...
    绛旓細涓轰簡璁╂椂闂存樉绀轰笉鏂彉鍖栵紝涓涓氬父鐨勬兂娉曟槸锛氬埄鐢STM32鐨勫畾鏃跺櫒銆傝屽湪touchgfx涓紝瀹炵幇杩欎釜鍔熻兘鍙樺緱鏇村姞绠鍗曪細touchgfx鐩存帴鎻愪緵浜嗕竴涓滄淮绛斺濆嚱鏁帮紙浠ュ強鑷姩杩愯杩欎釜鍔熻兘鐨勬満鍒讹級--- handleTickEvent()銆傞檺浜庢枃绔犵瘒骞咃紝鍏充簬杩欎釜鍑芥暟鐨勫叿浣撹В閲婅瑙乼ouchgfx鐨凙PI璇存槑鎵嬪唽锛岃繖閲岀洿鎺ュ睍绀哄浣曞簲鐢ㄤ粬锛氫笂鍥...
  • TouchGFX鏀寔Stm32F407绯诲垪鍚?
    绛旓細TouchGFX鏀寔STM32鐨勫叏绯诲垪寮鍙鏉裤傛敮鎸丼TM32F407鐨勪絾鏄渶瑕佸ぇ涓鐐圭殑flash1-2M鎴栧鎺lash鑺墖闇瑕佷繚瀛樺瓧浣撳浘鐗囩瓑璧勬簮銆
  • touchgfx鎬庝箞娣诲姞stm32妯℃澘?
    绛旓細瑕佽仈缃戯紝涓嶇劧鏄病鏈夌殑銆傚綋鐒讹紝涔熶笉鏄墍鏈夌殑鑺墖閮芥湁銆
  • ST鍙戝竷鏂颁竴浠e井鎺у埗鍣STM32H7:鍙屾牳鎬ц兘涓庝赴瀵屽姛鑳界殑瀹岀編缁勫悎
    绛旓細鎰忔硶鍗婂浣撳凡缁忓湪STM32Cube鐢熸佺郴缁熷唴澧炲姞浜哠TM32CubeH7鍥轰欢妯″潡鍜屽簲鐢ㄧ▼搴忔簮浠g爜锛屽寘鎷熀浜TouchGFX鍜孲TemWin鍥惧舰鍫嗘爤搴撶殑鍥惧舰瑙e喅鏂规銆傛柊澧炵‖浠跺伐鍏峰寘鎷瘎浼版澘銆佸彂鐜板浠跺拰Nucleo寮鍙鏉裤傚紑鍙戜汉鍛樺彲浠浣跨敤STM32Cube寮鍙戠幆澧冪殑鎵鏈夋爣鍑嗙粍浠讹紝鍖呮嫭ST-MC-SUITE鐢垫満鎺у埗宸ュ叿鍖呫丼TM32Cube.AI鏈哄櫒瀛︿範宸ュ叿鍖呫丼TM32C...
  • STM32CubeMX 鍙互姹夊寲鍚?
    绛旓細STM32CubeMX 鍙互姹夊寲鐨勩係TM32CubeMX浠嶸5.1.0鐗堟湰鏇存柊浠ュ悗灏辨敮鎸佷腑鏂囩晫闈簡銆傛瑕 A.澧炲姞瀵筍TM32WB绯诲垪鐨勬敮鎸 STM32WB鏄弻鏍搞佸鍗忚鏃犵嚎寰帶鍒跺櫒锛屾彁渚汼TM32Cube_FW_WB_V1.0.0杞欢鍖呫侭.娣诲姞浜嗗绗竴涓狹PUs锛圫TM32MP1绯诲垪锛夌殑鏀寔 STM32MP1鏄疌ortex®-A7鍜孋ortex®-M4澶氭牳锛...
  • qtouch缁勬佽蒋浠跺紑婧愬悧
    绛旓細闇瑕佹敞鎰忕殑鏄紝铏界劧qtouch缁勬佽蒋浠舵湰韬笉鏄紑婧愯蒋浠讹紝浣嗘槸鎰忔硶鍗婂浣撳叕鍙稿湪鍏跺畼鏂圭綉绔欎笂鎻愪緵浜嗗厤璐逛笅杞藉拰浣跨敤鐨剄touch杞欢濂椾欢锛圫TSW-STM32027锛夛紝鍏朵腑鍖呭惈浜唓touch缁勬佽蒋浠跺拰鍏朵粬鐩稿叧宸ュ叿銆傛澶栵紝寮鍙鑰呰繕鍙互浣跨敤鍏朵粬寮婧愯蒋浠跺拰宸ュ叿鏉ラ厤鍚坬touch鑺墖杩涜寮鍙戝拰璋冭瘯锛屼緥濡侫rduino寮鍙戞澘銆丳rocessing缂栫▼璇█绛夈
  • 瀛﹁繃C,鎯冲涓浜涚畝鍗曠殑C++鍋欸UI,鎺ㄨ崘浠涔堜功?
    绛旓細瑕佸鎳侻FC锛岄鍏堣瀛﹀ソc++锛孧FC鍙槸涓涓敤c++缂栧啓鐨勫簱鑰屽凡锛宑++娌℃湁鎼炴噦锛屼笉鍙兘瀛︽噦MFC浣犲彲浠ユ壘涓浜涗功鐪嬶紝杩欐湰姣旇緝缁忓吀锛氥奦C++娣卞叆璇﹁В銆嬪瓩閼 钁楀缓绔婱FC宸ョ▼鏃堕夋嫨鍚戝锛屽彲浠ヨ嚜鍔ㄧ敓鎴愪竴涓▼搴忔鏋禖++绋嬪簭璁捐璇█(The C++ Programming Language) 浣滆咃細Bjarne Stroustrup(鏇存柊鍒癈++11) C++涔嬬埗鍐...
  • 扩展阅读:每天试用一小时vp加速器 ... 小火箭vqn加速 ... 苹果ios系统下载安装 ... pubg苹果手机下载入口 ... 免费加速服务器国外 ... m t管理器ios苹果版下载 ... 苹果分身版ios下载 ... 雷霆加速永久免费版 ... stripchat网页直播入口 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网