一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

鴻蒙開(kāi)發(fā)板上實(shí)現(xiàn)TCP電子琴

OpenHarmony技術(shù)社區(qū) ? 來(lái)源:OST開(kāi)源開(kāi)發(fā)者 ? 2023-05-15 09:33 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

本文實(shí)現(xiàn)了用潤(rùn)和 HiHope Pegasus 3861 開(kāi)發(fā)板實(shí)現(xiàn) TCP 電子琴。

2e8b8474-f29d-11ed-90ce-dac502259ad0.png

樣例運(yùn)行的 OpenHarmony 源碼環(huán)境下載:

https://gitee.com/HiSpark/hi3861_hdu_iot_application
通過(guò)本文您將了解:

HiHopePegasus 3861 開(kāi)發(fā)環(huán)境選擇

HiHopePegasus 3861 連接 wifi

HiHopePegasus 3861 TCP 連接

HiHopePegasus 3861 環(huán)境監(jiān)測(cè)板上蜂鳴器的控制

TCP電子琴樣例運(yùn)行效果

3861 開(kāi)發(fā)板作為 TCP 服務(wù)端與 TCP 客戶端(自己的設(shè)備)連接。

TCP 客戶端發(fā)送 12345678,控制開(kāi)發(fā)板上環(huán)境拓展板上的蜂鳴器發(fā)出 duō lái mī fā suō lā xī duō 8 種音調(diào)。

樣例運(yùn)行步驟

①下載源文件

https://gitee.com/from-north-to-north/open-armony-north/tree/master/潤(rùn)和3861輕量系統(tǒng)TCP電子琴

將源文件文件放置在命名為 TCP_keyboard_demo 的文件夾下,將其放置在 OpenHarmony 輕量系統(tǒng)源碼 applicationssamplewifi-iotapp 目錄下。

②修改 net_params.h 文件的相關(guān)代碼

如下:

PARAM_HOTSPOT_SSID 設(shè)置為要連接的熱點(diǎn)名稱

PARAM_HOTSPOT_PSK 設(shè)置為要連接的熱點(diǎn)秘碼

PARAM_SERVER_ADDR 設(shè)置為要連接的作為 TCP 客戶端的設(shè)備 IP 地址

PARAM_SERVER_PORT 設(shè)置 3861開(kāi)發(fā)板(作為 TCP 服務(wù)端) TCP socket端口號(hào)

③在源碼 applicationssamplewifi-iotappBUILD.gn 文件 features 字段下添加"TCP_keyboard_demo:TCP_keyboard_demo",使樣例 demo 加入編譯。

④根據(jù) 3861 開(kāi)發(fā)板的 ip(串口打印出來(lái)的)和 net_params.h 中填寫的 TCP socket 端口號(hào)創(chuàng)建客戶端,連接 3861 開(kāi)發(fā)板。

2f11b256-f29d-11ed-90ce-dac502259ad0.png

主控芯片對(duì)應(yīng)關(guān)系

環(huán)境監(jiān)測(cè)板上蜂鳴器與主控芯片(Pegasus)引腳的對(duì)應(yīng)關(guān)系:GPIO9/PWM0。

源碼分析

文件說(shuō)明:

2f46dde6-f29d-11ed-90ce-dac502259ad0.png

tcp_server_test.c 文件解析:

#include
#include
#include

#include

//TCP連接的部分
#include"net_demo.h"
#include"net_common.h"

/********************環(huán)境監(jiān)測(cè)板上蜂鳴器的部分*********************************/
#include"iot_gpio.h"
#include"iot_pwm.h"
#include"hi_pwm.h"
#include"hi_io.h"
#defineBEEP_PIN_NAME9
#defineBEEP_PIN_FUNCTION5
#defineWIFI_IOT_PWM_PORT_PWM00
#defineBEEP_PWM_DUTY50

/*********************************************************************/

#defineDELAY_1S(1)

voidTcpServerTest(unsignedshortport)
{

/********************環(huán)境監(jiān)測(cè)板上蜂鳴器的部分*********************************/
//初始化蜂鳴器
//蜂鳴器:GPIO9/PWM0
//環(huán)境監(jiān)測(cè)板上蜂鳴器與主控芯片(Pegasus)引腳的對(duì)應(yīng)關(guān)系GPIO9/PWM0
//IoTGpioInit用于初始化GPIO設(shè)備
IoTGpioInit(BEEP_PIN_NAME);
//hi_io_set_func用于配置某個(gè)IO的復(fù)用功能
hi_io_set_func(BEEP_PIN_NAME,BEEP_PIN_FUNCTION);
//IoTGpioSetDir用于設(shè)置GPIO引腳的方向
IoTGpioSetDir(BEEP_PIN_NAME,IOT_GPIO_DIR_OUT);
//IoTPwmInit用于初始化PWM設(shè)備
IoTPwmInit(WIFI_IOT_PWM_PORT_PWM0);

/***************************************************************************************/

ssize_tretval=0;
intbacklog=1;
intsockfd=socket(AF_INET,SOCK_STREAM,0);//TCPsocket
intconnfd=-1;

structsockaddr_inclientAddr={0};
socklen_tclientAddrLen=sizeof(clientAddr);
structsockaddr_inserverAddr={0};
serverAddr.sin_family=AF_INET;
serverAddr.sin_port=htons(port);//端口號(hào),從主機(jī)字節(jié)序轉(zhuǎn)為網(wǎng)絡(luò)字節(jié)序
serverAddr.sin_addr.s_addr=htonl(INADDR_ANY);//允許任意主機(jī)接入,0.0.0.0

/*************************************綁定端口****************************************************/
retval=bind(sockfd,(structsockaddr*)&serverAddr,sizeof(serverAddr));
if(retval

審核編輯:湯梓紅

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

    關(guān)注

    8

    文章

    1402

    瀏覽量

    81042
  • 開(kāi)發(fā)板
    +關(guān)注

    關(guān)注

    25

    文章

    5680

    瀏覽量

    104698
  • 電子琴
    +關(guān)注

    關(guān)注

    4

    文章

    154

    瀏覽量

    31192
  • 鴻蒙
    +關(guān)注

    關(guān)注

    60

    文章

    2620

    瀏覽量

    44047
  • HiHope
    +關(guān)注

    關(guān)注

    0

    文章

    63

    瀏覽量

    3851

原文標(biāo)題:鴻蒙開(kāi)發(fā)板上實(shí)現(xiàn)TCP電子琴

文章出處:【微信號(hào):gh_834c4b3d87fe,微信公眾號(hào):OpenHarmony技術(shù)社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    [求助]我電腦聲音想輸出到電子琴,能不能直接把耳機(jī)線接到電子琴喇叭,具體怎么

    我電腦聲音想輸出到電子琴,能不能直接把耳機(jī)線接到電子琴喇叭,具體怎么做,請(qǐng)?jiān)敿?xì)給我說(shuō)下?。ㄏ喈?dāng)于把電子琴當(dāng)個(gè)音箱)這個(gè)
    發(fā)表于 06-03 23:23

    簡(jiǎn)易電子琴仿真

    我用555定時(shí)器做了一個(gè)簡(jiǎn)單的電子琴 有八個(gè)音節(jié) 但是聲音出不來(lái) 有哪位高人有簡(jiǎn)易電子琴的proteus仿真啊
    發(fā)表于 05-25 11:35

    電子琴節(jié)拍

    有那位高手知道用51做的電子琴的節(jié)拍怎么確定啊,急求。。。
    發(fā)表于 06-28 22:57

    如何利用51單片機(jī)實(shí)現(xiàn)電子琴系統(tǒng)的設(shè)計(jì)?

    如何利用51單片機(jī)實(shí)現(xiàn)電子琴系統(tǒng)的設(shè)計(jì)?
    發(fā)表于 01-17 06:17

    電子琴設(shè)計(jì)

    電子琴設(shè)計(jì)
    發(fā)表于 08-19 12:01 ?252次下載

    電子琴實(shí)驗(yàn)

    電子琴實(shí)驗(yàn) 一. 實(shí)驗(yàn)?zāi)康睦脤?shí)驗(yàn)儀提供的按鍵K1~K7 作為電子琴按鍵,控制蜂鳴器發(fā)聲,使用戶了解計(jì)算機(jī)發(fā)聲原理,熟悉定
    發(fā)表于 09-22 10:48 ?3988次閱讀
    <b class='flag-5'>電子琴</b>實(shí)驗(yàn)

    使用FPGA DIY開(kāi)發(fā)板控制實(shí)現(xiàn)電子琴演奏功能

    wang1113的電子琴視頻。
    的頭像 發(fā)表于 06-22 00:58 ?3602次閱讀

    FPGA DIY開(kāi)發(fā)板控制電子琴

    haohaolinux 的電子琴視頻 。
    的頭像 發(fā)表于 06-20 16:00 ?4019次閱讀

    如何基于51單片機(jī)做簡(jiǎn)易的電子琴詳細(xì)資料合集免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是基于51開(kāi)發(fā)板做的簡(jiǎn)易電子琴的詳細(xì)資料合集
    發(fā)表于 07-24 08:00 ?14次下載
    如何基于51單片機(jī)做簡(jiǎn)易的<b class='flag-5'>電子琴</b>詳細(xì)資料合集免費(fèi)下載

    使用單片機(jī)實(shí)現(xiàn)智能電子琴的設(shè)計(jì)資料合集

    本文檔的主要內(nèi)容詳細(xì)介紹的是如何使用單片機(jī)實(shí)現(xiàn)智能電子琴的設(shè)計(jì)資料合集免費(fèi)下載
    發(fā)表于 03-12 08:00 ?30次下載
    使用單片機(jī)<b class='flag-5'>實(shí)現(xiàn)</b>智能<b class='flag-5'>電子琴</b>的設(shè)計(jì)資料合集

    基于FPGA的簡(jiǎn)易電子琴實(shí)現(xiàn)

    本系統(tǒng)是采用EDA技術(shù)設(shè)計(jì)的一個(gè)簡(jiǎn)易的八音符電子琴,該系統(tǒng)基于計(jì)算機(jī)中時(shí)鐘分頻器的原理,采用自頂向下的設(shè)計(jì)方法來(lái)實(shí)現(xiàn),它可以通過(guò)按鍵輸入來(lái)控制音響。多功能電子琴的設(shè)計(jì)是在原有普通電子琴
    發(fā)表于 04-28 11:16 ?47次下載

    基于STM32單片機(jī)的電子琴設(shè)計(jì)與實(shí)現(xiàn)

    基于STM32單片機(jī)的電子琴設(shè)計(jì)與實(shí)現(xiàn)
    發(fā)表于 06-27 09:25 ?130次下載

    電子琴的設(shè)計(jì)與實(shí)現(xiàn)

    電子琴
    發(fā)表于 05-31 16:48 ?26次下載

    基于FPGA的電子琴設(shè)計(jì)

    電子發(fā)燒友網(wǎng)站提供《基于FPGA的電子琴設(shè)計(jì).pdf》資料免費(fèi)下載
    發(fā)表于 10-10 09:40 ?13次下載
    基于FPGA的<b class='flag-5'>電子琴</b>設(shè)計(jì)

    電子琴設(shè)計(jì)資料

    電子發(fā)燒友網(wǎng)站提供《電子琴設(shè)計(jì)資料.pdf》資料免費(fèi)下載
    發(fā)表于 10-11 10:21 ?2次下載
    <b class='flag-5'>電子琴</b>設(shè)計(jì)資料