- 博客(111)
- 资源 (2)
- 收藏
- 关注
原创 C语言:__attribute__((packed))
在使用结构体的时候,经常要。但是按照C语言的规则,会对不同类型的数据类型进行。有时候就会造成一些问题,如果不需要使用自动对齐的功能,就需要使用到本章的关键字。
2024-05-08 16:37:24 324
原创 蓝牙学习九(定向广播 ADV_DIRECT_IND)
广播类型有如下:可连接的非定向广播,表示当前设备。可连接的定向广播,设备。的非定向广播,仅发送广播数据,而。设备。的,设备。即可以发送广播数据,也可以响应扫描发送回应数据,但。本章主要介绍。
2024-04-03 16:11:51 1176
原创 nRF Sniffer 在Wireshark中的使用
使用nRF Sniffer在wireshark中抓包是经常使用的。但是每次抓包会获取到,数据量非常大。而对于开发人员而言,。此时就需要掌握数据的。
2024-03-21 09:49:25 558
原创 nRF Sniffer在wireshark下的环境搭建
进入nrf_sniifer_for_bluetooth--》extcap文件,按住shirft,右键,选择打开shell窗口。运行成功后,如果此时nrf sniffer插在电脑上,就可以看到sniffer的。(2).将nrf_sniffer_for_bluetooth文件夹下的extcap的一些信息。(4).将nrf_sniffer_for_bluetooth文件夹下的。而Pyserial是安装在3.7版本下的。将下载的nrf_sniffer包解压。打开wireshark的extcap文件夹。
2024-03-20 15:55:16 1080
原创 windows下不同python版本切换
有时候在windows环境下会安装很,但是在运行一些特定环境时,又需要特定的python版本。于是就需要。
2024-03-20 15:12:25 625
原创 C语言-数组指针与指针数组
对于使用C语言开发的人来说,指针,大家都是非常熟悉的。数组,大家也同样熟悉。但是这两个组合到一起的话,很多人就开始蒙圈了。这篇文章,就详细的介绍一下这两个概念。 指针数组和数组指针,听起来非常像,但是两者是完全不同的概念。从名字上就可以知道,一个是数组,一个是指针。 那如何区分呢? 最简单的方法,就是根据语句中符号的优先级来。 优先级关系:( ) > [ ] > *。 有了这个概念后,我们再来看如下两个定义: *a[4
2024-02-23 19:39:10 985
原创 Base64加解密C语言版
Base64是网络上最常见的用于传输8Bit字节码的编码方式之一。Base64就是一种基于64个可打印字符来表示二进制数据的方法。Base64包含小写字母a-z、大写字母A-Z、数字0-9、符号“+”、“/”一共64个字符的字符集。任何符号都可以转换成这个字符集中的字符,这个转换过程就叫做base64编码。Base64编码是从二进制到字符的过程,可用于在HTTP环境下传递较长的标识信息。采用base64编码具有不可读性,需要解码后才能阅读。
2024-01-26 18:33:37 2841
原创 海思Hi3861L开发三-新建自定义项目
上一篇文章,介绍了如何下载安装SDK,并且编译和下载。但都是基于SDK原生提供的demo。那本节我们就来介绍一下,如果。
2023-08-24 16:06:43 530
原创 海思Hi3861L开发二-SDK编译与下载
将SDK解压后,会出现如下目录:这里介绍一下SDK目录目录说明app应用层代码(其中包含demo程序,即参考实例)bootFlash bootloader代码buildSDK构建所需的库文件、链接文件、配置文件componentsSDK组件目录configSDK系统配置文件documents文档目录(包括:SDK说明文档)inclludeAPI头文件存放目录output编译时生成的目标文件与中间文件(包括:库文件、打印LOG、生成的二进制文件等)platform。
2023-08-24 11:44:12 1497 2
原创 海思Hi3861L开发一-环境搭建
之前的文章中有详细介绍了HarmonyOS的Hi3861开发,但是该开发是基于HarmonyOS来的。实际在项目开发中,可能不会用到HarmonyOS,用的还是原生的Hi3861。那这次就重新学习Hi3861L。
2023-08-23 17:20:13 1037
原创 鸿蒙Hi3861学习二十-编译构造
在使用编译构造子系统前,应了解如下基本概念: 子系统是一个逻辑概念,它由一个或多个具体的组件构成、OpenHarmony整体遵从分层设计,从下向上依次为:内核层、系统服务层、架构层和应用层。系统功能按照“系统 > 子系统 > 组件”逐级展开,在多设备部署场景下,支持根据实际需求裁剪某些非必要的子系统或组件。 系统最小的可复用、可配置、可剪裁的功能单元。组件具备目录独立可并行开发、可独立编译、可独立测试的特征。 Generate ninja的缩写,用于产生ninja文
2023-05-29 16:52:22 1915 1
原创 鸿蒙Hi3861问题解决-DevEco VSCode无法跳转
使用Windows和Ubuntu,在windows下搭建环境。通过远程Ubuntu系统进行代码修改与编译。在VSCode中,。按住Ctrl键,鼠标移到函数上,也不会有任何反应。
2023-05-25 16:23:44 2108
原创 鸿蒙Hi3861学习十九-DevEco Device Tool源码获取、编译、下载
1.创建工程目录架构在SDK/applications/sample/wifi-iot/app路径下新建一个hello_world文件夹。在hello_world文件夹下创建一个hello_world.c文件,并将start_up文件夹下的BUILD.gn文件拷贝到hello_world文件夹下。2.编写业务代码是OpenHarmony启动恢复模块接口,该接口用来启动业务。也可以使用SYS_RUN来实现,效果是一样的。(APP_FEATURE_INIT和SYS_RUN定义都在)文件中。
2023-05-25 15:57:17 2816 1
原创 鸿蒙Hi3861问题解决-[OHOS ERROR] clang not found, install it please
在使用进行时出现问题,导致,这里做个问题记录。
2023-05-25 10:18:05 2064
原创 鸿蒙Hi3861学习十八-DevEco Device Tool环境搭建
在之前的文章中,我们是通过的方式进行开发。今天我们同样是采用。为什么要采用这种方式呢?因为就目前而言,大部分的开发板还,如Hi3861、Hi3516系列开发板。本次的任务就是可视化界面进行相关操作,的方式对接ubuntu下的DevEco Device Tool(可以不安装Visual Studio Code),然后对ubuntu下的源码进行开发、编译、烧录等。ubuntu版本:20.04windows版本:win10。
2023-05-23 15:29:09 2633 1
原创 C语言-printf打印%*s、%.*s与%-.*s的区别
在平时的使用中,会经常使用到printf进行打印,而最长使用的方式是printf("%s",string)进行打印。但是有个问题,如果string结尾不是0。那么printf会继续打印,直到遇到0为止。这样就会有内存溢出的风险。显然,这种是不符合预期的
2023-05-22 17:34:33 3087
原创 鸿蒙Hi3861学习十七-Huawei LiteOS-M(MQTT)
初始化MQTT相关的参数和回调。n网络参数,结构体为Network} Network;my_socket:后续mqtt要使用到的描述符。mqttread:mqtt的读回调函数mqttwrite:mqtt的写回调函数无。
2023-05-22 16:26:09 1675
原创 鸿蒙Hi3861学习十六-Huawei LiteOS-M(Socket服务端)
将socket和输入参数的地址与属性进行绑定fd:套接字描述符,socket()函数返回值。addr:要绑定的属性值。包括端口IP地址等//长度//地址族(address family),也就是地址类型//16位端口号//32位IP地址//不使用,一般用0填充这里需要注意的是,bind函数的第二个参数,会将sockaddr_in类型强转为socketaddr。//长度//地址族(address family),也就是地址类型//IP地址和端口号sockaddr和的长度相同。
2023-05-18 17:53:45 837
原创 鸿蒙Hi3861学习十五-Huawei LiteOS-M(Socket客户端)
创建一个socket描述符,用来唯一标识一个socket。后续需要通过该描述符进行读写操作。domain:IP地址类型。常用的类型有AF_INET(IPV4)、AF_INET6(IPV6)。type:数据传输方式/套接字类型。常用的类型有(流格式套接字/面向连接的套接字TCPSOCK_DGRAM(数据报套接字/无连接的套接字UDP。protocol:传输协议。默认为0,系统自动推演使用的协议。也可以手动输入,常用的协议有,
2023-05-18 14:48:07 1508
原创 鸿蒙Hi3861学习十四-Huawei LiteOS-M(AP模式)
为指定的WIFI事件注册回调函数。当WIFIEVENT中定义的WIFI事件发生时,将调用已注册的回调函数。event:相关事件,结构体为WifiEvent。:网络连接状态改变回调。与STA有关。具体含义见上一章。:扫描结果回调。与STA有关。具体含义见上一章。:热点状态改变回调,即热点创建时的回调。与AP有关。state热点状态。WIFI_HOTSPOT_ACTIVE(1)热点已创建成功。WIFI_HOTSPOT_NOT_ACTIVE(0)热点已关闭。有STA连接回调与AP有关。
2023-05-16 15:55:44 688
原创 鸿蒙Hi3861学习十三-Huawei LiteOS-M(STA模式)
为指定的WIFI事件注册回调函数。当wifiEvent中定义的wifi事件发生时,将调用已注册的回调函数。
2023-05-15 15:56:24 1461 2
原创 鸿蒙Hi3861学习十二-Huawei LiteOS-M(osXX与LOS_XX)
osXX是cmsis标准的接口,例如osThreadNew、osTimerNew、osSemaphoreNew等。因为这些函数我们在之前的文章中都有详细介绍,这里不做过多介绍,只介绍这些文件的位置,感兴趣的自行研究。
2023-05-11 15:00:19 750
原创 鸿蒙Hi3861学习十一-Huawei LiteOS-M(内存池)
创建内存池。不能在中断中调用。block_count:申请的内存块个数block_size:每个内存块的大小attr:属性。自定义内存时使用,默认为NULLNULL:失败其他值:内存池ID。
2023-05-11 09:46:02 1324
原创 鸿蒙Hi3861学习十-Huawei LiteOS-M(消息队列)
函数功能:创建队列。不能在中断中使用。msg_count:队列元素总个数msg_size:队列单个元素大小attr:属性,自定义地址时使用。默认为NULLNULL:失败其他:队列标识符char *Buf;
2023-05-09 15:23:47 1219
原创 鸿蒙Hi3861学习九-Huawei LiteOS-M(互斥锁)
创建互斥锁。不可在中断中使用。attr:属性,自定义内存时使用。默认NULL锁标识符。
2023-05-08 17:45:36 1155
原创 鸿蒙Hi3861学习八-Huawei LiteOS-M(事件标记)
创建事件标志。不能在中断中调用。attr:属性。自定义内存时才用的到。默认设置NULLNULL:失败其他值:事件标志ID。
2023-05-06 18:08:55 1158
原创 鸿蒙Hi3861学习七-Huawei LiteOS-M(信号量)
创建信号量。不可在中断服务中使用。参数:max_count:信号量最大的可用数量initial_count:初始化时可用数量attr:相关属性,只有在自定义内存才用的到。默认为NULL返回值:NULL:失败其他值:信号量标识符。
2023-05-06 16:01:41 1162
原创 鸿蒙Hi3861学习六-Huawei LiteOS-M(软件定时器)
函数功能创建一个软件定时器函数原型参数func:超时回调函数type:运行模式0,单次1,周期argument:传给定时器的参数。没有填NULLattr:定时器相关属性。自定义地址的时候会用到。大部分情况用不到,填NULL。返回值NULL:失败其他值:osTimerId_t类型的定时器ID。该ID给其他函数使用实例。
2023-05-06 10:46:48 2032
原创 鸿蒙Hi3861学习五-Huawei LiteOS-M(任务管理)
任务ID:在任务创建时通过参数返回给用户,作为任务的一个非常重要的标识任务优先级:优先级标识任务执行的优先顺序任务入口函数:每个新任务得到调度后将执行的函数任务控制块TCB:每个任务都含有一个任务控制快(TCB-Task Control Block)。TCB包含了任务上下文栈指针(stack pointer)、任务状态、任务优先级、任务ID、任务名、任务栈大小等信息。TCB可以反映出每个任务的运行情况。任务栈:每个任务都拥有一个独立的栈空间,称为任务栈。任务上下文:任务在运行过程中使用到的一些资源。
2023-05-05 17:59:25 1617
原创 鸿蒙Hi3861学习四-Huawei LiteOS介绍
Harmony OS(鸿蒙操作系统)是华为在2019年8月9日正式发布的操作系统。是一款“面向未来”、面向全场景(移动办公、运动健康、社交通信、媒体娱乐等)的分布式操作系统对标安卓、IOS等智能终端的操作系统。OpenHarmony是华为捐献给开放原子开源基金会(OpenAtom Foundation)孵化及运营的开源项目。其本质是HarmonyOS的基础部分。不能说是一个操作系统,它只是将一个擦操作系统的基础进行拆分,然后让各个领域的开发者在擅长的部分去完善、优化或使用这里面的各个部分。
2023-05-04 13:57:42 6223 1
原创 鸿蒙Hi3861学习三-第一个实例程序Hello_world
前两章介绍了环境搭建、烧录和编译。这一节,来介绍实现第一个经典代码“hello world”。
2023-04-28 15:11:04 1699
原创 Linux-安装Python2.7
正常情况下,使用sudo apt install python来安装就好了。如果发现这个指令报错了,此时就需要手动安装Python2.7了。
2023-04-27 17:56:30 4215
原创 Linux-使用mobaxterm连接虚拟机ubuntu
16.0.0:18.4:链接:https://pan.baidu.com/s/1dNsahe9wO5KrWlWXtNqT0A?pwd=az39提取码:az39。
2023-04-26 18:34:21 3036
原创 鸿蒙Hi3861学习一-环境搭建(基于已搭建好的ubuntu)
本次使用的是小熊派BearPi-HM_Nano开发板。有需要的可以官网购买。先给出几个。
2023-04-26 17:21:06 897
原创 Linux-RaiDrive把ubuntu文件远程映射到Windows上
链接:https://pan.baidu.com/s/1t9lrC9lM_EXixmKYrQjfDg?pwd=05ig提取码:05ig。
2023-04-26 11:11:13 952
STM32F103ZET6 IAP串口下载
2018-05-01
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人