国产chinesehdxxxx老太婆,办公室玩弄爆乳女秘hd,扒开腿狂躁女人爽出白浆 ,丁香婷婷激情俺也去俺来也,ww国产内射精品后入国产

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

【Z站推薦】AWTK最新動態(tài):使用serial_widget簡化串口編程

ZLG致遠(yuǎn)電子 ? 2022-08-08 10:06 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

把串口做成一個控件并不新鮮,在VB里有個通信組件,就是用來簡化串口編程的。最近AWTK也提供了這樣一個控件serial_widget,本文介紹一下它的使用方法。

1d247994-1516-11ed-9ade-dac502259ad0.jpg 基本功能我們編寫一個簡單的應(yīng)用程序,它有兩個功能:

  • 把收到的數(shù)據(jù)顯示出來。
  • 把界面輸入的數(shù)據(jù)發(fā)送給對方。


1d247994-1516-11ed-9ade-dac502259ad0.jpg UI界面描述文件1d3d20f2-1516-11ed-9ade-dac502259ad0.png

  

"open" text="Open Device" x="10" y="100" w="160" h="36" /> "device"x="180"y="100"w="-200"h="36"text="/dev/ttys032"/> "send"text="SendMessage"x="10"y="150"w="160"h="36"/> "send_msg"x="180"y="150"w="-200"h="36"text="helloserial"/> "recv_msg"x="c"y="b:100"w="90%"h="100"/> "serial"/>1d247994-1516-11ed-9ade-dac502259ad0.jpg 接收數(shù)據(jù)?先注冊數(shù)據(jù)事件的處理函數(shù)。

widget_child_on(win, "serial", EVT_DATA, on_data, win);

?在處理函數(shù)中讀取數(shù)據(jù)并顯示到界面上。

static ret_t on_data(void* ctx, event_t* e) { char text[128] = {0}; widget_t* win = WIDGET(ctx); serial_widget_t* serial = SERIAL_WIDGET(e->target); widget_t* label = widget_lookup(win, "recv_msg", TRUE); int32_t len = tk_istream_read(serial->istream, text, sizeof(text)-1); if(len > 0) {
    text[len] = '\0';
    widget_set_text_utf8(label, text);
  }returnRET_OK;
}

1d247994-1516-11ed-9ade-dac502259ad0.jpg 發(fā)送數(shù)據(jù)

從界面讀取數(shù)據(jù),并發(fā)送到串口

static ret_t on_send(void* ctx, event_t* e) { char text[128] = {0}; widget_t* win = WIDGET(ctx); serial_widget_t* serial = SERIAL_WIDGET(widget_lookup(win, "serial", TRUE)); widget_t* edit = widget_lookup(win, "send_msg", TRUE);
  widget_get_text_utf8(edit, text, sizeof(text)-1);
  tk_ostream_write_len(serial->ostream, text, strlen(text), 3000); return RET_OK;
}

完整代碼請參考 serial 可以下載 awtk-c-demos 編譯運(yùn)行。

./bin/demo_serial

1d247994-1516-11ed-9ade-dac502259ad0.jpg 測試

下面操作是在 Linux/MacOS 上測試的,Windows 下需要安裝虛擬串口軟件,具體做法有些不同,請自行調(diào)整。

?使用socat創(chuàng)建虛擬串口

socat -d -d pty,raw,echo=0 pty,raw,echo=0

該命令會生成兩個設(shè)備文件,對應(yīng)串口的兩端(每次生成的設(shè)備名可能不同)。

2022/07/08 16:32:33 socat[1879] N PTY is /dev/ttys0322022/07/08 16:32:33 socat[1879] N PTY is /dev/ttys0332022/07/08 16:32:33 socat[1879] N starting data transfer loop with FDs [5,5] and [7,7]

?在AWTK 這端我們使用設(shè)備/dev/ttys032
?在另外一端讀取數(shù)據(jù)
打開一個新的終端,并運(yùn)行下面的命令(有數(shù)據(jù)時自動顯示出來):

cat /dev/ttys033

?在另外一端發(fā)送數(shù)據(jù)

打開一個新的終端,并運(yùn)行下面的命令(發(fā)送當(dāng)前時間字符串):

date >/dev/ttys033

1d247994-1516-11ed-9ade-dac502259ad0.jpg 使用fscript進(jìn)行串口編程

也可以使用 fscript 進(jìn)行串口編程(配合 AWBlock 就簡單了)。AWTK 里提供一個與前面功能相同的例子,總體來看要簡潔不少。

  

"打開設(shè)備" x="16" y="15" w="76" h="34" > "on:click"> var device = widget_get('device', 'text') widget_set('serial','device', device)

  "device" x="119" y="13" w="178" h="38" text="/dev/ttys028" />
  "recv" x="5" y="123" w="303" h="101" />
  "send" text="hello serial" x="5" y="273" w="200" h="34" />
  

"button" tr_text="send" x="220" y="274" w="81" h="34" > "on:click"> var os = widget_get('serial','ostream') var msg = widget_get('send', 'text') ostream_write_string(os, msg)

  "serial">
    "on:data">
      var is = widget_get('self','istream')
      var msg = istream_read_string(is, 100, 0)
      widget_set('recv', 'text', msg)    
  

在 AWTK 根目錄下可以運(yùn)行該例子,測試方法與前面相同。

./bin/preview_ui design/default/ui/serial.xml

1d247994-1516-11ed-9ade-dac502259ad0.jpg 移植

目前串口只實(shí)現(xiàn)了Windows, Linux, MacOS, Android 和 AWorks 等平臺,其它平臺需要自己移植。

請參考AWorks平臺的移植:

src/platforms/aworkslp/serial_helper.c

【版權(quán)聲明】本文為ZLG開發(fā)者社區(qū)用戶原創(chuàng)內(nèi)容,未經(jīng)授權(quán)不得轉(zhuǎn)載。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 串口通信
    +關(guān)注

    關(guān)注

    34

    文章

    1640

    瀏覽量

    56831
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    AWTK-WEB 快速入門(5) - C 語言 WebSocket 應(yīng)用程序

    導(dǎo)讀WebSocket可以實(shí)現(xiàn)雙向通信,適合實(shí)時通信場景。本文介紹一下使用C語言開發(fā)AWTK-WEB應(yīng)用程序,并用WebSocket與服務(wù)器通訊。用AWTKDesigner新建一個應(yīng)用程序先安裝
    的頭像 發(fā)表于 02-19 11:49 ?456次閱讀
    <b class='flag-5'>AWTK</b>-WEB 快速入門(5) - C 語言 WebSocket 應(yīng)用程序

    AWTK-WEB 快速入門(2) - JS 應(yīng)用程序

    導(dǎo)讀AWTK可以使用相同的技術(shù)棧開發(fā)各種平臺的應(yīng)用程序。有時我們需要使用Web界面與設(shè)備進(jìn)行交互,本文介紹一下如何使用JS語言開發(fā)AWTK-WEB應(yīng)用程序。用AWTKDesigner新建一個應(yīng)用程序先安裝AWTKDesigner:
    的頭像 發(fā)表于 12-05 01:04 ?503次閱讀
    <b class='flag-5'>AWTK</b>-WEB 快速入門(2) - JS 應(yīng)用程序

    AWTK-WEB 快速入門(1) - C 語言應(yīng)用程序

    導(dǎo)讀AWTK可以使用相同的技術(shù)棧開發(fā)各種平臺的應(yīng)用程序。有時我們需要使用Web界面與設(shè)備進(jìn)行交互,本文介紹一下如何使用C語言開發(fā)AWTK-WEB應(yīng)用程序。用AWTKDesigner新建一個應(yīng)用程序先
    的頭像 發(fā)表于 11-27 11:46 ?725次閱讀
    <b class='flag-5'>AWTK</b>-WEB 快速入門(1) - C 語言應(yīng)用程序

    AWTK 最新動態(tài):支持瀏覽器控件

    導(dǎo)讀AWTK瀏覽器控件,基于webview項(xiàng)目實(shí)現(xiàn),將瀏覽器嵌入到AWTK應(yīng)用程序中,讓開發(fā)者可以方便的集成在線幫助和調(diào)用地圖等功能。awtk-widget-web-view是基于webview實(shí)現(xiàn)的
    的頭像 發(fā)表于 11-20 01:05 ?659次閱讀
    <b class='flag-5'>AWTK</b> 最新<b class='flag-5'>動態(tài)</b>:支持瀏覽器控件

    AWTK使用經(jīng)驗(yàn)】如何使用系統(tǒng)輸入法與開啟最大化窗口功能

    導(dǎo)讀AWTK是基于C語言開發(fā)的跨平臺GUI框架。AWTK使用經(jīng)驗(yàn)系列文章將介紹開發(fā)AWTK過程中一些常見問題與解決方案。AWTK具有跨平臺的性質(zhì),不僅可以開發(fā)嵌入式設(shè)備的程序,也可以開
    的頭像 發(fā)表于 11-14 01:05 ?662次閱讀
    【<b class='flag-5'>AWTK</b>使用經(jīng)驗(yàn)】如何使用系統(tǒng)輸入法與開啟最大化窗口功能

    串口屏支持哪些編程語言和開發(fā)環(huán)境?

    串口屏作為一種常用的顯示和交互設(shè)備,支持多種編程語言和開發(fā)環(huán)境。以下是對串口屏支持的編程語言和開發(fā)環(huán)境的詳細(xì)歸納:
    的頭像 發(fā)表于 11-13 11:45 ?754次閱讀
    <b class='flag-5'>串口</b>屏支持哪些<b class='flag-5'>編程</b>語言和開發(fā)環(huán)境?

    AWTK 最新動態(tài):支持鴻蒙系統(tǒng)(HarmonyOS Next)

    導(dǎo)讀HarmonyOS是全球第三大移動操作系統(tǒng),有巨大的市場潛力,在國產(chǎn)替代的背景下,機(jī)會多多,AWTK支持HarmonyOS,讓AWTK開發(fā)者也能享受HarmonyOS生態(tài)的紅利。AWTK全稱
    的頭像 發(fā)表于 11-06 08:03 ?849次閱讀
    <b class='flag-5'>AWTK</b> 最新<b class='flag-5'>動態(tài)</b>:支持鴻蒙系統(tǒng)(HarmonyOS Next)

    用于動態(tài)穩(wěn)定性分析的直流電機(jī)建模的簡化方法

    電子發(fā)燒友網(wǎng)站提供《用于動態(tài)穩(wěn)定性分析的直流電機(jī)建模的簡化方法.pdf》資料免費(fèi)下載
    發(fā)表于 10-24 10:27 ?0次下載
    用于<b class='flag-5'>動態(tài)</b>穩(wěn)定性分析的直流電機(jī)建模的<b class='flag-5'>簡化</b>方法

    AWTK使用經(jīng)驗(yàn)】如何裁剪字庫以及如何使用點(diǎn)陣字

    AWTK是基于C語言開發(fā)的跨平臺GUI框架。AWTK使用經(jīng)驗(yàn)系列文章將介紹開發(fā)AWTK過程中一些常見問題與解決方案。AWTK如何裁剪字庫在AWTK
    的頭像 發(fā)表于 10-10 08:05 ?557次閱讀
    【<b class='flag-5'>AWTK</b>使用經(jīng)驗(yàn)】如何裁剪字庫以及如何使用點(diǎn)陣字

    AWTK使用經(jīng)驗(yàn)】如何在AWTK顯示阿拉伯文本

    AWTK是基于C語言開發(fā)的跨平臺GUI框架。AWTK使用經(jīng)驗(yàn)系列文章將介紹開發(fā)AWTK過程中一些常見問題與解決方案,例如:如何播放視頻或攝像頭畫面?如何播放序列幀動畫?這些都會在系列文章進(jìn)行解答
    的頭像 發(fā)表于 09-12 08:07 ?699次閱讀
    【<b class='flag-5'>AWTK</b>使用經(jīng)驗(yàn)】如何在<b class='flag-5'>AWTK</b>顯示阿拉伯文本

    動態(tài)編程增益放大器

    電子發(fā)燒友網(wǎng)站提供《動態(tài)編程增益放大器.pdf》資料免費(fèi)下載
    發(fā)表于 09-07 10:43 ?0次下載
    <b class='flag-5'>動態(tài)</b>可<b class='flag-5'>編程</b>增益放大器

    串口驅(qū)動分析之serial driver

    前兩節(jié)我們介紹串口驅(qū)動的框架和tty core部分。這節(jié)我們介紹和硬件緊密相關(guān)的串口驅(qū)動部分。
    的頭像 發(fā)表于 09-04 14:23 ?1016次閱讀
    <b class='flag-5'>串口</b>驅(qū)動分析之<b class='flag-5'>serial</b> driver

    AWTK最新動態(tài)AWTK 1.8版本發(fā)布

    AWTK是一套基于C語言開發(fā)的跨平臺GUI框架,目前正式推出1.8版本。本次更新不僅對許多細(xì)節(jié)進(jìn)行了優(yōu)化,還增添了眾多重要特性和文檔資料。此外,還引入了三款創(chuàng)新控件和兩個與AWTK相關(guān)項(xiàng)目。AWTK
    的頭像 發(fā)表于 08-30 12:48 ?842次閱讀
    【<b class='flag-5'>AWTK</b>最新<b class='flag-5'>動態(tài)</b>】<b class='flag-5'>AWTK</b> 1.8版本發(fā)布

    串口和USB有什么區(qū)別

    串口Serial Port)和USB(Universal Serial Bus,通用串行總線)是計(jì)算機(jī)和外部設(shè)備連接中常用的兩種接口,它們在通信方式、傳輸速率、接口形狀與應(yīng)用領(lǐng)域等方面存在顯著的差異。
    的頭像 發(fā)表于 08-25 16:55 ?7657次閱讀

    AWTK使用經(jīng)驗(yàn)】如何更換AWTK SDK與渲染模式

    AWTK是基于C語言開發(fā)的跨平臺GUI框架。《AWTK使用經(jīng)驗(yàn)》系列文章將介紹開發(fā)AWTK過程中一些常見問題與解決方案,例如:如何播放攝像頭畫面?如何更換AWTK的版本?這些都會在系列
    的頭像 發(fā)表于 08-01 08:25 ?1559次閱讀
    【<b class='flag-5'>AWTK</b>使用經(jīng)驗(yàn)】如何更換<b class='flag-5'>AWTK</b> SDK與渲染模式