成人免费无码不卡毛片,亚洲AⅤ无码精品一区二区三区,国产尤物精品视频,久久精品日本亚洲,欧美成人一区三区无码乱码A片,中文字日产幕码一区二区色哟哟,亞洲日韓中文字幕網AV

  • 正文
  • 推薦器件
  • 相關(guān)推薦
申請入駐 產(chǎn)業(yè)圖譜

技術(shù)分享 | AWTK 開源串口屏開發(fā)(13) - 計算器應用

2024/03/16
2057
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

計算器是一個常見的應用程序,在 AWTK 串口屏中,利用 fscript 表達式計算函數(shù),無需編寫一行傳統(tǒng)的代碼,即可實現(xiàn)一個簡單的計算器應用程序。

1. 功能

計算器是一個很常見的應用,比如在電子秤中,可能就需要這樣一個應用。在計算器中會用到一些有意思的知識點,比如嵌入鍵盤,在數(shù)字輸入或密碼輸入也會用到。這里我們實現(xiàn)一個簡單的計算器,不需要編寫代碼,設計好界面,添加綁定規(guī)則即可。

在這里例子中,模型(也就是數(shù)據(jù))里只有一個?expr:

變量名 數(shù)據(jù)類型 功能說明
expr 字符串 保存表達式或結(jié)果

2. 創(chuàng)建項目

從模板創(chuàng)建項目,將 hmi/template_app 拷貝 hmi/calculator 即可。

第一個項目最好不要放到其它目錄,因為放到其它目錄需要修改配置文件中的路徑,等熟悉之后再考慮放到其它目錄。路徑中也不要中文和空格,避免不必要的麻煩。

3. 制作界面

用 AWStudio 打開上面 calculator 目錄下的 project.json 文件。里面有一個空的窗口,做出類似下面的界面。

4. 添加綁定規(guī)則

4.1 表達式(結(jié)果)

用 edit 控件顯示表達式,將?表達式?的?文本?屬性綁定到?expr?變量。添加自定義的屬性?v-data:value,將值設置為?{expr}。

綁定屬性 綁定規(guī)則 說明
v-data:value {expr} expr 是內(nèi)置的變量,用于保存表達式。

4.2 輸入數(shù)字 0

?0?按鈕的?點擊?事件綁定到?fscript?命令。添加自定義的屬性?v-on:click,將值設置為?{fscript, Args=set(expr, expr+‘0’)}。

綁定屬性 綁定規(guī)則 說明
v-on:click {fscript, Args=set(expr, expr+‘0’)} 在表達式后面追加字符串‘0’。

4.3 輸入數(shù)字 1

將?1?按鈕的?點擊?事件綁定到?fscript?命令。添加自定義的屬性?v-on:click,將值設置為?{fscript, Args=set(expr, expr+‘1’)}。

綁定屬性 綁定規(guī)則 說明
v-on:click {fscript, Args=set(expr, expr+‘1’)} 在表達式后面追加字符串‘1’。

4.4 輸入數(shù)字 2

將?2?按鈕的?點擊?事件綁定到?fscript?命令。添加自定義的屬性?v-on:click,將值設置為?{fscript, Args=set(expr, expr+‘2’)}。

綁定屬性 綁定規(guī)則 說明
v-on:click {fscript, Args=set(expr, expr+‘2’)} 在表達式后面追加字符串‘2’。

4.5 輸入數(shù)字 3

將?3?按鈕的?點擊?事件綁定到?fscript?命令。添加自定義的屬性?v-on:click,將值設置為?{fscript, Args=set(expr, expr+‘3’)}。

綁定屬性 綁定規(guī)則 說明
v-on:click {fscript, Args=set(expr, expr+‘3’)} 在表達式后面追加字符串‘3’。

4.6?輸入數(shù)字 4

將?4?按鈕的?點擊?事件綁定到?fscript?命令。添加自定義的屬性?v-on:click,將值設置為?{fscript, Args=set(expr, expr+‘4’)}。

綁定屬性 綁定規(guī)則 說明
v-on:click {fscript, Args=set(expr, expr+‘4’)} 在表達式后面追加字符串‘4’。

4.7?輸入數(shù)字 5

將?5?按鈕的?點擊?事件綁定到?fscript?命令。添加自定義的屬性?v-on:click,將值設置為?{fscript, Args=set(expr, expr+‘5’)}。

綁定屬性 綁定規(guī)則 說明
v-on:click {fscript, Args=set(expr, expr+‘5’)} 在表達式后面追加字符串‘5’。

4.8?輸入數(shù)字?6

將?6?按鈕的?點擊?事件綁定到?fscript?命令。添加自定義的屬性?v-on:click,將值設置為?{fscript, Args=set(expr, expr+‘6’)}。

綁定屬性 綁定規(guī)則 說明
v-on:click {fscript, Args=set(expr, expr+‘6’)} 在表達式后面追加字符串‘6’。

4.9?輸入數(shù)字?7

將?7?按鈕的?點擊?事件綁定到?fscript?命令。添加自定義的屬性?v-on:click,將值設置為?{fscript, Args=set(expr, expr+‘7’)}。

綁定屬性 綁定規(guī)則 說明
v-on:click {fscript, Args=set(expr, expr+‘7’)} 在表達式后面追加字符串‘7’。

4.10?輸入數(shù)字?8

將?8?按鈕的?點擊?事件綁定到?fscript?命令。添加自定義的屬性?v-on:click,將值設置為?{fscript, Args=set(expr, expr+‘8’)}。

綁定屬性 綁定規(guī)則 說明
v-on:click {fscript, Args=set(expr, expr+‘8’)} 在表達式后面追加字符串‘8’。

4.11?輸入數(shù)字?9

將?9?按鈕的?點擊?事件綁定到?fscript?命令。添加自定義的屬性?v-on:click,將值設置為?{fscript, Args=set(expr, expr+‘9’)}。

綁定屬性 綁定規(guī)則 說明
v-on:click {fscript, Args=set(expr, expr+‘9’)} 在表達式后面追加字符串‘9’。

4.12?輸入運算符?+

將?+?按鈕的?點擊?事件綁定到?fscript?命令。添加自定義的屬性?v-on:click,將值設置為?{fscript, Args=set(expr, expr+‘+’)}。

綁定屬性 綁定規(guī)則 說明
v-on:click {fscript, Args=set(expr, expr+‘+’)} 在表達式后面追加字符串‘+’。

4.13?輸入運算符?-

將?-?按鈕的?點擊?事件綁定到?fscript?命令。添加自定義的屬性?v-on:click,將值設置為?{fscript, Args=set(expr, expr+‘-’)}。

綁定屬性 綁定規(guī)則 說明
v-on:click {fscript, Args=set(expr, expr+‘-’)} 在表達式后面追加字符串‘-’。

4.14?輸入運算符?*

將?*?按鈕的?點擊?事件綁定到?fscript?命令。添加自定義的屬性?v-on:click,將值設置為?{fscript, Args=set(expr, expr+‘*’)}。

綁定屬性 綁定規(guī)則 說明
v-on:click {fscript, Args=set(expr, expr+‘*’)} 在表達式后面追加字符串‘*’。

4.15?輸入運算符?/

將?/?按鈕的?點擊?事件綁定到?fscript?命令。添加自定義的屬性?v-on:click,將值設置為?{fscript, Args=set(expr, expr+‘/’)}。

綁定屬性 綁定規(guī)則 說明
v-on:click {fscript, Args=set(expr, expr+‘/’)} 在表達式后面追加字符串‘/’。

4.16 輸入?=?計算結(jié)果

將?=?按鈕的?點擊?事件綁定到?fscript?命令。添加自定義的屬性?v-on:click,將值設置為?{fscript, Args=set(expr,?str(eval(expr)))}。

綁定屬性 綁定規(guī)則 說明
v-on:click {fscript, Args=set(expr, ?str(eval(expr)))} eval 計算表達式結(jié)果,str 將結(jié)果轉(zhuǎn)成字符串。

4.17 刪除鍵?<=

將?<=?按鈕的?點擊?事件綁定到?fscript?命令。添加自定義的屬性?v-on:click,將值設置為?{fscript, Args=set(expr,?usubstr(expr,0,-1))}。

綁定屬性 綁定規(guī)則 說明
v-on:click {fscript, Args=set(expr,usubstr(expr,0,-1))} 刪除表達式中最后一個字符?。

4.18 窗口模型

指定窗口的模型為 dummy(expr=’’),dummy 是一個簡單的模型,只能存放數(shù)據(jù),而且是控件或窗口私有的。expr=’'表示將 expr 初始化為空字符串。

5. 初始化數(shù)據(jù)

6. 描述需要持久化的數(shù)據(jù)

7. 編譯運行

運行 bin 目錄下的 demo 程序:

8. 注意

本項目并沒有編寫界面相關(guān)的代碼,AWStudio 在 src/pages 目錄下生成了一些代碼框架,這些代碼并沒有用到,可以刪除也可以不用管它,但是不能加入編譯。

完整示例請參考:demo_calculator。

推薦器件

更多器件
器件型號 數(shù)量 器件廠商 器件描述 數(shù)據(jù)手冊 ECAD模型 風險等級 參考價格 更多信息
KSZ9031MNXIC-TR 1 Microchip Technology Inc DATACOM, ETHERNET TRANSCEIVER, QCC64

ECAD模型

下載ECAD模型
$4.17 查看
LAN8710A-EZC-ABC 1 Microchip Technology Inc Ethernet Transceiver

ECAD模型

下載ECAD模型
$1.55 查看
NCV7321D12R2G 1 onsemi LIN Transceiver, Stand-alone ESD Improved, 3000-REEL
$1.11 查看
致遠電子

致遠電子

廣州致遠電子股份有限公司成立于2001年,注冊資金5000萬元,國家級高新技術(shù)認證企業(yè),廣州市高端工控測量儀器工程技術(shù)研究開發(fā)中心,Intel ECA全球合作伙伴和微軟嵌入式系統(tǒng)金牌合作伙伴。

廣州致遠電子股份有限公司成立于2001年,注冊資金5000萬元,國家級高新技術(shù)認證企業(yè),廣州市高端工控測量儀器工程技術(shù)研究開發(fā)中心,Intel ECA全球合作伙伴和微軟嵌入式系統(tǒng)金牌合作伙伴。收起

查看更多

相關(guān)推薦

登錄即可解鎖
  • 海量技術(shù)文章
  • 設計資源下載
  • 產(chǎn)業(yè)鏈客戶資源
  • 寫文章/發(fā)需求
立即登錄
通州区| 陆河县| 布尔津县| 防城港市| 静海县| 临西县| 邮箱| 衢州市| 德保县| 马公市| 北辰区| 彰化市| 托克逊县| 安图县| 辉南县| 潼关县| 巴东县| 淄博市| 海阳市| 五华县| 玉环县| 海门市| 乐平市| 临泉县| 阳谷县| 托克托县| 新宾| 定陶县| 兴业县| 宁安市| 建阳市| 新蔡县| 当涂县| 宿州市| 安远县| 辛集市| 高尔夫| 西和县| 芦山县| 荣成市| 盖州市|