# HiSpark WiFi-IoT 鸿蒙套件样例开发--UART
![hihope_illustration](https://gitee.com/hihopeorg/hispark-hm-pegasus/raw/master/docs/figures/hihope_illustration.png)
[HiSpark WiFi-IoT鸿蒙开发套件](https://item.taobao.com/item.htm?id=622343426064&scene=taobao_shop) 首发于HDC 2020,是首批支持HarmonyOS 2.0的开发套件,亦是鸿蒙官方推荐套件,由润和软件HiHope量身打造,已在鸿蒙社区和广大鸿蒙开发者中得到广泛应用。
![wifi_iot](https://gitee.com/hihopeorg/hispark-hm-pegasus/raw/master/docs/figures/wifi_iot.png)
## 一、UART API
使用下面的API实现UART读写
#### 鸿蒙UART相关的API接口文件路径
**base/iot_hardware/interfaces/kits/wifiiot_lite/wifiiot_uart.h**
所使用的API接口有:
| API | 接口说明 |
| ------------------------------------------------------------ | ------------------------ |
| unsigned int UartInit(WifiIotUartIdx id, const WifiIotUartAttribute *param, const WifiIotUartExtraAttr *extraAttr); | 初始化,配置一个UART设备 |
| int UartRead(WifiIotUartIdx id, unsigned char *data, unsigned int dataLen) | 从UART设备中读取数据 |
| int UartWrite(WifiIotUartIdx id, const unsigned char *data, unsigned int dataLen) | 将数据写入UART设备 |
####
## 二、代码分析
首先需要使能UART2
vendor\hisi\hi3861\hi3861\build\config\usr_config.mk
配置CONFIG_UART2_SUPPORT=y
或者调用GPIO相关的API将串口所在的GPIO口设置为UART功能
```c
static void* UartDemo_Task(const char* arg)
{
unsigned int len = 0;
(void)arg;
printf("[UartDemo] UartDemo_Task()\n");
GpioInit();//使用GPIO,都需要调用该接口
printf("UART init...\r\n");
//UART参数配置
usr_uart_config();
UartWrite(WIFI_IOT_UART_IDX_2, (unsigned char *)uartWriteBuff, sizeof(uartWriteBuff));
while(1)
{
//读取UART2的数据
len = UartRead(WIFI_IOT_UART_IDX_2, uartReadBuff, sizeof(uartReadBuff));
if (len > 0) {
printf("Uart read data:%s", uartReadBuff);
}
usleep(100000);
}
return NULL;
}
```
## 三、如何编译
1. 将此目录下的 `uart_demo.c` 和 `BUILD.gn` 复制到openharmony源码的`applications\sample\wifi-iot\app\iothardware`目录下,
2. 修改openharmony源码的`applications\sample\wifi-iot\app\BUILD.gn`文件,将其中的 `features` 改为:
```
features = [
"iothardware:uart_demo",
]
```
3.在openharmony源码顶层目录执行:`python build.py wifiiot`
## 四、运行结果
```
##### 串口0
RX:ready to OS start
sdk ver:Hi3861V100R001C00SPC025 2020-09-03 18:10:00
FileSystem mount ok.
wifi init success!
[UartDemo] UartDemo_Entry()
[UartDemo] UartDemo_Task()
UART init...
00 00:00:00 0 132 D 0/HIVIEW: hilog init success.
00 00:00:00 0 132 D 0/HIVIEW: log limit init success.
00 00:00:00 0 132 I 1/SAMGR: Bootstrap core services(count:3).
00 00:00:00 0 132 I 1/SAMGR: Init service:0x4ae958 TaskPool:0xe5238
00 00:00:00 0 132 I 1/SAMGR: Init service:0x4ae964 TaskPool:0xe5258
00 00:00:00 0 132 I 1/SAMGR: Init service:0x4aea8c TaskPool:0xe5278
00 00:00:00 0 8 I 1/SAMGR: Init service 0x4ae964 <time: 0ms> success!
00 00:00:00 0 164 I 1/SAMGR: Init service 0x4ae958 <time: 0ms> success!
00 00:00:00 0 108 D 0/HIVIEW: hiview init success.
00 00:00:00 0 108 I 1/SAMGR: Init service 0x4aea8c <time: 10ms> success!
00 00:00:00 0 108 I 1/SAMGR: Initialized all core system services!
00 00:00:00 0 164 I 1/SAMGR: Bootstrap system and application services(count:0).
00 00:00:00 0 164 I 1/SAMGR: Initialized all system and application services!
00 00:00:00 0 164 I 1/SAMGR: Bootstrap dynamic registered services(count:0).
RX:Uart read data:hello
RX:Uart read data:12345678
##### 串口2
RX:hello uart!
TX:hello
TX:12345678
```
![img](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABXwAAAMWCAYAAABCzk5dAAAgAElEQVR4nOzd%0AT2yc13no/+cVaNwbizHINOsyYHamkA2JuL4tFBtSfBF04QsjVJbdadMiCe4i%0AiwY2SQMBLlI0N7WbLrQr5E3FwEmWESnYAXrhOCU3spid2SruqnV/ZBMBuReW%0A5/0tqDM8c3j+z3nn/TPfDzDQzPue95zzvjOiHj563jNVXde1AAAAAD2hwte6%0Ari88RqPRhT8//fRT+eSTT+RP//RP5aOPPpLLly/Lhx9+2PJZAAAAAM241PYE%0AAAAAgBJsiWD9td4GAAAAGCoSvgAAAOgdM3HrSujaqoABAACAISPhCwAAgF6L%0ASfJmV/hWlciLL158XVUi//W/nj/f2Tnfr54DAAAALfAnfAlwAQAA0CF6wtas%0A2LUlc6eu7H3hBZF33z17/u67InV9tk1E5P/+3/PnW1tnsfA775w9BwAAAFri%0AT/gS4AIAAKBHXMs3ZCV8X3zxPN59993z5zoV+1aVyH/5LxQ/AAAAtKCqqqhH%0A11RVJYeHh879h4eHWfN2J3wJcAEAAHrh1q1bUY+uuXXrlnz88cfO/R9//HH0%0AvF0J3anW73333bN494UXJu96sw90VhChiiVsdm9IVV2RnaOJjXKjqqS6sXtx%0Am3pM7BORox25MvHLi9nnkexcsW03+r+yI7bduzcsY4rI0c6V82N2b3jGt523%0AantDLvYMAAAwPdeyXl3+HoeDgwN5/o//xJr0PTw8lOf/+E/k4OAgud8F5553%0A3z2r2H333bMA13dh1D5fxvl4X27tn8j65qasL483yv6tfTlevS43r69OblNN%0AJvaJyMmh7O4eysl4w7LR54kc7u7K4Ym53RhzeV02N9fF3H28f0v2xRhTRE4O%0Ad2X3ePXsmON9ubWvZugaRz9v1XZVrt+8LquOpgAAALlu3rzp3d/FhO8rr7wi%0AP/3Zz+R/vPyyfP7zn5/Y9/HHH8tPf/YzeeWVV7L7nyqw1+NalcTd2TlLAG9v%0An+/TlzbTY2Lb2Jt35M5mJTe+sSNff7AlayJytLMju2vb8uDO5lmb3RtS3diV%0AzTu11E82ye4NubLzrDzYWnuy/9ey/aCWB2tP9h/tyJUrlRzdqUV1IyKytiay%0A++Mj2VpbE93Rzo436bq5uSlyY1d2ZVPOuzuSH+8eyebWA1mTXbmxsyYP6juy%0ApuZ85YY8W9/R2p/PvdLbAgAAYGx9fV3e+z//KM//8Z/Ie//nH2V9fV1EzpO9%0A+rYUVW2LhFWAW9fnz7e3z5duUPt2ds4DXr2tI7g+3r8l+yfnidaJJOpZA7m1%0Afyyr12/Kef53X3ZP1mVzfdmeNH6SAF4eH3OW8D2WZZHV62fHaU4Od2X38ETE%0AkfA9G0OMxOxZnyfrN+X66rHs757I+sSczfZaX4fL9nEAAAAKuXXrVlTCN9Sm%0ADSqxqyd9bdsU/cvX9MdoNLrwqOtaPv30U3n8+LF88skn8vLLL8tvfvMbeeaZ%0AZ+TDDz/0zutb35ruvP7mb1x7duVGdUPkTi13nt2RK1d2ZfPBA9laM/ZdyJwG%0A9u/ekLNdd2RTjmTnyhU52tyWX28fydZEIvZIdq58Q2TzWdneXZMHTxLPwXGO%0AduTKFbMvvf2OrI3PwxjrH8ztAAAAZVVVFfzP/pg2bdETvCIyVbJXxFHh+61v%0APjn5b4mIev7/Ga+/JSKyJfLNrQttXfHt6vXrsnprXw6P1+X68qHsH8p54lSO%0AZd9M9p4d9CSoPN8/kcNdXpfN6ydya39fjrWk6/LqqpwcHsrx+mTi9vhYZH19%0AVQ6PxW51VVZlX46PRVbVgSfHcnyyKuurIiKrcn3TbH8oJycik1ndEzk8PJH1%0A69dJ9gIAADh8/vOfl//x8svjBK+IOJO9s/TXf91Uz5ty586mVDeuyJW1I5Ft%0ALRm6u3tW7WtN9gb2b27KpuzIr49ExhncZ7dka7OSnZ0j2VSD7O7ItmzKg2eP%0AZNvSjZrjWZHvrsjm2WBHP96Vo80tS7L3ybzkWdk0k7pHPz6rEt6ppHpSUry2%0A/eCsUhkAAABjeqWviEyV7BVxJHybC3BX5fr1Vbm1vyu7yyci61ql7vHx2TIL%0ArvUOfPttSdfldVlfvSWHhyeyqgY5PpRDWZXN5RNxL4e8KqurIvtaxvfk+FhO%0AVtftSzEcH8uxLMt1M6t7cizHsiqrh7fk1rGa0uaFimMAAIB5pyd9RaT1ZK+I%0AyMI/vivyi1+c3c2mHorttVoO7b33RP7bf/Mvh6aWdvj1dsHk57OytnYkR78W%0A0Ut2Nzc35caNHdndelL5u7Mrm1t3ZE1ueHvb3NqWtStqWQe1nIMl3Xu0I1ee%0ALEFxYe+vj+ToaFee3aqlvvOk7ZVvyM7XqfgFAKDLYr8krKvVsnB8advCP74r%0AC9/bkYWnqvM/1cP2+qsvysKCyMI/vScLTwU+FKvX5frqiZzIulwvlvxcluXl%0Ak7OErz6UqvIVkbOK22NZXQ8vr7C6vi7Lx8fj446PT2R11ZLuPTmU3f3js8rl%0AC/tO5OTkUE5Wb8rNmzfl5ua6yOG+HJ5c7AYAAHRHX78ADYW98MLFpK7+S435%0AWl/nN2T3htz49aZsyrZ8w/ttZ6nWZO1ZY9Pmlmyv7crOztGT6t5tseVtL3b1%0Addlc25XdXTmr1D3aVMW+Y2df4rYrmw9cS1CIyJo23tqWbG0eye6PS54zAAAo%0ALfTlZ13+ErS+0pd0UJW+ti9yi2X/0jbzm4jN9XvN1ykB7vG+7J+cVeTuH64W%0ArHhdlmWzq9V1WV/ePavyXT6UQ3lSIexazmHc1aqsLu+eLeuwrC/ncO5sLWCR%0A9c2b7i9sW14/P255XdZXD+Xw+ETWqfIFAKCzurjO7dDpa/aKdGNJh7FtY+ED%0A9T0WLj//eaDDXblx49ey/eCBbIlR8bq5KZs3duTHR1uyZquA3dyUzRs3ZGd3%0Ay7KG745sHz0rdy4ctyZbW5uyvfNj2Xl2V9Y2bWv22qzJ1zfXZHt3V47WLi7n%0AsHujkhtyR+rakz1+do0vagMAAAiwfUGb7YvcUlgrfMdsAa5PMMA9lv39s3Vt%0Ar183Kl5XV2X15FiOXRWwq6uyenJoX3v3+FAOTywJX1mW9fVVOTk+lsPjY1le%0AXY1cT3dZVleX5fj4+MlyDqsTFbzH+7dk92Rdbt7c9CR7l1m7FwAAIMD8gjZ9%0AeYePP/643cm98ILISy/Ftd3envxCY6sj2blyQ3Y3t84SvGtb8g/bItvf2JGz%0AmtdN2doW2b5yRSYKf3dvyJWdoyf712T3hrF/vKyC7QvV5CxRfLQt27ubspWw%0AlsLa1zdlbXdHvrErsq2XBR/tyM7u2VrEF09xR65UT+a39vXJKuajHdnZXZPN%0Ar5MGBgAAELEne0Um1/TNqfR1J3yLB7gncri7L8er62dJ0uV1Ocv5HspZjndV%0A1tdFDnd3J5c9ON6X3cOTJ/uX5Xjf2O9bVkFESxSvJlXWLq+uyvLxoew/+ZI3%0AfbzD47O1iC+e4qHs3noyv2VVxXyiHXeWSAYAAMDFZK/SmaTvu+9erOb9X//L%0A3V7dBeewe+OKbB9NJkrXtv5BtmVbrtzYffL6gdR3npXtK5VU1ZPH7uZ4rd+1%0ArQdSP9iUXX1/aFmFJ4nisy92S7D2ddlcO5Ij2ZSJHO2vj+RIduVGpc2hquTJ%0AKegdyNaDO/Ls9pUn89yWZ++wfi8AAGhGZcQm5qOLNjY2nFW8Kum7sbGR3G9V%0AuxbdqCqR//7fRZ5//uz11tZZgPv//t/566o6T/KqdcyqyloJfLx/S/aPV+X6%0ATT0xe3KW4F2+LjdVAvV4X27ta2W8q9o+kbOk6q5KEouILMv6pl5pe9bnyf
没有合适的资源?快使用搜索试试~ 我知道了~
物联网润和华为Hi3861相关资源
共947个文件
c:298个
h:204个
gn:134个
需积分: 0 2 下载量 168 浏览量
2023-05-18
00:17:42
上传
评论
收藏 28.48MB ZIP 举报
温馨提示
该压缩包是在润和gitee上存在的,可以移步https://gitee.com/hihope_iot/HiHope_Pegasus_Doc 进行下载和学习 本人搬运为了方便
资源推荐
资源详情
资源评论
收起资源包目录
物联网润和华为Hi3861相关资源 (947个子文件)
libudpserverstart.a 4KB
libudpserverstart.a 4KB
libudpserverstart.a 4KB
build 807B
build 807B
build 463B
build 463B
build_test 293B
build_test 293B
httpd.c 89KB
httpd.c 89KB
ssd1306_fonts.c 48KB
ssd1306_fonts.c 48KB
ssd1306_fonts.c 48KB
ssd1306_fonts.c 48KB
ssd1306_fonts.c 48KB
ssd1306_fonts.c 48KB
makefsdata.c 40KB
makefsdata.c 40KB
test1.c 32KB
test1.c 32KB
sntp.c 27KB
sntp.c 27KB
fsdata.c 20KB
fsdata.c 20KB
MQTTClient.c 19KB
MQTTClient.c 19KB
test1.c 18KB
test1.c 18KB
ssd1306.c 17KB
ssd1306.c 17KB
ssd1306.c 17KB
ssd1306.c 16KB
ssd1306.c 16KB
__rem_pio2_large.c 16KB
__rem_pio2_large.c 16KB
__rem_pio2_large.c 16KB
__rem_pio2_large.c 16KB
__rem_pio2_large.c 16KB
ssd1306.c 16KB
altcp.c 16KB
altcp.c 16KB
altcp_tcp.c 13KB
altcp_tcp.c 13KB
feature_example.c 11KB
ssd1306_tests.c 11KB
ssd1306_tests.c 10KB
ssd1306_demo.c 10KB
ssd1306_demo.c 10KB
MQTTPacket.c 10KB
MQTTPacket.c 10KB
broadcast_example.c 10KB
ssd1306_tests.c 10KB
ssd1306_tests.c 10KB
ssd1306_tests.c 10KB
ssd1306_demo.c 9KB
environment_demo.c 8KB
environment_demo.c 8KB
MQTTFormat.c 8KB
MQTTFormat.c 8KB
aht20.c 8KB
aht20.c 8KB
pub0sub1_nb.c 8KB
pub0sub1_nb.c 8KB
mqtt_ohos_cmsis.c 8KB
mqtt_ohos_cmsis.c 8KB
aht20.c 8KB
aht20.c 8KB
aht20.c 8KB
specified_task_example.c 7KB
aht20.c 7KB
aht20.c 7KB
bootstrap_example.c 7KB
ping_nb.c 7KB
ping_nb.c 7KB
ssd1306_demo.c 6KB
service_example.c 6KB
stream_player.c 6KB
oled_ssd1306.c 6KB
oled_ssd1306.c 6KB
MQTTConnectClient.c 6KB
MQTTConnectClient.c 6KB
mqtt_test.c 6KB
mqtt_test.c 6KB
MQTTFreeRTOS.c 6KB
MQTTFreeRTOS.c 6KB
ap_entry.c 6KB
oled_ssd1306.c 6KB
wifi_hotspot_demo.c 6KB
wifi_hotspot_demo.c 6KB
fs.c 6KB
fs.c 6KB
tcp_port.c 6KB
tcp_port.c 6KB
udp_test.c 6KB
mqtt_test_cmsis.c 6KB
ssd1306_demo.c 6KB
mqtt_test_cmsis.c 6KB
car_test.c 6KB
envrionment_demo.c 5KB
共 947 条
- 1
- 2
- 3
- 4
- 5
- 6
- 10
资源评论
xiaoruozhi001
- 粉丝: 187
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功