树莓派定时控制散热风扇开关

硬件上

一、思路:GPIO给三极管基极信号

使用三极管组成开关电路。以S9013为例,S9013是NPN型三极管。关于NPN型三极管,S9013的特性如下:

NPN基极高电压,极电极与发射极短路。低电压,极电极与发射极开路。也就是不工作。

二、接线

相关电路图如下:

S9013

连接电路图

连接引脚图

软件上

一、GPIO简单使用

首先看一些例程:

1.GPIO输出

# -*- coding: utf-8 -*-  
import RPi.GPIO as GPIO  
import time  
# BOARD编号方式,基于插座引脚编号  
GPIO.setmode(GPIO.BOARD)  
# 输出模式  
GPIO.setup(11, GPIO.OUT)  

while True:  
    GPIO.output(11, GPIO.HIGH)  
    time.sleep(1)  
    GPIO.output(11, GPIO.LOW)  
    time.sleep(1)  

Read More

计算机开放电子书汇总

本文主要针对飞龙分享的电子书目附加网盘直链下载,并保持长久有效。点击文件名即可下载。提示:可以使用Ctrl + F来检索。

  • 11-Things-WordPress-ebook1.pdf
  • 14天学会安卓开发.epub
  • 90sec安全文档第一期.pdf
  • 100个gcc小技巧.epub
  • 100个gdb小技巧.epub
  • 500 Lines or Less.epub
  • 2015互联网企业校招笔试题.pdf
  • ACM Cheat Sheet (C++).pdf
  • Activiti 5.x 用户指南.epub
  • Agera Wiki 中文版 - v1.0.epub
  • algorithm-zh-cn.epub
  • Android Studio 中文教程(前六章).epub
  • AndroidTrainingCHS.epub
  • android逆向菜鸟速参手册完蛋版.pdf
  • Angular 2 中文文档.epub
  • AngularJS入门教程.epub
  • Read More

    在Ubuntu搭建饥荒专用服务器

    由于很多教程只是老版本的教程,新版本饥荒有较大改变,所以写了这篇笔记短文,可供新手搭建服务器使用。

    准备工作

    需要知道的基本Linux操作

    • 删除文件命令 rm -f 文件名 将会强行删除文件,且无提示

    • 删除文件夹以及文件夹中的所有文件命令:rm -rf 目录名字其中:-r:向下递归删除 -f:直接强行删除,且没有任何提示

    划分Swap分区

    1.使用最常用的 free 命令来查看当前系统是否存在 Swap 交换分区

    free -m
    

    2.查看磁盘分区的空闲空间

    df -h
    

    3.创建Swap分区文件

    dd if=/dev/zero of=/swapfile bs=1G count=1
    

    或者

    fallocate -l 1G /swapfile
    

    4.设置Swap分区文件

    chmod 600 /swapfile
    
    mkswap /swapfile
    

    5.启用交换分区文件

    swapon /swapfile
    

    6.开机挂载交换分区文件,使用 vi 或 nano 在 /etc/fstab 文件底部添加如下内容:

    LABEL=SWAP-sda    /swapfile swap swap default 0 0
    

    Read More

    VB.NET下载文件及显示进程

    简单的下载

    1.创建WebClient类,再输入要下载的资源url地址还有本地保存路径即可。

    Dim DownloadClient As New Net.WebClient() 
    DownloadClient.DownloadFile(yoururladdress,yourfileaddress)
    

    2.使用 DownloadFile的方法下载文件,指定文件的下载地址和本地路径,和超时时间。

    My.Computer.Network.DownloadFile(yoururladdress, yourfileaddress, False, 500)
    

    具有进度提示的下载

    以VS2015为编译环境,举例如下:

    Imports System.Net
    Public Class Main
    
        Dim DownloadClient As New WebClient
    
        Private Sub Form_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            AddHandler DownloadClient.DownloadProgressChanged, AddressOf ShowDownProgress 
            AddHandler DownloadClient.DownloadDataCompleted, AddressOf DownloadDataCompleted
        End Sub
    
        Private Sub Button_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button.Click
            DownLoadFiles()
        End Sub
    
        Private Sub DownLoadFiles()  
             DownloadClient.DownloadFileAsync(New Uri(yourlink), (yoursaveaddress))
        End Sub
    
        Private Sub ShowDownProgress(ByVal sender As Object, ByVal e As DownloadProgressChangedEventArgs)
            Invoke(New Action(Of Integer)(Sub(i) ProgressBar.Value = i), e.ProgressPercentage)
        End Sub
    
        Sub DownloadDataCompleted(ByVal sender As Object, ByVal e As System.ComponentModel.AsyncCompletedEventArgs)
            MessageBox.Show("下载成功!", "提示", MessageBoxButtons.OK)
        End Sub
    End Class
    

    .NET中WebBrowser内核版本解决方案

    方案一:更改网页META标签

    例如使用IE9内核的特性,则可以在网页<head>标签中加入<meta http-equiv="X-UA-Compatible" content="IE=9" >

    注意:这个标签必须加在<head>中其他CSS和JavaScript链接之前,但可以与<title>和其他<meta>成任意位置。

    方案二:修改注册表

    例如使用IE9内核的特性,可在注册表添加两个键值。

    HKEY_LOCAL_MACHINE (和 HKEY_CURRENT_USER) >SOFTWARE > Microsoft > Internet Explorer > Main > FeatureControl > FEATURE_BROWSER_EMULATION

    新建 → DWORD(32-位)值 yourprogram.exe = 9999 (十进制)

    其中,9999 (0x270F) IE9,无论是否声明!DOCTYPE指令,页面以IE9兼容模式打开。对于未正确声明!DOCTYPE指令的页面,将会以怪异模式(quirks mode)加载

    更多mode值对照表,参考:Browser Emulation