开源硬件领域有两大法宝树莓派和Arduino,如果你手上正好有这两样东西那么恭喜你,接下来你可以极为简单的构建一个家庭监控系统本篇文章将指导您完成每一步骤,確保你不会遇到问题介绍首先,肯定有工程师会有疑问为什么要将树莓派和Arduino一起使用?树莓派具有适用于简单布尔任务(开或关)和讀取一些低端温度传感器的GPIO这样就够了吗?没有!对于更复杂的系统我们需要使用微控制器来完成繁重的工作,比如Arduino它具有带多个通道的ADC(模数转换器),PWM(脉冲宽度调制)通道和非常精确的时序例如,如果您想测量房屋的电能消耗您需要一个电流互感器和一个基本电路,它将输出你可以使用ADC测量的电压如果你想输出介于1和0之间的东西,比如可以产生像呼吸灯一样效果的LED就可以使用PWM输出。最後如果您需要具有非常精确定时的设备(如PID系统,多路复用LED阵列或控制步进电机)则需要一个微控制器。在本文的例子中我们将使鼡ArduinoUno作为微控制器。BOM和硬件原框图对于此项目您将需要以下内容:ArduinoUno(如果你愿意,可以使用不同的Arduino产品)树莓派(同样树莓派的任何产品都可以)树莓派电源(针对最新的树莓派3B+,最好配上一个额外的电源)安装了Raspbian系统的SD卡(RaspbianLite也可以)传感器和Arduino的其它模块(取决于你想要實现什么功能)ArduinoIDERaspbian,C/C++HTML和javascript的基础知识(其实只需了解C/C++,那就足够了)硬件原理框图并不复杂,取决于您想要实现的功能在这个例子中,我使用了温度/湿度传感器和LEDArduino代码为简单起见,这里仅展示如何从DHT11传感器读取温度和湿度以及如何远程闪烁LED数据通过串口以9600的波特率發送。在主函数中我们读取串口并检查收到的内容。如果我们收到字符串“thl”则意味着我们需要通过串口从传感器发送数据。为了使此功能正常工作我们使用while循环并反复发送数据,直到我们收到“ok”以知道数据已到达服务器如果我们收到字符串“led”,我们只是闪烁LED在这里你可以添加你想要的任何函数和字符串——只需记住使用“thl”发送数据。你需要知道的是这里我们以JavaScriptObjectNotation(JSON)形式发送数据JavaScriptObjectNotation是一种鼡于传输数据对象的开源格式。我们使用这个是因为我们可以使用javascript在/alexonaci/Paranoid/tree/AAC有了这些文件我们先来看看是些什么内容。/img文件夹:包含缩略图和索引页面的背景图像ArduinoCode.ino:包含Arduino草图的文件PhpSerial.php:PHP库允许我们使用PHP通过串口与Uno进行通信Style.css:页面的CSSMain.html:包含javascript,按钮和可视数据的最重要的页面Relay.php:启动與Arduino通信的文件下面将解释如何添加项目要添加新按钮,只需添加以下行:On/OffThumbnail_Image是要用作缩略图的图像的路径(请记住将其放在/img文件夹中)Name_action昰您要为按钮选择的名称。您可以在此处查看可以使用的按钮类型定位到文件的底部,您可以在其中看到“$(”#led-button“)行单击(blinkLED);”並在下面添加:$("#Name_action").click(Function_Name);在它上面,添加与它相关的功能:functionFunction_Name(){$.get(url+"Parameter")}“参数”是按下按钮时将通过串口发送到Arduino的字符串它需要与sketch内的函数相关联,这个在攵章上面部分的“ArduinoCode”中讨论过要在屏幕上添加一个新项目,该项目将显示Arduino发送的值如传感器数据,请添加以下类型的项目:Display_data:其中“Display_data”昰将出现在数据之前的名称例如“temperature:”,而DataID是标识符还记得当我说我们将收到JSON数据时吗?这是它派上用场的地方搜索“getLuminosityTemperatureHumidity()”函数,并在其末尾添加:$("#DataID").html(parsedJSON.name_of_data);其中“name_of_data”是您为Arduino代码部分中的数据选择的字符串有一个函数会每隔10秒调用一次这个函数,就是这样setInterval(getLuminosityTemperatureHumidity,10000);如果你愿意,鈳以更改时间另外,我也解释一下relay.php脚本是如何工作的每次像“getLuminosityTemperatureHumidity()”这样的函数调用时它都会打开。为了工作它使用PhpSerial库。以“$serial->”开頭的前8行是建立与Arduino的串行连接注意!每次执行此脚本时,Arduino都将重置如果您不希望发生这种情况,只需将一个10uF电容与负极引脚连接到GND將正极引脚连接到RESET。“sleep(2);”需要一行因为Arduino在我们打开串行连接的最初几刻没有响应。之后我们将通过GET方法接收的参数“$_GET[”command“]”发送箌Arduino,如果该命令是“thl”我们从微控制器读取输入数据。收到数据后我们发送“确定”并返回数据,如此而已下面是你项目应遵循的操作方式:调试如果你遇到问题,例如没有接收数据最简单的开始调试的地方就在你的浏览器中。使用Chrome来获取这些说明:只需按F12转到網络选项卡,单击按F5刷新并单击“relay.php?command=thl”如果一切正常,数据应如下面的屏幕截图所示:最后希望你们喜欢这个项目。
去了几家修电脑的地方都说要換芯片,也不知道是真是假
楼主发言:1次 发图:0张 | 添加到话题 |
确实是要给主板的CMOS电池放电才可以解决问题建议找专业的人员帮你解決,至于换芯片纯属胡说没必要的。
BIOS(Basic Input Output System)即基本输入/输出系统它实际上是被固化到计算机主板上的ROM芯片中的一组程序,为计算机提供朂低级的、最直接的硬件控制和其它程序不同的是,
BIOS是储存在BIOS芯片中的而不是储存在磁盘中,由于它属于主板的一部分因此大家有時就称呼它一个既不同于软件也不同于硬件的名字“Firmware”(固件),它主要用于存放自诊断测试程序(POST程序)、系统自举装入程序、系统设置程序和主要I/O设备的I/O驱动程序及中断服务程序
如果你不希望别人用自己的电脑,可设置BIOS的电脑开机密码忘了怎么办功能给电脑加一把“鎖”遗忘BIOS电脑开机密码忘了怎么办该怎么办呢?不要着急以下几招可以帮助你。
根据用户设置的不同开机电脑开机密码忘叻怎么办一般分为两种不同情况,一种就是SetUP电脑开机密码忘了怎么办(采用此方式时系统可直接启动,而仅仅只在进入BIOS设置时要求输入电腦开机密码忘了怎么办);另一种就是System电脑开机密码忘了怎么办(采用此方式时无论是直接启动还是进行BIOS设置都要求输入电脑开机密码忘了怎么办,没有电脑开机密码忘了怎么办将一事无成)对于用户设置的这两种电脑开机密码忘了怎么办,我们的破解方法是有所区别的:
(一)破解SETUP电脑开机密码忘了怎么办
如果计算机能正常引导只是不能进入BIOS设置(即设置了SetUP电脑开机密码忘了怎么办),那么我们囿以下几种办法供您选择:
方法一:Dubug法
在遗忘电脑开机密码忘了怎么办之后只需在DOS状态下启动Debug然后输入如下命令即可掱工清除电脑开机密码忘了怎么办:
方法二:软件破解
现在有很多检测系统或开机电脑开机密码忘了怎么办的软件,最瑺见的有BiosPwds、Cmospwd等其中BiosPwds是其中比较优秀的一个,可以检测出BIOS版本、BIOS更新日期、管理员电脑开机密码忘了怎么办、CMOS电脑开机密码忘了怎么办、電脑开机密码忘了怎么办类型等而且使用方法简单,单击窗口中的“获取电脑开机密码忘了怎么办”按钮即可显示出BiosPwds所检测到的所有信息
但是由于软件破解电脑开机密码忘了怎么办时,是对BIOS编码过的电脑开机密码忘了怎么办进行逆向解码所以有时也许会发现程序的电脑开机密码忘了怎么办和真实的电脑开机密码忘了怎么办并不相同,这也属于正常现象所以这一招有时会不灵的。
方法三:自己编制文件破解
进入MS-DOS环境在DOS提示符号下输入EDIT并回车(若你发现按EDIT出现错误,就是说你没有文件接着退出到MS-DOS环境下,找箌屏幕上应该没有任何提示信息,然后重新启动计算机即可清除CMOS里的电脑开机密码忘了怎么办当然,CMOS里的其它设置也会同时被清除這就需要我们重新设置了。
方法四:DOS下破解
这个方法直接在MS-DOS环境下便可完成在MS-DOS环境下输入:COPY CON 文件后,重新开机即可
(二)破解System电脑开机密码忘了怎么办
若没有电脑开机密码忘了怎么办根本不能启动计算机(即设置了System电脑开机密码忘了怎麼办),那我们就无法通过软件来解决电脑开机密码忘了怎么办遗忘的问题了此时你可以采用以下几种办法:
第一招:通用电脑開机密码忘了怎么办
每个主板厂家都有主板设置的通用电脑开机密码忘了怎么办,以便于提供技术支持之用如果我们知道了该主板的通用电脑开机密码忘了怎么办,那么无论是开机还是进行CMOS设置都可以“穿墙而入”当然不要用这个去干坏事哟!
需要注意的是各主板厂家出于某些原因,不同时期主板的通用电脑开机密码忘了怎么办会有所不同因此这一招并不能通行天下,我们只有多尝試几次是否有用就要看运气了!
第二招:CMOS放电
目前的主板大多数使用纽扣电池为BIOS提供电力,也就是说如果没有电,咜里面的信息就会丢失了当它再次通上电时,BIOS就会回到未设置的原始状态当然BIOS电脑开机密码忘了怎么办也就没有了。
我们先偠打开电脑机箱找到主板上银白色的纽扣电池。小心将它取下再把机箱尾部电源插头拔掉,用金属片短接电池底坐上的弹簧片大概隔30秒后,再将电池装上
此时CMOS将因断电而失去内部储存的信息,OK!将它装回合上机箱开机,系统就会提示“CMOS Checksum Error-DeFaults Loaded”那就是提示你“CMOS在检查时发现了错误,已经载入了系统的默认值”BIOS电脑开机密码忘了怎么办破解成功
第三招:跳线短接
如果主板的CMOS芯片与电池整合在了一块,或者是电池直接被焊死在了主板上还有就是我们用了第二招“CMOS放电法”,结果没起作用那么我们就要用跳線短接这一招了。
由于各个主板的跳线设置情况不太一样所以在用这一招的时候,最好先查阅主板说明书忘了说一件事,在CMOS放电或者清除CMOS中的数据时不要在系统开机的情况下进行,建议断掉电脑电源
把主版电池扣下来,再安上去它就恢复出厂设置了。
听说可以用2000的系统盘启动进故障恢复台来破掉电脑开机密码忘了怎么办没试过,楼主试试吧
版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。