自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

下家山的博客

关注嵌入式,物联网及人工智能领域

  • 博客(87)
  • 资源 (6)
  • 收藏
  • 关注

原创 中学学光学的时候一直不知道什么是法线

一直到参加工作,从事光纤通信的开发工作,才去思考中学里面学光学的时候,老师讲法线,从来没有去问过,也没有自问过,为什么叫法线,后来好像也没有听人说起过法线是什么意思,其实法线就是一条垂直水平面的不存在的虚线,因为他很公正,法正,不偏向左边也不偏向右边,所以叫法线,就这么简单。

2025-03-21 23:12:29 104

原创 补码为什么要+1

关于补码的文章,csdn上面遍地都是,所以我们大可不必搬运别人的文章来装点门面,我写这篇博客是想补充一个问题“补码为什么要+1”的问题,这个问题,博客园有个叫张子秋的文章写的很好,但是最后对补码为什么+1的问题,我想补充得更充分一点。我们知道,在计算机里面[+1] = [0000 0001]原 = [0000 0001]反 = [0000 0001]补负整数在计算机却是用补码表示的[-1] = [1000 0001]原 = [1111 1110]反 = [1111 1111]补 (负数补码=反码+1)

2023-10-26 16:58:17 1639 9

原创 我们需不需要哲学

随着年龄的增长,经历的事情增多,我越来越觉得人是需要哲学的。因为,哲学可以解除烦恼!而,我觉得,冥想并不能解除烦恼(很多科学家认为有科学依据),我看冥想教程里面说,冥想的时候要去想愉快的事情,如果不能静下心来,就看自己的鼻尖多长时间等等,我觉得这是暂时的逃避现实,并不能达到解决根本问题的目的。其中,张朝阳推荐的打坐,其实这个打坐已经有些人说的冥想,我觉得要让它生效,必须借助在哲学思辨的基础上,我觉得这可以用俗话说——想通了。是通过打坐,或者冥想这种行为,让自己把烦恼的事情想明白,这一定得具备哲学

2022-04-07 22:28:05 490

原创 四:真机调试

树莓派+小程序开发(一)树莓派+小程序开发(二)五: 让小程序连接树莓派六:小程序控制面板设计七:树莓派如何解析小程序的信息八:树莓派如何回信息给小程序九:树莓派与微信小程序通过websocket通信十:小程序实时显示树莓派温湿度十一:python版 websocket服务器实现十二:python版websocket 服务器如何整合led和beep十三:Python版服务器整合dht11温湿度传感器为什么要写真机调试此部分是后来补充内容。因为有些学生问我手机怎么允许,因为太简单,所以

2021-02-27 11:10:57 2343 2

原创 阳光照在我窗前

我现在正在家里办公,最近在赶阿里的一个案子,再加上这个好像要死缠难打的疫情,最近都在家里工作,因为在等待一个审核,我有得闲,看着明媚的阳光,穿过玻璃,斜进我右手边的桌子上,此时此景,我觉得应该放点音乐,只有音乐才可以配这个场景吧,平时因为在公司,不能开着音乐,而我又不喜欢戴着耳机听音乐,总觉得耳机束缚了人,听音乐应该是放开的,放松的,特别是耳朵不能被罩住或被堵住。我一直对阳光有感,感觉出是一粒粒的从天上洒下来,每天出去,如果看到有阳光,心情特别高兴,就想去干活(好像每个人都这样),从物理学的角度它就是一

2021-02-22 11:40:27 1104 6

原创 怎么理解“不经审视的人生,不值得过!“

活着的意义记得有好几个人问我活着的意义,特别是有一个有忧郁症的学生曾很郑重的问我这个问题,但是当时我不知道怎么回答,我觉得我自己都没有去深刻思考这个问题,最近在看柳比歇夫的故事,同时在思考苏格拉底的那句话“不经审视的人生,不值得过”。这句话让人有点不理解,原因在于“审视”两字,审视让人自然联想到是被别人审视,因为审问就是审问别人,或者被别人审问,没有说审问自己。所以,审视就让人想到是被别人审视,或者审视别人的人生,言下之意就是,如果一个人的人生是被审视过的,那么应该值得过。其实,苏格拉底的哲学思想

2020-10-30 22:53:13 5855

原创 时间是敌人还是朋友

把时间当朋友!这句话让大众知道的人是罗振宇,他在跨年演讲的时候,主题就是《把时间当朋友》,最近张磊的《价值》也是火的不得了,基本上每一个跟投资,商业,创业有关的人都看过,他在里面也重点强调“把时间当朋友”,其实这句话最早是李笑来说的,就是那个拥有10万多比特币的中国比特币首富。他有一本书讲的就是《把时间当朋友》,而这句话更早来自于《富兰克林传》,就是100美元上的那个人,他在自传中极其详尽的记录了自己是如何记录,利用,规划时间的。其实在看罗振宇和张磊讲这个理念的时候,我们很难理解这句话。你可能看不出来其

2020-10-30 22:34:36 671

原创 第九课:树莓派Python+L298N电机实验

第一课:什么是树莓派第二课:树莓派能做什么第三课:购买您的第一个树莓派第四课:如何安装树莓派系统第五课:树莓派Python编程手册第六课:树莓派Python Led实验第七课:树莓派Python 按键实验第八课:树莓派Python开发 PWM实验第九课:树莓派Python开发 电机实验视频链接我们要干什么在学一个知识点的时候,特别是硬件相关的,选一个好的实验方式,是很不错的做法,如果一开始就要去控制一个大的设备(比如云台),机械手臂,智能小车,你可能早早被问题击垮了兴趣。下面就是我们

2020-10-12 23:03:56 6754 4

原创 树莓派Python开发第8课: PWM实验

第一课:什么是树莓派第二课:树莓派能做什么第三课:购买您的第一个树莓派第四课:如何安装树莓派系统第五课:树莓派Python编程手册第六课:树莓派Python Led实验第七课:树莓派Python 按键实验第八课:树莓派Python开发 PWM实验视频链接什么是PWMPWM是Pulse Width Modulation (PWM)的缩写,意思是脉冲宽度调制,那什么是脉冲呢?脉冲脉冲是一种信号,我们平常听到 “脉搏” 这个词,我们这里的脉冲和这个脉搏其实很相似,脉搏是跳动的,有规律的,脉

2020-10-12 15:16:38 10864 3

原创 树莓派Python 按键实验

第一课:什么是树莓派第二课:树莓派能做什么第三课:购买您的第一个树莓派第四课:如何安装树莓派系统第五课:树莓派Python编程手册第六课:树莓派Python Led实验视频链接如果要实现按下一个按钮让灯亮,再按下让灯灭这样的功能,就需要实现按键编程了,按键编程属于输入设备范畴。什么是输入设备,什么是输出设备参考**第六课:树莓派Python Led实验用什么做实验我们一般用第一种按键(左边),淘宝上几毛钱就可以买到,右边的按键,还需要自己去加电阻搭电路,不方便。编程思路很多学生总

2020-10-09 17:19:49 6137 4

原创 树莓派Python开发:led实验

第一课:什么是树莓派第二课:树莓派能做什么第三课:购买您的第一个树莓派第四课:如何安装树莓派系统第五课:树莓派Python编程手册视频链接从点灯开始学一种语言是从hello,world开始的;学一种硬件编程是从点灯开始的;学编程语言,大家都从hello,world开始,是因为一个简单的hello,world其实是“五脏俱全”的,包括头文件,主函数,编译,运行,输出;而控制一个cpu,从点一个灯(led)开始,也是这个道理,你的程序让一个灯亮起来了,说明cpu工作了,板子没问题了,你能够通

2020-10-08 22:22:16 2416 3

原创 青椒炒黄瓜+伏特加+Bon jovi+编程

生活生活就像鸡尾酒,需要调制,需要像厉害的调酒师一样根据每一个人特点,口味调到最佳状态,这是我今天得出的结论。物联网和洗碗这个国庆8天假,但是我因为接了一个活,需要赶一个课程的PPT制作,除了10.1,10.2号两天带着女儿和老婆出去玩了两天,后面我就开始搜集各种资料,制作PPT了。今天是10.5号,老婆今天加班,两个孩子跟去去了老婆公司,因为我要赶着她们回来之前把饭做好,所以在5点就去洗碗(中午的碗还没有洗,其实早上的也没洗)。我洗碗的时候,在想,我的跳跃是不是有点大,刚才还在写“区块链和物联网的

2020-10-05 21:19:30 443 3

原创 树莓派Python编程手册

第一课:什么是树莓派第二课:树莓派能做什么第三课:购买您的第一个树莓派第四课:如何安装树莓派系统树莓派可以使用C语言,java,Python,而用python控制树莓派的人越来越多,刚把C语言教程专栏写完,接下来着手python教程。因为要控制硬件,所以我们需要安装一个模块RPi.GPIO.我们是如何使用RPi.GPIO模块的下面是简单点亮一个灯的代码,所有硬件操作的函数(方法)都是通过RPi.GPIO这个模块来操作的。为什么叫RPi.GPIO:RPi这里的R是树莓raspberry的意思

2020-10-04 00:35:23 5779 1

原创 树莓派Python教程:如何安装树莓派系统

第一课:什么是树莓派第二课:基于树莓派的10个经典项目第三课:购买您的第一个树莓派第四课:如何安装树莓派系统1~4课如果看过C语言版本的,请掠过…树莓派就要启动了买来树莓派,第一件事就是给它安装一个系统,树莓派支持11种操作系统:官方最新:http://downloads.raspberrypi.org/raspbian_latest默认帐号:Username: pi Password: raspberry初学者一般用官方,稳定,经过多方认证亲测。其他树莓派支持的操作系统连接如下:h

2020-09-29 23:28:19 3888

原创 如何购买您的第一个树莓派

第一课:什么是树莓派第二课:树莓派能做什么第三课:购买您的第一个树莓派第四课:如何安装树莓派系统1~4课如果看过C语言版本的,请掠过…会不会买到假货关于这个问题,可能是很多初学者担心的,为此,我特地在官网帮大家找到权威声明(所以,我博客中涉及到树莓派的所有说明都是我经过官方验证)。下面是官方说明:I’m worried I have a fake Raspberry Pi!Don’t worry, as far as we know, there are no fake Raspberry

2020-09-29 23:25:36 5434 2

原创 树莓派Python教程:树莓派能做什么

第一课:什么是树莓派第二课:树莓派能做什么第三课:购买您的第一个树莓派第四课:如何安装树莓派系统1~4课如果看过C语言版本的,请掠过…第二课:树莓派能做什么树莓派能做什么,莫过于来看一遍树莓派的10个经典项目的视频了,我们先以图片的形式过一遍。NO.1 树莓派实现VR注意这个人头上戴的是一个虚拟3D眼镜,他看到的场景是树莓派上安装的两个摄像头,这两个摄像头就相当于人的两只眼睛,把视频传到这个眼镜,然后通过openGl渲染一个场景出来,从而控制这个机器人去做一些事情,这个机器人就是用树莓派

2020-09-29 23:12:26 4928

原创 树莓派Python开发教程:什么是树莓派

第一课:什么是树莓派第二课:基于树莓派的10个经典项目第三课:购买您的第一个树莓派第四课:如何安装树莓派系统楔子我对树莓派是情有独钟,不但在做这个方面的教学,而且录制了些教学视频,现在计划做几个树莓派的博客专栏,以弥补视频教学的不足。这是《树莓派Python实验室》 的第一课,叫什么是树莓派(这也是我教学视频的第一课),希望给第一次接触树莓派的人有一个感性认识。树莓派长什么样我们要搞清楚一个刚接触的东西,最直观的是看它的实物,下面我就先上一张图。我希望上最好的图片给大家,包括专业和美感,这张

2020-09-29 22:55:22 8742

原创 三大通识知识:进程,线程,网络(五)

三大通识知识(一) :进程,线程,网络之间的关系三大通识知识(二):进程实现原理三大通识知识(三):线程实现原理三大通识知识(四):网络进程,线程,网络视频连接前言上一节课,我们讲了网络的几个常见问题:什么是网络,为什么叫TCP/IP,什么是OSI模型,如何记住OSI模型,为什么TCP是可靠的,UDP是不可靠的,为什么TCP是面向连接的,UDP是无连接的?这一节课,我们讲如何搭建TCP服务器和客户端。如何搭建TCP服务器TCP/IP协议已经发展了接近40年,所以已经非常成熟了,这种成熟不

2020-09-06 00:15:38 437

原创 三大通识知识:进程,线程,网络(四)

三大通识知识:进程,线程,网络(一)三大通识知识:进程,线程,网络(二)三大通识知识:进程,线程,网络(三)前言这节课我们介绍网络部分,包括如何搭建网络服务器,以及如何使用多线程技术支持多客户端。什么是网络网络是一个很复杂的体系,这个体系有多复杂呢?我记得我们当时很流行看《TCP/IP详解》这套书有三本大部头,卷一,卷二,卷三,当当有卖:因为当年做路由器,交换机开发的人非常多(处于网络基建阶段),所以基本上有一半的程序员看过这本书。整个体系是以TCP/IP展开的,我们不能在这里介绍整个体系知

2020-09-03 23:21:00 485

原创 三大通识知识:进程,线程,网络(三)

三大通识知识:进程,线程,网络(一)三大通识知识:进程,线程,网络(二)前言上一节课,我们介绍了进程的代码实现原理,讲到了子进程是如何产生的,进程的空间为什么是独立的,进程为什么可以裂变…,现在我们要过渡到线程了,我们在第一篇博客《三大通识知识:进程,线程,网络(一)》中讲到,因为进程太占用资源,所有发明了线程,解决了进程的缺陷,有人就有疑问了,那为什么要进程呢,进程没有优点吗?进程存在的意义操作系统是通过进程来管理所有程序的,其实我们任何一个程序,在电脑上运行起来后,至少有一个进程,很多时候你不

2020-09-02 22:39:10 317

原创 三大通识知识:进程,线程,网络(二)

三大通识知识:进程,线程,网络(一)前言上一篇,叙述了进程,线程,网络的关系,这一篇我们讲进程的实现原理,这里所说的实现原理式代码级别的,动手做比一切理论都有效。实验环境系统:ubuntu语言:C语言进程是如何让两个while 1同时运行的我们先看实验用例下图中,左边是代码,右边是运行结果。我们通过gcc fork.c编译,等到了可执行程序a.out,运行的时候,星号和点在屏幕上交替打印;其中,星号是子线程打印的,点是父进程打印的。子进程的产生,主要靠第7行代码,fork函数,fork

2020-09-01 23:42:54 397

原创 三大通识知识:进程,线程,网络(一)

前言进程,线程,网络是各操作系统的三大基石,整个操作系统就是在这三个基石上做扩展;同时,进程,线程,网络也是各大编程语言中必讲的,而且是属于高级部分,高级部分的意思就是比较难理解,难懂的;多线程编程是三大通识知识之一(进程,线程,网络),而且我觉得在linux系统上,使用C语言学习多线程会更好,因为:第一,linux是开源系统;第二,c语言是语言之母,对线程的原理理解得更好(python语言是一种实用主义语言,屏蔽了很多原理,有时候不知道为什么是这样);第二,多线程体系是原生态的,也就是说在li

2020-08-31 22:33:18 507

原创 第十四课:树莓派+QT客户端

第一课:什么是树莓派第二课:基于树莓派的10个经典项目第三课:购买您的第一个树莓派第四课:如何安装树莓派系统第五课:树莓派C语言编程手册第六课:树莓派led控制第七课:树莓派按键控制第八课:树莓派PWM(脉宽调制)第九课:树莓派数码管显示第十课:树莓派如何读取温湿度传感器(dht11)数据第十一课:树莓派控制电机第十二课:树莓派搭建服务器第十三课:树莓派搭建客户端前言上一节课,我们实现了在树莓派上搭建一个客户端,用于验证服务器是否OK,但是很多时候,我们的客户端是另一个设备,比如

2020-08-23 23:10:38 4937 6

原创 第十三课:树莓派搭建客户端

第一课:什么是树莓派第二课:基于树莓派的10个经典项目第三课:购买您的第一个树莓派第四课:如何安装树莓派系统第五课:树莓派C语言编程手册第六课:树莓派led控制第七课:树莓派按键控制第八课:树莓派PWM(脉宽调制)第九课:树莓派数码管显示第十课:树莓派如何读取温湿度传感器(dht11)数据第十一课:树莓派控制电机第十二课:树莓派搭建服务器上一节课,我们实现了服务器,服务器必须要有客户端才有意义,那么这节课我们讲解客户端的实现方法。实验方法我们这里的实验方法,非常简单,就是开启两个

2020-08-12 23:09:17 2165

原创 绿皮火车

绿皮火车很多年后的今天,我正坐在绿皮火车上,我带着我的两个女儿,买的是卧铺,正好是一个车厢的上面两个床,她们很是兴奋,因为火车上还有床,这种感觉她们没有过,全然忘了这次是因为她外婆生病,回去看望外婆的。我最开始坐在下铺靠过道的床边,看着洗得洁白的被褥,枕头叠得整整齐齐,蓝色的窗帘自然分两边垂下来,中间像剧院的帷幕分开,午后强烈的阳光照射到茶几上,车箱里面人并不多,我这个车厢就我们3个人,有些车厢还没有人,也许这个场景才是我喜欢的。过一会人多了,就嘈杂起来了,人一多,再好的风景也静不下心来欣赏,更没有心

2020-08-11 05:30:35 347 1

原创 第十二课:树莓派搭建服务器

第一课:什么是树莓派第二课:基于树莓派的10个经典项目第三课:购买您的第一个树莓派第四课:如何安装树莓派系统第五课:树莓派C语言编程手册第六课:树莓派led控制第七课:树莓派按键控制第八课:树莓派PWM(脉宽调制)第九课:树莓派数码管显示第十课:树莓派如何读取温湿度传感器(dht11)数据第十一课:树莓派控制电机我们要实现的功能是什么很多时候,我们需要远程控制树莓派,给它发送一个命令,再让树莓派去控制某一个设备,此时我们需要在树莓派上用C或者C++或者Python搭建一个服务器,然后

2020-08-10 18:26:12 5099

原创 第十一课:树莓派L298N电机实验

第一课:什么是树莓派第二课:基于树莓派的10个经典项目第三课:购买您的第一个树莓派第四课:如何安装树莓派系统第五课:树莓派C语言编程手册第六课:树莓派led控制第七课:树莓派按键控制第八课:树莓派PWM(脉宽调制)第九课:树莓派数码管显示第十课:树莓派如何读取温湿度传感器(dht11)数据我们要干什么在学一个知识点的时候,特别是硬件相关的,选一个好的实验方式,是很不错的做法,如果一开始就要去控制一个大的设备(比如云台),机械手臂,智能小车,你可能早早被问题击垮了兴趣。下面就是我们在学

2020-08-08 20:24:18 6522

原创 第十课:树莓派如何读取温湿度传感器(dht11)数据

第一课:什么是树莓派第二课:基于树莓派的10个经典项目第三课:购买您的第一个树莓派第四课:如何安装树莓派系统第五课:树莓派C语言编程手册第六课:树莓派led控制第七课:树莓派按键控制第八课:树莓派PWM(脉宽调制)第九课:树莓派数码管显示dht11这个传感器也是非常古老的一个温湿度传感器了,基础课程部分我还是用它来介绍。我们要实现的目标前面我们实现了在数码管上显示数字和时间,那么这节课我们计划读取温湿度传感器上面的温度,湿度数据,显示在数码管上面。温湿度长啥样下面蓝色的就是温湿度

2020-08-03 17:56:41 6435

原创 第9课:树莓派数码管显示

第一课:什么是树莓派第二课:基于树莓派的10个经典项目第三课:购买您的第一个树莓派第四课:如何安装树莓派系统第五课:树莓派C语言编程手册第六课:树莓派led控制第七课:树莓派按键控制第八课:树莓派PWM(脉宽调制)我们要干什么数码管是一个很简单的功能,但是作为树莓派课程体系,我觉得有必要在这里做一个完整介绍,万一有同学不懂呢?我们最终要通过树莓派在数码管上显示当前时间,而且会根据秒钟跳动,现象如下:数码管长什么样子数码管通常也叫7段数码管,这七个段分别就是a,b,c,d,e,f,

2020-08-02 23:47:16 3473 2

原创 Python类中的私有变量和公有变量

我们这里就直奔主题,不做基础铺垫,默认你有一些Python类的基础,大家在看这篇博客的时候,如果基础知识忘了,可以去菜鸟教程从一个简单的类开始class A(): #定义一个类 A a = 100 #公有变量 _b = 200 #公有变量 __c = 300 #私有变量 __d__ = 400 #公有变量a = A() #实例化一个对象aprint(a.a,a._b,a.__c,a.__d__) #打印四个变量的值运

2020-07-30 14:20:25 5708 2

原创 第八课:树莓派PWM(脉宽调制)

第一课:什么是树莓派第二课:基于树莓派的10个经典项目第三课:购买您的第一个树莓派第四课:如何安装树莓派系统第五课:树莓派C语言编程手册第六课:树莓派led控制第七课:树莓派按键控制什么是PWMPWM是Pulse Width Modulation (PWM)的缩写,意思是脉冲宽度调制,那什么是脉冲呢?什么是脉冲脉冲是一种信号,我们平常听到 “脉搏” 这个词,我们这里的脉冲和这个脉搏其实很相似,脉搏是跳动的,有规律的,脉冲也是这样,是有规律的,这个规律在编程领域脚频率,或者叫周期。如果要给

2020-07-23 18:41:20 5483 1

原创 第七课:树莓派按键控制

第一课:什么是树莓派第二课:基于树莓派的10个经典项目第三课:购买您的第一个树莓派第四课:如何安装树莓派系统第五课:树莓派C语言编程手册第六课:树莓派led控制如果要实现按下一个按钮让灯亮,再按下让灯灭这样的功能,就需要实现按键编程了,按键编程属于输入设备范畴。什么是输入设备,什么是输出设备大家参考第六课中的“什么是IO,什么是GPIO”用什么做实验我们一般用第一种按键(左边),淘宝上几毛钱就可以买到,右边的按键,还需要自己去加电阻搭电路,不方便。编程思路很多学生总是喜欢看,迟迟不

2020-07-23 13:53:12 6700 3

原创 第六课:树莓派led控制

第一课:什么是树莓派第二课:基于树莓派的10个经典项目第三课:购买您的第一个树莓派第四课:如何安装树莓派系统第五课:树莓派C语言编程手册从点灯开始学一种语言是从hello,world开始的;学一种硬件编程是从点灯开始的;学编程语言,大家都从hello,world开始,是因为一个简单的hello,world其实是“五脏俱全”的,包括头文件,主函数,编译,运行,输出;而控制一个cpu,从点一个灯(led)开始,也是这个道理,你的程序让一个灯亮起来了,说明cpu工作了,板子没问题了,你能够通过程

2020-07-23 11:33:38 6844 4

原创 树莓派直接连电脑热点

参考博客:https://blog.youkuaiyun.com/magic_eye/article/details/100069006在教学的过程中,有些学生只有一个笔记本,家里没有其他显示器和hdmi电视,此时要学习或者使用树莓派该怎么办呢?——以前是叫学生买一个树莓派的屏,或者买一个旧的显示器,或者到学校来一堂,用老师或者同学的显示器设置一遍,一直这样做的原因是:买一个屏页便宜,来一趟也方便,所以一直就这样过着,但是我们应该去思考,或者寻找好的方法,这样人类才可以进步,否则,没有电灯,使用煤油灯也可以活着。

2020-07-14 22:45:29 8288 11

原创 如何让你的python程序,在未来某个时间去做一件事情

如何让你的python程序,在未来某个时间去做一件事情如何让你的程序在未来某个时间去做一件事情呢,注意,这不是简单的闹钟,简单的闹钟就像我们起床,时间设置到每天的早上7点,这是在24小时内的定时,而现在要做到更大的范围,超过24小时,扩大到月,甚至年,那么该如何做呢?其实一旦实现了年,那么还有哪个时间不能定时呢?也许有人说,上到年,下能到毫秒吗?其实毫秒跟24小时内的定时一样,用的是datetime。signal能搞定所有时间跨度的定时signal是python中的一个模块,叫做信号,关于这个功能,

2020-07-11 00:05:27 654

原创 第五课:树莓派C语言编程手册

什么是wiringPiwire是连线的意思,wireless是无线的意思,wiring可以译作正在连线,Pi就是树莓派,wiringPi在这里是树莓派的一个C语言函数库,用于控制树莓派GPIO口。WiringPi遵守GNU Lv3。wiringPi使用C或者C++开发并且可以被其他语言包转,例如python、ruby或者PHP等。WiringPi中的函数类似于Arduino的wiring系统,这使得熟悉arduino的用户使用wringPi更为方便。树莓派具有26个普通输入和输出引脚。在这26个引脚

2020-07-06 21:57:57 12829 6

原创 为什么获取不到wiringPi源码

获取wiringPi源码的方式从去年开始2019年, wiringPi官网就不提供源码下载了,下面我会说明原因。wiringPi官网提供了两种获取源码的方法:即:计划A和计划B,但是我们按照他的操作都会失败,导致很多初学者很纳闷,不知道是哪里出了问题,常常怀疑自己:是不是网络出了问题?----各种浏览器,ping,关闭防火墙等尝试是不是要翻墙?----各种代理尝试,然后骂GCD是不是树莓派出了问题?-----然后在window上试,ubuntu里面试最后就很沮丧,觉得这个树莓派不好玩,不玩了,

2020-07-05 20:58:09 7607 2

原创 第四课:如何安装树莓派系统

树莓派就要启动了买来树莓派,第一件事就是给它安装一个系统,树莓派支持10种操作系统,分别如下:

2020-07-03 22:59:32 11236 3

原创 第三课:购买您的第一个树莓派

回顾第二课介绍了树莓派经典的10个项目——树莓派能做什么NO.1 树莓派实现VRNO.2 自平衡目标识别机器人NO.3 制作奥利奥饼干的机器NO.4 吉他效果器NO.5 DJ打碟机NO.6 电子鼓NO.7 赌博机NO.8 自动售卖机NO.9 冰柜信息系统NO.10 Gameboy游戏机视频链接NO.0 共享鱼缸(国产)NO.All 其它END会不会买到假货关于这个问题,可能是很多初学者担心的,为此,我特地在官网帮大家找到权威声明(所以,我博客中涉及到树莓派的所有说明都是我经

2020-07-02 00:11:58 11049 3

原创 ubuntu18.04 下载源的一些问题

使用阿里的云出现:dpkg: 处理软件包 inittramfs-tools (–configure)时出错子进程 已安装 post-installation 脚本 返回错误状态1如图后面换成清华的源,就次次命中这是我本机的情况,也许在你ubuntu系统里面 阿里的源是OK的。下面是清华的源地址:deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiversedeb-src

2020-05-22 10:05:38 726

SFP+模块与主机高速电气接口标准及其测试方法(SFF-8431修订版4.1)

内容概要:本文主要描述了SFP+(增强型小可插拔模块)模块与其高速电气接口(SFI)的标准及其详细测试方法,特别是针对IEEE Std 802.3和光纤信道等协议的规定。文中涉及的内容包括SFP+模块的功能介绍,如可支持的波特率范围和支持的眼罩测试方法;低速电气信号的设计规则与触点配置;高速信号通道的性能参数推荐和要求;针对各类硬件设备进行测试时的参数定义、配置要求;以及配套使用的MATLAB测试脚本,提供了一套完整的标准化流程以保障模块与主机之间在高速传输下的良好配合。 适合人群:网络通信和光通信工程师、硬件设计师及其他涉及SFP+模块与设备互操作性和合规性工作的专业技术人员。 使用场景及目标:该文档旨在确保在网络通信设备(例如路由器、交换机等)、数据中心和其他基础设施中部署的SFP+模块与对应的高速接口符合业界标准。其目的是建立一套可靠的互操作性准则,帮助制造商、系统集成商及相关从业人员进行SFP+模块产品的设计与生产质量验证。 其他说明:文档不仅明确了具体的技术指标,还详细介绍了实际测试方法和技术要求,有助于使用者更好地理解和应用这些规定进行产品研发。此外,本文也提供了若干参考设

2025-03-23

电信标准G.982:光接入网络支持ISDN基群速率或同等比特率业务的技术规范与应用

内容概要:本文档为国际电信联盟(ITU-T)发布的电信标准化部门推荐书G.982。它详细介绍了光接入网络(OAN)的特性和配置,特别是针对点到多点无源光纤网络(PON),能够在本地和接入网络中传输互动服务。主要讨论了OAN的配置架构、光纤类型、传输方法、波长分配、系统规格以及操作维护管理等方面。该建议还考虑了商业客户和服务住宅用户基于64 kbit/s承载能力到ISDN基群速率的服务需求,并描述了一种灵活升级的方式以满足未来客户需求的能力。附录部分探讨了光学放大器的应用及对波分复用技术的研究展望,以及提供了光损耗计算方法。 适合人群:具备通信工程背景,尤其是关注光纤通信和接入网领域的工程师和研究人员。 使用场景及目标:该标准适用于光接入网络的设计和部署阶段,帮助网络运营商构建可靠的接入网络架构,确保提供高质量的数据传输服务和支持未来的业务扩展;同时有助于设备制造商了解市场需求并据此开发兼容设备。 其他说明:该文档由ITU-T研究组制定并通过决议批准发布,旨在推动全球范围内数字化通信系统的互操作性和统一化建设。为了保障知识产权和安全性能,在实施过程中还需注意相关专利和技术规范的问题。此外

2025-03-23

STM32H7双核架构微控制器系统介绍与应用设计

内容概要:本文主要介绍了基于Arm Cortex-M7和Cortex-M4双核架构的STM32H7系列微控制器(MCU)的设计及其优化。STM32H7双核器件提供了非对称的多核心处理器性能,可以显著提升系统的数据传输效率并同时降低功耗。文中详细介绍了系统分区成三个独立的功率域来实现更好的电源管理、内嵌的内存结构及分配方式、以及多个外设配置和时钟控制方案。针对开发人员的实际需求,文档还展示了具体的项目构建流程如利用STM32CubeMX工具完成引脚分配、系统时钟设定、代码自动生成,并讨论了两个CPU间的数据同步方法,包括IPC机制与FreeRTOS集成。同时涵盖了如何有效利用资源进行图像流处理、传感器数据分析传输到云端及电机控制等方面的应用实例。此外,本文探讨了一些调试手段,如断点调试、跟踪端口等功能。 适合人群:从事嵌入式系统硬件工程师或者软件开发者,特别是正在考虑采用STM32H7系列微控制器进行新产品开发的相关技术人员。 使用场景及目标:本指南适用于想要理解和使用STM32H7系列的双核架构特性的专业人士。它指导用户掌握高效管理和利用多核心的优势、理解不同功率域的操作特性从而改善产

2025-03-23

RISC-V外部调试支持规范解析与应用 - 版本0.13.2

内容概要:本文档详细介绍了RISC-V架构的外部调试支持标准(External Debug Support),这是为了在硬件实施阶段提供有效的低级软件和硬件调试支持而建立的标准规范。其主要特点包括全面的支持各种调试特征,如读写所有CPU寄存器(包括CSR)、从不同角度访问内存以及支持多核心系统的独立调试。同时针对不同调试场景(无操作系统环境下调试底层软件、调试操作系统本身等)进行了优化设计。文档涵盖了从总体系统概述到各具体组件的功能描述(如调试模块DM、触发模块等)、寄存器定义及其字段的意义解释等方面。此外还讨论了安全特性、侵入程度最小化的调试方式及多种运输协议的应用。 适合人群:具备一定计算机科学特别是处理器相关背景知识的研究人员或工程师,对RISC-V指令集有一定认识。 使用场景及目标:①理解和实现基于RISC-V平台构建的系统的复杂低层级程序错误诊断;②确保能在系统早期启动阶段获取充分信息用于故障排查;③为嵌入式设备开发者提供了详细的硬件层面指导和技术细节以便他们能正确配置并利用这个框架进行有效调试。 其他说明:本文档由SiFive公司的两位编辑撰写并得到了超过五十位贡献者的参

2025-03-23

PUBLISHED SFF-8485中文版.pdf

内容概要:本文档详细介绍了串行通用输入输出(SGPIO)总线规范,适用于与串行SCSI (SAS) 和串行ATA (SATA) 设备配合使用的环境。文档主要涵盖 SGPIO 的定义、组成元素、应用场景和技术细节等内容,特别强调与 SAS 和 SATA 接口的关系以及它提供的通信方式。SGPIO 是一种序列化的通用IO信号方法,主要用于实现发起方(通常是主机总线适配器)与终端(一般是存储驱动器背板)之间的交互。此外还讨论了包括 SAS 、 SATA 和 PCI Express 在内的多种实际部署情况。 适合人群:从事数据中心硬件设计、制造或维护的专业人员;对于磁盘阵列和其他企业级外部存储解决方案感兴趣的研究人员和技术专家。 使用场景及目标:该规格旨在确保系统制造商及其合作伙伴之间保持一致的标准,从而促进产品的互操作性和统一性;提供有关如何正确配置和编程 SGPIO 总线的指导。 其他说明:SGPIO 规范不仅提供了具体的技术规范,还包括了一系列的最佳实践案例,便于开发者理解和实施该标准;并鼓励读者提交反馈以帮助进一步完善文档。

2025-03-23

PUBLISHED SFF-8472中文版.pdf

内容概要:SFF-8472修订版1.2.4 规定了光收发器的小形式因子插拔 (SFP+) 设备的数据监控接口标准。本文档提供了详细的内存映射定义和技术规格,确保了对光收发器的各种操作参数(如温度、电压、光功率)进行实时监控,并提供了诊断数据报警机制,确保可靠运行和维护。该标准还包括各种扩展特性,增强了灵活性和适应性,适用于不同类型和速率的光纤与铜缆接口。它规定了多个EEPROM的使用方法以及内存页的选择和支持的不同传输协议(SONET, 以太网, Infiniband等)。此外,它也包含了具体的校准和报警阈值设置的方法,确保了在不同的工作环境下数据的准确性。 适合人群:网络工程师、系统集成商、硬件设计师和其他需要了解和实施SFP+模块监控的技术人员。 使用场景及目标:主要应用于数据中心和通讯设备间的光互联解决方案中,通过实现对关键参数的精确管理和报警功能,提高了系统的可靠性及效率。同时支持不同传输速率的应用程序,帮助开发者优化和测试网络架构。 其他说明:本文档是由存储网络行业协会(SNIA)发布并管理的一套国际公认的标准规范,最新版已于2021年更新。文中包含大量的表单用来具体展示各个

2025-03-23

PUBLISHED SFF-8437中文版.pdf

内容概要:该文档详述了存储网络行业协会(SNIA)发布的SFF-8437规范——一种小型针式通孔收发器的标准。它介绍了规范的目的、背景及其对机械和电气特性进行详细的定义,并强调了多源协议以及2000年以来的技术演变历程。此外,文档提供了引脚布局、功能定义和其他相关参数,旨在满足网络、存储和通信行业的硬件互操作性和标准化要求。 适合人群:涉及光模块产品设计、制造及应用的相关工程师和技术人员;对硬件通信接口标准感兴趣的从业者。 使用场景及目标:帮助硬件开发者理解和实施最新的收发器技术规范;确保各厂商生产的设备能够达到统一的质量水平和支持多种不同的市场应用;推动行业内技术交流与发展。 其他说明:此规范不仅促进了设备间的互联互通,还提高了系统的稳定性和可靠性。同时鼓励业界人士反馈意见以便持续优化规格内容。

2025-03-23

PUBLISHED SFF-8432中文版.pdf

内容概要:本文档是由SNIA(存储网络行业协会)发布的SFF-8432修订版,主要描述了关于SFP+模块和外壳的具体技术标准。其重点在于定义了SFP+可插拔模块的机械结构及与外壳的交互性能,尤其注重电磁干扰(EMI)屏蔽的设计要求。文档详细规定了各种尺寸、力学性能(如插拔力度)、耐久性和安装方式等方面的标准参数,以及IPF模块的设计要点,确保不同品牌的产品之间的互通性和高效运行。此外还提供了几种典型的收发器支架实例,为制造商提供具体的实施指南。 适合人群:电信设备制造商、数据通信领域的工程师以及研究机构的专业技术人员。 使用场景及目标:适用于需要理解和遵守SFP+光模块及其外壳硬件设计规范的相关人士;目的是确保产品符合业界标准,在实际部署时达到预期性能表现。 其他说明:文中包含大量图纸和规格列表,建议使用者仔细查阅附带图形资料,以便更好地理解各项规定和技术要求。对于可能涉及的专利事项也有说明,鼓励用户通过指定链接提交反馈或加入工作组参与进一步完善该标准。同时应注意文件版本更新情况。

2025-03-23

PUBLISHED SFF-8419中文版.pdf

内容概要:本文档是关于SFP+(增强型小型可插拔)模块与主机低速电气接口的标准技术规格。它提供了详细的接口要求、连接器触点配置、电力供应规范、静态放电保护以及信号交互的流程与时序。文档适用于各种高速电信号传输的应用场合,尤其是对于光通信系统而言至关重要。文中还列举了若干测试方式以确保产品符合性能指标,从而保障系统的稳定性和可靠性。 适合人群:从事网络设备制造的设计工程师和技术人员,尤其是在数据中心基础设施领域工作的专业人士。 使用场景及目标:旨在提供明确的接口标准给硬件制造商、系统集成商及其他供应商作为共同参考,帮助他们在实际的产品开发过程中能够高效地理解和遵照相关准则进行操作。 其他说明:SFF委员会鼓励业界内外提出意见并参与讨论,不断推动技术进步与发展。

2025-03-23

PUBLISHED SFF-8418中文版.pdf

内容概要:该文件详细规定了SFP+(小型可插拔加长)模块与其配套主板之间的10 Gb/s高速电接口的标准和技术细节。具体涵盖了电气接口规格(如信号完整性)、低速与高速信令标准、模块和主板端的功能要求、各类信号路径及测试板的设计和应用、以及一系列关键参数(误码率、抖动、反射等)的量测试和评估流程。此外,文件还包括SFP+铜线直接连接组件的技术标准,特别针对10GBASE-T和其他以太网和光纤通道的应用提供了详细的操作和实现说明。同时,该标准为确保产品间的兼容性和稳定性,提出了严格的一致性测试和评估方法。 适用人群:具备通信工程基础知识的技术人员、通信及网络硬件制造商和供应商的研发团队、测试工程师及相关领域的高校和研究机构研究人员。 使用场景及目标:适用于设计制造支持10Gb/s的SFP+通信接口的产品开发者和工程师们,以保障产品之间的互操作性和功能性测试。主要目标是为了确保各个组件之间良好的信号完整性和稳定的数据传输速度。 其他说明:文中提到的大量测试图例、示例图表及Matlab代码对于理解和实现SFP+的复杂测试方法非常有帮助。文件强调测试过程中使用的具体技术和工具(如信号发生器、网络

2025-03-23

PUBLISHED SFF-8414中文版.pdf

内容概要:本文档《PUBLISHED SFF-8414中文版.pdf》详细规定了针对HPEI(高性能电气互连)无源电缆组件和PCB的S参数测量标准。该规范由SNIA下属的SFF委员会制定,涵盖了多种高速串行通信环境中使用的物理互连线缆组件及印刷电路板的性能特征定义、测量方法及应用场景等,特别是关于S参数的应用及其校准。此外,该规范还提供了详细的测试设置指导以及对S参数测量的数据解读,强调在不同物理布局和技术条件下的测量方法选择及其合理性评价。 适用人群:主要适用于从事通信工程的技术研究人员、系统制造商、集成商和其他对高密度互连技术感兴趣的各方专业人士。 使用场景及目标:帮助制造商、集成商确保产品符合标准,在新产品设计阶段进行仿真验证,在生产和维修过程中执行质量监控,提升互连部件的一致性和互操作性,从而满足日益增长的高密度计算及高速数据传输需求。 其他说明:文档强调了在特定条件下保持测试结果稳定性的挑战与解决方案,包括时域和频域内的S参数测试差异对比,并提出了一些实际实施过程中应注意的问题和建议措施。

2025-03-23

PUBLISHED SFF-8079中文版.pdf:速率和应用程序选择的技术详解及其实现

内容概要:本文档主要定义了 SFP(小可插拔)收发器在不同速率及其应用程序选择方面的标准化规定和技术细节,特别介绍了RateSelect和新的通用ApplicationSelect两种机制,以提升SFP器件的多速率及多功能应用能力,确保不同速率之间的灵活切换,以及在一个模块中支持多个应用。主要内容涵盖:1) RateSelect的定义,允许调整接收器带宽,支持不同的操作速率;2) Expanded RateSelect,增加了速率选择范围;3) ApplicationSelect,新增硬件和软件方法进行多应用选择,确保模块能够在四个以上的应用之间快速切换,并保持向后兼容性;此外还提供了一套标准化的应用程序代码表(ACT),便于识别支持的不同标准化应用程序。 适用人群:针对系统制造商、系统集成商以及参与串行通信模块供应的相关从业人员或技术人员。 使用场景及目标:① 实现单模块对多个数据速率的支持,避免模块碎片化现象。② 提升模块在光纤通道、SONET/SDH、以太网等多个领域的应用兼容性和灵活性。③ 规范化SFP器件的设计制造流程,以便于行业标准化。 其他说明:SFF-8079基于先前的

2025-03-23

PUBLISHED SFF-8024中文版.pdf:关于可插拔光学模块的识别代码规定

内容概要:SFF-8024修订版4.12是SNIA发布的标准文档,主要规定了SFF模块的各类参数及其参考代码表。具体而言,涵盖了模块识别编码、接口规格及配置代码等内容。其目的在于促进各种SFF模块如SFP、QSFP及其他相关可插拔光学模块之间的互操作性和通用性,并确保其性能符合预期标准。此标准还详细列举了不同的连接器类别、广度及合规性编码、以及主机接口规范等,同时提供了多个应用场景的具体实现细节和支持技术的参考文档链接。 适用人群:从事数据中心、网络工程及相关研究的专业人士,尤其适用于参与模块开发、系统集成或者需要评估模块适配性的工程师和技术人员。 使用场景及目标:①确保不同类型的SFF模块能在广泛的网络设备和系统环境中无缝协作; ②提供开发者一套详实完整的指导方针来辅助设计决策,从而加速产品开发周期。此外也为购买或升级网络硬件的企业用户提供必要的技术背景支持。 其他说明:本文献不仅阐述了技术要点和实施步骤,同时也包含了详细的修订历史及贡献者的名单,强调了社区合作对标准制定的重要意义。为了进一步获取更多信息或提出反馈意见,还可以访问指定网址。

2025-03-23

PUBLISHED INF-8074中文版.pdf

内容概要:该文档是由SNIA下属的SFF委员会发布的针对SFP (Small Form-factor Pluggable, 小可插拔) 收发器的规格定义和技术细节,涵盖了SFP模块的各种物理和电器特性,以及制造标准。主要内容包含了收发器尺寸和形状设计、电气连接方式、信号完整性保障措施(比如电磁兼容性和抗干扰能力),还有关于模块启动、正常操作状态期间的行为特性、发生故障后的应对流程等方面的介绍。此外它还规定了模块与设备通信所需的各种命令和响应协议、不同情况下的时间延迟参数,甚至到颜色编码的设定和会员信息注册等内容都有涉及。 适用人群:硬件工程师,尤其是涉及到SFP收发器的设计与开发的相关工作人员。对于数据中心建设,电信运营商以及从事高速数据传输产品研发的科技企业来说非常重要。对研究和开发用于光纤或电信网络中使用的光电转换设备有兴趣的研究人士也可以从中受益。 使用场景及目标:①适用于新型的小型化高速光纤收发装置的研发过程中,确保各个厂商的产品可以在物理层面和电气特性上保持良好的一致性和兼容性;②在现有设施升级改造项目里,提供了一个统一参考准则用来挑选合适类型的替代产品;③为未来可能出现的新

2025-03-22

ClientPi2.rar

本文件配合树莓派服务器使用,使用QT开发一个简单客户端界面,用于连接树莓派服务器,实现开灯关灯,蜂鸣器控制功能

2020-08-23

ClientPi1.rar

本文件配合树莓派服务器使用,使用QT开发一个简单客户端界面,用于连接树莓派服务器,实现开灯关灯,蜂鸣器控制,温湿度显示功能

2020-08-23

wiringPi.tar

因为wiringPi官方停止了对wiringPi源码的下载支持,为了方便国内树莓派开发者,提供这个下载资源

2020-07-05

miniprogram-2-wx-require.rar

本代码是微信小程序的完整工程,采样wx requre协议与树莓派通信,能够控制树莓派开灯,关灯,能够获取树莓派上的温湿度信息。

2020-05-15

miniprogram-2-udp.rar

本代码是微信小程序的完整工程,采样udp协议与树莓派通信,能够控制树莓派开灯,关灯,能够获取树莓派上的温湿度信息。

2020-05-15

miniprogram-2-TempHumity.rar

应一些购买我专栏的要求(其实已经给了源码,但是你们都想吃快餐),因此上传一版微信小程序的工程,此工程是配合Python的工程,可以直接运行。

2020-05-15

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除