- 博客(29)
- 收藏
- 关注
原创 RT-Thread记录(三、RT-Thread 线程操作函数及线程管理与FreeRTOS的比较)_rtthread和freertos区别(1)
1、RT-Thread 的线程调度器是抢占式的,主要的工作就是从就绪线程列表中查找最高优先级线程,保证最高优先级的线程能够被运行,最高优先级的任务一旦就绪,总能得到 CPU 的使用权。2、当一个运行着的线程使一个比它优先级高的线程满足运行条件,当前线程的 CPU 使用权就被剥夺了,或者说被让出了,高优先级的线程立刻得到了 CPU 的使用权。2、当一个运行着的线程使一个比它优先级高的线程满足运行条件,当前线程的 CPU 使用权就被剥夺了,或者说被让出了,高优先级的线程立刻得到了 CPU 的使用权。
2024-05-17 07:44:03
1479
原创 RT-Thread记录(七、IPC机制之邮箱、消息队列)_rtthread的消息队列应用
与上篇文章的介绍的信号量、互斥量和事件集,邮箱、消息队列同样为 RT-Thread IPC机制。但是信号量它们属于线程同步机制,并不能在线程之间传递消息,我们本文介绍的 邮箱、消息队列就是实现线程间消息传递的机制。相对于上一篇文章的内容,线程通讯的学习会相对复杂些,因为涉及到消息的传递,消息在实际项目中的可能存在多种不同的情况,所以 邮箱和消息队列的使用场景和方式是关键,尤其是消息队列。基本上实际项目中的所有消息类型都可以使用消息队列的方式。
2024-05-17 07:43:29
1409
原创 RT-Thread记录(七、IPC机制之邮箱、消息队列)_rtthread的消息队列应用(3)
与上篇文章的介绍的信号量、互斥量和事件集,邮箱、消息队列同样为 RT-Thread IPC机制。但是信号量它们属于线程同步机制,并不能在线程之间传递消息,我们本文介绍的 邮箱、消息队列就是实现线程间消息传递的机制。相对于上一篇文章的内容,线程通讯的学习会相对复杂些,因为涉及到消息的传递,消息在实际项目中的可能存在多种不同的情况,所以 邮箱和消息队列的使用场景和方式是关键,尤其是消息队列。基本上实际项目中的所有消息类型都可以使用消息队列的方式。
2024-05-17 07:42:55
1205
原创 RT-Thread记录(七、IPC机制之邮箱、消息队列)_rtthread的消息队列应用(2)
与上篇文章的介绍的信号量、互斥量和事件集,邮箱、消息队列同样为 RT-Thread IPC机制。但是信号量它们属于线程同步机制,并不能在线程之间传递消息,我们本文介绍的 邮箱、消息队列就是实现线程间消息传递的机制。相对于上一篇文章的内容,线程通讯的学习会相对复杂些,因为涉及到消息的传递,消息在实际项目中的可能存在多种不同的情况,所以 邮箱和消息队列的使用场景和方式是关键,尤其是消息队列。基本上实际项目中的所有消息类型都可以使用消息队列的方式。
2024-05-17 07:42:21
934
原创 MQTT学习笔记(5)报文分析之SUBSCRIBE_mqtt subcribe(2)
笔记、源码讲义、实战项目、大纲路线、电子书籍、讲解视频,并且后续会持续更新**含义:客户端向服务器发送UNSUBSCRIBE,用于取消订阅主题。含义:确认收到UNSUBSCRIBE报文。井号#:多层匹配,多用于前方一致的匹配。
2024-05-17 04:06:16
537
原创 MQTT学习笔记(1)粗略认识
发布和订阅者可以是同一个设备,也可以是不同设备,发布者比较典型的代表就是散落在各地的传感器,比如温度传感器,订阅者可以是手机、电脑、数据库等,订阅者先要订阅相关主题,Broker就会把订阅者订阅的主题发给订阅者。MQTT–消息队列遥测传输协议,建立在TCP之上,基于发布Publish/订阅Subscribe模式,二进制传输的轻量级消息协议。从图中可以看到有3中角色,发布者Publisher -> 代理Broker -> 订阅者Subscriber。这种结构替代传统的客户端/服务器模型,可以实现以下解耦。
2024-05-17 04:05:42
650
原创 ESP8266智能家居(2)——8266发布数据到mqtt服务器_8266和mqtt(1)
首先,前三行是导入头文件, 紧接着的就是你使用的WIFI名称和密码,mqtt服务器地址(我使用的是这个地址,也是一个公共服务器,你可以跟我用一样的)。你可以设置它的服务器地址,端口号,发布主题,订阅主题,这样就能调试了。你在MQTT调试工具上的订阅主题设置为ESP8266上的发布主题,就可以看到从ESP8266传输过来的数据!这里面使用了json解析的库函数,所以要安装json第三方库。串口波特率设置的为115200,服务器端口号设置为1883. 这里实现的功能是,每隔两秒钟,就给服务器发送自增的数字。
2024-05-16 23:05:18
888
原创 ESP8266智能家居(1)——开发环境的搭建_esp8266开发环境搭建
直接下载的arduino是没有NodeMCU开发板资源的,如下图,你在开发板管理器里面找不到NodeMCU,无法对其进行程序开发。下载后,直接双击运行,即可配置8266的开发环境。配置完成后,即能找到NodeMCU开发板了!下载后,按照提示,直接安装即可。
2024-05-16 23:04:44
387
原创 ESP8266智能家居(1)——开发环境的搭建_esp8266开发环境搭建(1)
本次打算使用esp8266的开发板——NodeMCU,进行物联网相关项目的学习。开发环境使用Arduino软件。
2024-05-16 23:04:10
481
原创 ESP8266串口WiFi模块基本使用方法和配置教程_esp8266设置wifi
透传,又称透明传输,具体来说就是“输入即输出(如从WiFi模块串口输入的字符会透传到服务器端)”,数据不改变,不同协议之间的转换(如串口到WiFi、蓝牙等)由模块完成。使用者无需关心内部具体实现,因此模块对于使用者是“透明的”、似乎不存在的(因为可无视中间的实现原理)。在没有接触8266之前,我对单片机如何联网的问题很是好奇,在书里看过用笨重繁琐的以太网模块实现,但一点都不帅好吧。而近来“物联网”或者说“智能硬件”似乎也火了起来,许多强大的芯片和模块的出现使得联网设备的开发门槛大大降低。
2024-05-16 23:03:36
973
原创 四行js代码让别人无法复制你的网站文字,八行程序员都哭了_js解决百度文库不能复制
我们常常会看到百度文库或者其他网站的文字无法复制,你想知道这种做法是如何实现的吗?其实很简单,今天阿牛带你们来揭开他的神秘面纱,让广大的程序员的F12大法都失效了,真的是太狠了!
2024-05-16 03:33:00
1009
原创 四行js代码让别人无法复制你的网站文字,八行程序员都哭了_js解决百度文库不能复制(1)
我们常常会看到百度文库或者其他网站的文字无法复制,你想知道这种做法是如何实现的吗?其实很简单,今天阿牛带你们来揭开他的神秘面纱,让广大的程序员的F12大法都失效了,真的是太狠了!
2024-05-16 03:32:26
627
原创 四种常见的MOS管栅极驱动电路_变压器驱动mos管电路图
其次,检查MOSFET的寄生电容,如图中的C1、C2和C3,如果容值较大,导通MOS管所需的能量也比较大。用三极管释放GS电容的电是很常见的,如果Q1的发射极没有电阻,PNP晶体管导通时栅极与源极之间的电容会短路,可以在最短的时间内实现放电,最大限度地减小关断时的交叉损耗。在关断的瞬间,驱动电路可以提供尽可能低阻抗的通路,使MOSFET的栅极和源极之间的电容快速放电,保证开关管可以快速关断。图腾柱电路也可以加速关断,当电源IC的驱动能力足够时,图2中的电路可以改进为下图这种形式。T行业感兴趣的新人**
2024-05-16 03:31:51
1546
原创 和小白一起学习V4L2采集视频_v4l2视频采集详解
/为缓存当前状态(常见值有 V4L2_BUF_FLAG_MAPPED | V4L2_BUF_FLAG_QUEUED | V4L2_BUF_FLAG_DONE,分别代表当前缓存已经映射、缓存可以采集数据、缓存可以提取数据)struct v4l2_format //帧的格式,对应命令VIDIOC_G_FMT、VIDIOC_S_FMT等。numBufs++) //映射所有缓存。//V4L2_BUF_TYPE_VIDEO_CAPTURE或V4L2_BUF_TYPE_VIDEO_OUTPUT。
2024-05-16 03:31:16
710
原创 数据库到底用不用外键、触发器、索引、视图、存储过程_项目中使用主外键好一些还是视图好一些(1)
我希望在data表格中定义一个触发器,每次在其中插入一个新姓名时,chars表格中运行的总数就会根据新插入记录的字符数目进行自动更新。eg:在海量的数据库中想都不要去想外键,试想,一个程序每天要insert数百万条记录,当存在外键约束的时候,每次要去扫描此记录是否合格,一般还不止一个字段有外键,这样扫描的数量是成级数的增长!1,由数据库自身保证数据一致性,完整性,更可靠,因为程序很难100%保证数据的完整性,而用外键即使在数据库服务器当机或者出现其他问题的时候,也能够最大限度的保证数据的一致性和完整性。
2024-05-15 04:29:29
916
原创 数十种嵌入式 C 语言代码优化的经验和方法_嵌入式代码优化方案(1)
因此,在代码优化时,我们的座右铭应该是确保内存使用和执行速度两方面都得到优化。
2024-05-15 04:28:52
963
原创 操作系统的进程管理(c语言模拟)_操作系统用c语言实现作业进程内存管理
printf(“该执行进程占用cpu的时间为:%f\n”,p->zhantime);printf(“该执行进程的轮转时间为:%f\n”,p->luntime);printf(“该执行进程的的优先级:%d\n”,p->youxian);if(jiuxu==NULL) //如果就绪队列中没有进程的话。printf(“该执行进程的名字为:%d\n”,p->pid);printf(“请输入新进程的优先级:(数字)\n”);printf(“请输入新进程的优先级:(数字)\n”);//p为正在执行的进程。
2024-05-15 04:27:34
1106
原创 Ubuntu下不能切换中文,qt creator无法输入中文,sogo输入法(详细步骤)_ubuntu搜狗输入法中英文切换
2、安装fcitx-frontend-qt5,命令行里输入sudo apt-get install fcitx-frontend-qt5,在计算机中搜索libfcitxplatforminputcontextplugin.so文件,1、原因:Qt程序的中文输入支持需要用Qt插件,Qt自带的插件中,支持iBus输入法,所以如果你恰好在用iBus输入法则可以正常输入。在官网下载搜狗输入法安装包,并安装,安装命令 sudo dpkg -i 安装包名。(2) 没有“搜狗”字样,选择配置,将搜狗加入输入法列表即可。
2024-05-14 19:31:11
1333
原创 Ubuntu下不能切换中文,qt creator无法输入中文,sogo输入法(详细步骤)_ubuntu搜狗输入法中英文切换(1)
2、安装fcitx-frontend-qt5,命令行里输入sudo apt-get install fcitx-frontend-qt5,在计算机中搜索libfcitxplatforminputcontextplugin.so文件,1、原因:Qt程序的中文输入支持需要用Qt插件,Qt自带的插件中,支持iBus输入法,所以如果你恰好在用iBus输入法则可以正常输入。(1)查看右上角,可以看到“搜狗”字样,在输入窗口即可且出搜狗输入法。(2) 没有“搜狗”字样,选择配置,将搜狗加入输入法列表即可。
2024-05-14 19:30:34
1023
原创 Ubuntu下cutecom图像界面串口调试工具使用详细_cutecom怎么识别串口
然后是选择串口,由于Ubuntu下面可不是Windows那样可以直接从设备管理器里面看到哪个串口插上了,他还有更觉得,直接将系统开机到目前所有端口插拔的状态全部记录下来了,如果做的呢?现在似乎貌似已经呈现了windows下面的操作情景了是吧,然后选择根据device对应的下拉列表选择串口试试是吧,然后点击open device试试手气了?不管你选择哪个串口,下位机也接通的状况,但还显示串口无法打开,其实这是没有权限的原因啦!面板上面的各个设置应该很容易看懂,具体自己可以尝试。三 ,打开和使用串口。
2024-05-14 19:29:54
575
原创 Ubuntu下cutecom图像界面串口调试工具使用详细_cutecom怎么识别串口(1)
然后是选择串口,由于Ubuntu下面可不是Windows那样可以直接从设备管理器里面看到哪个串口插上了,他还有更觉得,直接将系统开机到目前所有端口插拔的状态全部记录下来了,如果做的呢?现在似乎貌似已经呈现了windows下面的操作情景了是吧,然后选择根据device对应的下拉列表选择串口试试是吧,然后点击open device试试手气了?不管你选择哪个串口,下位机也接通的状况,但还显示串口无法打开,其实这是没有权限的原因啦!由于我已经通过终端安装成功,所以软件中心搜索到后显示的是已经安装好的状态。
2024-05-14 19:29:12
994
原创 2024年物联网嵌入式最全【每天一个 Linux 命令】tree命令_linux tree,2024华为物联网嵌入式开发面试真题
要以类似树的格式列出目录内容,请切换到所需的目录并运行tree命令,不带任何选项或参数,如下所示。如果与-f选项一起使用,tree将打印完整的目录路径,如下所示。几乎所有的Linux发行版都可以使用tree命令,但是,如果默认情况下没有安装它,可以使用系统的包管理器来安装它,如下所示。它将递归地显示工作目录的内容,显示子目录和文件,以及子目录和文件总数的摘要。在这篇教程中,我们将通过使用案例演示如何使用tree命令递归地列出Linux系统上目录的内容。例如,如果您希望深度为2,则运行以下命令。
2024-05-14 10:22:26
571
原创 2024年物联网嵌入式最全【原创】OpenDDS笔记(四) 树莓派下的开发实例_ace+tao2,2024年最新2024物联网嵌入式开发面试
前面笔者讲了,网上大部分只是进行到以上步骤就结束了,没看到如何开发新的工程,生成相关文件和如何make。在经过一些试验后,笔者发现了规律,并成功实现了编译和部署。本节中,我以Demo为工程名来实现一个自定义实例,文件仍来自于前几篇所定义过的同一套文件,Demo文件夹内容如下:关于这些文件的内容,请翻看笔者前面几篇相关介绍的博文,本篇的目的是对他们实现编译,并部署到树莓派下执行。
2024-05-14 10:20:34
543
原创 2024年物联网嵌入式最全【云计算】实验1:云主机搭建静态网站_云主机实验,物联网嵌入式开发开发技巧
认识了nginx:Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。查看版本:nginx -v收集整理了一份《2024年最新物联网嵌入式全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升的朋友。如果你需要这些资料,可以戳这里获取。
2024-05-14 10:19:53
565
原创 2024年最全同样是软件开发,为什么没有嵌入式软件架构师(1),2024年最新零基础学习物联网嵌入式开发开发
的原因就是,多进程能从物理上隔绝了这种“方便”的通讯方式,导致在想实现一个模块交互时,会多思考下这个交互是必要的吗,如果是必要的,则会进一步思考接口定义是否简单明了(因为进程间的通讯相对会麻烦些,开发人员会本着能减少交互,明确接口的想法去仔细考虑接口,协议的定义,否则折腾的是自己了),这如同人生,如果一直顺风顺水,人们可能不会想太多,思考太多,而如果道路上有些坎坷,则会有另一种感悟吧。(自信的工程师都认为我的代码没有问题)而如果采用多进程的模型,好吧,你的服务进程挂了,你自己找原因吧,没什么可争辩的了。
2024-05-14 05:33:13
980
原创 2024年最全各种通信协议整理,手握5家大厂offer
记住一点,这种接口的协议只有两种:RS-232和RS-485。不会是TTL电平的(除非特殊应用)。一般用的最多的是RXD、TXD、GND,三个信号。9针串口定义 - 百度文库常见的Type-A型USB接口定义如下。pin#Name颜色1VBUS/+5V红色2D-/DM白色3D+/DP绿色4GND黑色USB是普遍使用的一种高速通信接口,和串口完全是两个概念。虽然也是串行方式通信,但由于USB的通信时序和逻辑电平标准都和串口完全不同,因此和串口无关。
2024-05-14 05:32:34
1222
原创 2024年最全发送邮件编程原理_cmd esmtp(1),2024年最新【性能优化实战
来自:http://blog.chinaunix.net/uid-7210505-id-146366.html。服务器返回221,就安了,完成了,看看邮件收到了没。
2024-05-14 05:31:54
417
原创 2024年最全单片机程序架构--时间片轮询法_单片机 定时轮询任务 优先级,view事件分发面试
*代码解释:**定时中断服务函数,在中断中逐个判断,如果定时值为0了,表示没有使用此定时器或此定时器已经完成定时,不着处理。否则定时器减一,知道为零时,相应标志位值1,表示此任务的定时值到了。
2024-05-14 05:31:12
1367
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅