久久久精品网站,成人伊人网,色吧av色av,亚洲AV永久无码精品秋霞电影影院

怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

前沿拓展:

怎樣調(diào)節(jié)電腦屏幕亮度

如果筆記本的話FN+方向鍵上、下。


怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

智能手機(jī)普遍內(nèi)置的光線傳感器,在一些筆記本電腦上卻并沒(méi)有配備。當(dāng)你帶著這樣的筆記本電腦在某些環(huán)境下工作時(shí),如何讓筆記本隨著環(huán)境光線來(lái)自動(dòng)調(diào)節(jié)屏幕的亮度呢?

下面我們準(zhǔn)備用一個(gè) Arduino 外加兩枚光敏電阻來(lái)搞定這件事~

通過(guò)這個(gè)小項(xiàng)目你可以學(xué)到如何讓 Arduino 和電腦通過(guò)串口進(jìn)行通信,以及光敏電阻的使用方法。

組件清單

Arduino 開(kāi)發(fā)板(這里使用 Pro mini) × 1LDR 光敏電阻 × 210kr 電阻 × 1電路板 × 1排針座 × 2U** 線(兼容 Arduino 開(kāi)發(fā)板) × 1

怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

原理說(shuō)明

當(dāng)我們需要檢測(cè)環(huán)境光線的時(shí)候,使用光敏電阻是最簡(jiǎn)單的方案。就像智能手機(jī)的光線傳感器一樣,將 LDR 光敏電阻朝向人的正臉并獲取光線強(qiáng)度模擬信號(hào)。由 Arduino 的 ADC 引腳讀取這個(gè)數(shù)值,值域?yàn)?0 ~ 1024。

我們通過(guò)電腦上的 Python 程序,來(lái)接收由 Arduino 發(fā)送過(guò)來(lái)的光線數(shù)值,并將該數(shù)值與屏幕亮度的級(jí)別做一個(gè)映射,第二來(lái)調(diào)節(jié)屏幕的亮度。

搭建實(shí)驗(yàn)電路

為了驗(yàn)證這個(gè)想法,第一在面包板上搭建實(shí)驗(yàn)電路。原理圖如下。

怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

并編寫(xiě)一段簡(jiǎn)單的程序,通過(guò) Arduino 的串行監(jiān)視器輸出光線傳感器數(shù)據(jù)。

// define sensor pin
int sensor_pin = A3;

void setup() {
// set things here
Serial.begin(9600); // init serial communication at 9600 bps
}

void loop() {
// mainloop
int sensorValue = **ogRead(sensor_pin); // read the input on **og pin A3:
Serial.println(sensorValue); // send data over serial

delay(200); // a little delay to make things work better
}

完整的代碼在項(xiàng)目文件庫(kù)中可以下載:https://make.quwj.com/project/389

運(yùn)行之后可以看到在不同的光線強(qiáng)度下,輸出的數(shù)值在 0 ~ 950 這個(gè)區(qū)間。

設(shè)計(jì) PCB

使用 easyEDA 設(shè)計(jì)出 PCB。我選用了兩枚傳感器,這樣讓這個(gè)小設(shè)備如圖一直蝸牛,更加可愛(ài)。實(shí)際上左邊的 LDR 光敏電阻并未使用。

怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

第二就交給 PCB 板廠打樣吧。

焊接并完成組裝

這塊板很簡(jiǎn)單,沒(méi)有太多的組件。焊接好一組排針座和光敏電阻就好了。

怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

第二把 Arduino **排針座。

Arduino 編程

將 Arduino 用 U** 線連接到電腦,打開(kāi) Arduino IDE 將下面的代碼上傳到 Arduino 上。

/* Computer Hack!
Brightness Controller

(C) License: GPL3-General Public License

author: ashraf minhaj
*/

// define sensor pin
int sensor_pin = A3;

void setup() {
// set things here
Serial.begin(9600); // init serial communication at 9600 bps
}

void loop() {
// mainloop
int sensorValue = **ogRead(sensor_pin); // read the input on **og pin A3:
Serial.println(sensorValue); // send data over serial

delay(200); // a little delay to make things work better
}
安裝 Python 程序

通過(guò)上面的步驟,Arduino 已經(jīng)可以將光線數(shù)值通過(guò)串口傳給計(jì)算機(jī)了。下面要做的是編寫(xiě)一個(gè) Python 程序,在計(jì)算機(jī)上運(yùn)行,任務(wù)是接收發(fā)來(lái)的傳感器數(shù)值并依此調(diào)節(jié)屏幕亮度。

如果你的計(jì)算機(jī)上還沒(méi)裝過(guò) Python 環(huán)境,請(qǐng)?jiān)谶@里下載好 Python 并完成安裝:http://python.org/download

怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

打開(kāi)終端,安裝兩個(gè)庫(kù),分別用于串口和屏幕亮度控制方面的支持。

$ pip install pyserial
$ pip install screen-brightness-control

在項(xiàng)目文件庫(kù)中下載源碼:https://make.quwj.com/project/389

找到 controller.py,其程序如下:

""" Computer Hack!
Brightness Controller

(C) License: GPL3-General Public License

author: ashraf minhaj
"""

""" libraries –
$ pip install pyserial
$ pip install screen-brightness-control
"""

# import necessary libraries
import serial # for serial communication
import serial.tools.list_ports # to get Arduino port automatically
import screen_brightness_control as brightness # to control brightness

# device buadrate (bit per second)
# (change buadrate according to your need)
BUAD_RATE = 9600 # Pro Micro's buad rate is 9600
PORT = ""

# get sender device port automatically
serial_ports = list(serial.tools.list_ports.comports()) # get list of ports
for s_port in serial_ports: # iterate through all ports
if 'Arduino Micro' in s_port.description: # look for Pro Micro board
PORT = str(s_port[0]) # select first found board and
break # proceed

# connect with sender device
sender = serial.Serial(PORT, BUAD_RATE)

def map_value(value, in_min=0, in_max=1024, out_min=0, out_max=100):
""" To map values. Arduio sends values from 0 to 1024. My goal
is to make them in between 0 to 100."""
return int((value – in_min) * (out_max – out_min) / (in_max – in_min) + out_min)

# mainloop
while 1:
# convert byte data into string then integer
sensor_value = int(sender.readline().decode("utf-8")) # get data
final_value = map_value(value=sensor_value) # map value (brightness in percentage)
#print(sensor_value)
print(final_value)
brightness.set_brightness(final_value) # set brightness

# close port properly so that others can use it
sender.close()

運(yùn)行它,同時(shí)確保 Arduino 也連接在計(jì)算機(jī)上。

怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

拓展知識(shí):

前沿拓展:

怎樣調(diào)節(jié)電腦屏幕亮度

如果筆記本的話FN+方向鍵上、下。


怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

智能手機(jī)普遍內(nèi)置的光線傳感器,在一些筆記本電腦上卻并沒(méi)有配備。當(dāng)你帶著這樣的筆記本電腦在某些環(huán)境下工作時(shí),如何讓筆記本隨著環(huán)境光線來(lái)自動(dòng)調(diào)節(jié)屏幕的亮度呢?

下面我們準(zhǔn)備用一個(gè) Arduino 外加兩枚光敏電阻來(lái)搞定這件事~

通過(guò)這個(gè)小項(xiàng)目你可以學(xué)到如何讓 Arduino 和電腦通過(guò)串口進(jìn)行通信,以及光敏電阻的使用方法。

組件清單

Arduino 開(kāi)發(fā)板(這里使用 Pro mini) × 1LDR 光敏電阻 × 210kr 電阻 × 1電路板 × 1排針座 × 2U** 線(兼容 Arduino 開(kāi)發(fā)板) × 1

怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

原理說(shuō)明

當(dāng)我們需要檢測(cè)環(huán)境光線的時(shí)候,使用光敏電阻是最簡(jiǎn)單的方案。就像智能手機(jī)的光線傳感器一樣,將 LDR 光敏電阻朝向人的正臉并獲取光線強(qiáng)度模擬信號(hào)。由 Arduino 的 ADC 引腳讀取這個(gè)數(shù)值,值域?yàn)?0 ~ 1024。

我們通過(guò)電腦上的 Python 程序,來(lái)接收由 Arduino 發(fā)送過(guò)來(lái)的光線數(shù)值,并將該數(shù)值與屏幕亮度的級(jí)別做一個(gè)映射,第二來(lái)調(diào)節(jié)屏幕的亮度。

搭建實(shí)驗(yàn)電路

為了驗(yàn)證這個(gè)想法,第一在面包板上搭建實(shí)驗(yàn)電路。原理圖如下。

怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

并編寫(xiě)一段簡(jiǎn)單的程序,通過(guò) Arduino 的串行監(jiān)視器輸出光線傳感器數(shù)據(jù)。

// define sensor pin
int sensor_pin = A3;

void setup() {
// set things here
Serial.begin(9600); // init serial communication at 9600 bps
}

void loop() {
// mainloop
int sensorValue = **ogRead(sensor_pin); // read the input on **og pin A3:
Serial.println(sensorValue); // send data over serial

delay(200); // a little delay to make things work better
}

完整的代碼在項(xiàng)目文件庫(kù)中可以下載:https://make.quwj.com/project/389

運(yùn)行之后可以看到在不同的光線強(qiáng)度下,輸出的數(shù)值在 0 ~ 950 這個(gè)區(qū)間。

設(shè)計(jì) PCB

使用 easyEDA 設(shè)計(jì)出 PCB。我選用了兩枚傳感器,這樣讓這個(gè)小設(shè)備如圖一直蝸牛,更加可愛(ài)。實(shí)際上左邊的 LDR 光敏電阻并未使用。

怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

第二就交給 PCB 板廠打樣吧。

焊接并完成組裝

這塊板很簡(jiǎn)單,沒(méi)有太多的組件。焊接好一組排針座和光敏電阻就好了。

怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

第二把 Arduino **排針座。

Arduino 編程

將 Arduino 用 U** 線連接到電腦,打開(kāi) Arduino IDE 將下面的代碼上傳到 Arduino 上。

/* Computer Hack!
Brightness Controller

(C) License: GPL3-General Public License

author: ashraf minhaj
*/

// define sensor pin
int sensor_pin = A3;

void setup() {
// set things here
Serial.begin(9600); // init serial communication at 9600 bps
}

void loop() {
// mainloop
int sensorValue = **ogRead(sensor_pin); // read the input on **og pin A3:
Serial.println(sensorValue); // send data over serial

delay(200); // a little delay to make things work better
}
安裝 Python 程序

通過(guò)上面的步驟,Arduino 已經(jīng)可以將光線數(shù)值通過(guò)串口傳給計(jì)算機(jī)了。下面要做的是編寫(xiě)一個(gè) Python 程序,在計(jì)算機(jī)上運(yùn)行,任務(wù)是接收發(fā)來(lái)的傳感器數(shù)值并依此調(diào)節(jié)屏幕亮度。

如果你的計(jì)算機(jī)上還沒(méi)裝過(guò) Python 環(huán)境,請(qǐng)?jiān)谶@里下載好 Python 并完成安裝:http://python.org/download

怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

打開(kāi)終端,安裝兩個(gè)庫(kù),分別用于串口和屏幕亮度控制方面的支持。

$ pip install pyserial
$ pip install screen-brightness-control

在項(xiàng)目文件庫(kù)中下載源碼:https://make.quwj.com/project/389

找到 controller.py,其程序如下:

""" Computer Hack!
Brightness Controller

(C) License: GPL3-General Public License

author: ashraf minhaj
"""

""" libraries –
$ pip install pyserial
$ pip install screen-brightness-control
"""

# import necessary libraries
import serial # for serial communication
import serial.tools.list_ports # to get Arduino port automatically
import screen_brightness_control as brightness # to control brightness

# device buadrate (bit per second)
# (change buadrate according to your need)
BUAD_RATE = 9600 # Pro Micro's buad rate is 9600
PORT = ""

# get sender device port automatically
serial_ports = list(serial.tools.list_ports.comports()) # get list of ports
for s_port in serial_ports: # iterate through all ports
if 'Arduino Micro' in s_port.description: # look for Pro Micro board
PORT = str(s_port[0]) # select first found board and
break # proceed

# connect with sender device
sender = serial.Serial(PORT, BUAD_RATE)

def map_value(value, in_min=0, in_max=1024, out_min=0, out_max=100):
""" To map values. Arduio sends values from 0 to 1024. My goal
is to make them in between 0 to 100."""
return int((value – in_min) * (out_max – out_min) / (in_max – in_min) + out_min)

# mainloop
while 1:
# convert byte data into string then integer
sensor_value = int(sender.readline().decode("utf-8")) # get data
final_value = map_value(value=sensor_value) # map value (brightness in percentage)
#print(sensor_value)
print(final_value)
brightness.set_brightness(final_value) # set brightness

# close port properly so that others can use it
sender.close()

運(yùn)行它,同時(shí)確保 Arduino 也連接在計(jì)算機(jī)上。

怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

拓展知識(shí):

前沿拓展:

怎樣調(diào)節(jié)電腦屏幕亮度

如果筆記本的話FN+方向鍵上、下。


怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

智能手機(jī)普遍內(nèi)置的光線傳感器,在一些筆記本電腦上卻并沒(méi)有配備。當(dāng)你帶著這樣的筆記本電腦在某些環(huán)境下工作時(shí),如何讓筆記本隨著環(huán)境光線來(lái)自動(dòng)調(diào)節(jié)屏幕的亮度呢?

下面我們準(zhǔn)備用一個(gè) Arduino 外加兩枚光敏電阻來(lái)搞定這件事~

通過(guò)這個(gè)小項(xiàng)目你可以學(xué)到如何讓 Arduino 和電腦通過(guò)串口進(jìn)行通信,以及光敏電阻的使用方法。

組件清單

Arduino 開(kāi)發(fā)板(這里使用 Pro mini) × 1LDR 光敏電阻 × 210kr 電阻 × 1電路板 × 1排針座 × 2U** 線(兼容 Arduino 開(kāi)發(fā)板) × 1

怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

原理說(shuō)明

當(dāng)我們需要檢測(cè)環(huán)境光線的時(shí)候,使用光敏電阻是最簡(jiǎn)單的方案。就像智能手機(jī)的光線傳感器一樣,將 LDR 光敏電阻朝向人的正臉并獲取光線強(qiáng)度模擬信號(hào)。由 Arduino 的 ADC 引腳讀取這個(gè)數(shù)值,值域?yàn)?0 ~ 1024。

我們通過(guò)電腦上的 Python 程序,來(lái)接收由 Arduino 發(fā)送過(guò)來(lái)的光線數(shù)值,并將該數(shù)值與屏幕亮度的級(jí)別做一個(gè)映射,第二來(lái)調(diào)節(jié)屏幕的亮度。

搭建實(shí)驗(yàn)電路

為了驗(yàn)證這個(gè)想法,第一在面包板上搭建實(shí)驗(yàn)電路。原理圖如下。

怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

并編寫(xiě)一段簡(jiǎn)單的程序,通過(guò) Arduino 的串行監(jiān)視器輸出光線傳感器數(shù)據(jù)。

// define sensor pin
int sensor_pin = A3;

void setup() {
// set things here
Serial.begin(9600); // init serial communication at 9600 bps
}

void loop() {
// mainloop
int sensorValue = **ogRead(sensor_pin); // read the input on **og pin A3:
Serial.println(sensorValue); // send data over serial

delay(200); // a little delay to make things work better
}

完整的代碼在項(xiàng)目文件庫(kù)中可以下載:https://make.quwj.com/project/389

運(yùn)行之后可以看到在不同的光線強(qiáng)度下,輸出的數(shù)值在 0 ~ 950 這個(gè)區(qū)間。

設(shè)計(jì) PCB

使用 easyEDA 設(shè)計(jì)出 PCB。我選用了兩枚傳感器,這樣讓這個(gè)小設(shè)備如圖一直蝸牛,更加可愛(ài)。實(shí)際上左邊的 LDR 光敏電阻并未使用。

怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

第二就交給 PCB 板廠打樣吧。

焊接并完成組裝

這塊板很簡(jiǎn)單,沒(méi)有太多的組件。焊接好一組排針座和光敏電阻就好了。

怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

第二把 Arduino **排針座。

Arduino 編程

將 Arduino 用 U** 線連接到電腦,打開(kāi) Arduino IDE 將下面的代碼上傳到 Arduino 上。

/* Computer Hack!
Brightness Controller

(C) License: GPL3-General Public License

author: ashraf minhaj
*/

// define sensor pin
int sensor_pin = A3;

void setup() {
// set things here
Serial.begin(9600); // init serial communication at 9600 bps
}

void loop() {
// mainloop
int sensorValue = **ogRead(sensor_pin); // read the input on **og pin A3:
Serial.println(sensorValue); // send data over serial

delay(200); // a little delay to make things work better
}
安裝 Python 程序

通過(guò)上面的步驟,Arduino 已經(jīng)可以將光線數(shù)值通過(guò)串口傳給計(jì)算機(jī)了。下面要做的是編寫(xiě)一個(gè) Python 程序,在計(jì)算機(jī)上運(yùn)行,任務(wù)是接收發(fā)來(lái)的傳感器數(shù)值并依此調(diào)節(jié)屏幕亮度。

如果你的計(jì)算機(jī)上還沒(méi)裝過(guò) Python 環(huán)境,請(qǐng)?jiān)谶@里下載好 Python 并完成安裝:http://python.org/download

怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

打開(kāi)終端,安裝兩個(gè)庫(kù),分別用于串口和屏幕亮度控制方面的支持。

$ pip install pyserial
$ pip install screen-brightness-control

在項(xiàng)目文件庫(kù)中下載源碼:https://make.quwj.com/project/389

找到 controller.py,其程序如下:

""" Computer Hack!
Brightness Controller

(C) License: GPL3-General Public License

author: ashraf minhaj
"""

""" libraries –
$ pip install pyserial
$ pip install screen-brightness-control
"""

# import necessary libraries
import serial # for serial communication
import serial.tools.list_ports # to get Arduino port automatically
import screen_brightness_control as brightness # to control brightness

# device buadrate (bit per second)
# (change buadrate according to your need)
BUAD_RATE = 9600 # Pro Micro's buad rate is 9600
PORT = ""

# get sender device port automatically
serial_ports = list(serial.tools.list_ports.comports()) # get list of ports
for s_port in serial_ports: # iterate through all ports
if 'Arduino Micro' in s_port.description: # look for Pro Micro board
PORT = str(s_port[0]) # select first found board and
break # proceed

# connect with sender device
sender = serial.Serial(PORT, BUAD_RATE)

def map_value(value, in_min=0, in_max=1024, out_min=0, out_max=100):
""" To map values. Arduio sends values from 0 to 1024. My goal
is to make them in between 0 to 100."""
return int((value – in_min) * (out_max – out_min) / (in_max – in_min) + out_min)

# mainloop
while 1:
# convert byte data into string then integer
sensor_value = int(sender.readline().decode("utf-8")) # get data
final_value = map_value(value=sensor_value) # map value (brightness in percentage)
#print(sensor_value)
print(final_value)
brightness.set_brightness(final_value) # set brightness

# close port properly so that others can use it
sender.close()

運(yùn)行它,同時(shí)確保 Arduino 也連接在計(jì)算機(jī)上。

怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

拓展知識(shí):

前沿拓展:

怎樣調(diào)節(jié)電腦屏幕亮度

如果筆記本的話FN+方向鍵上、下。


怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

智能手機(jī)普遍內(nèi)置的光線傳感器,在一些筆記本電腦上卻并沒(méi)有配備。當(dāng)你帶著這樣的筆記本電腦在某些環(huán)境下工作時(shí),如何讓筆記本隨著環(huán)境光線來(lái)自動(dòng)調(diào)節(jié)屏幕的亮度呢?

下面我們準(zhǔn)備用一個(gè) Arduino 外加兩枚光敏電阻來(lái)搞定這件事~

通過(guò)這個(gè)小項(xiàng)目你可以學(xué)到如何讓 Arduino 和電腦通過(guò)串口進(jìn)行通信,以及光敏電阻的使用方法。

組件清單

Arduino 開(kāi)發(fā)板(這里使用 Pro mini) × 1LDR 光敏電阻 × 210kr 電阻 × 1電路板 × 1排針座 × 2U** 線(兼容 Arduino 開(kāi)發(fā)板) × 1

怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

原理說(shuō)明

當(dāng)我們需要檢測(cè)環(huán)境光線的時(shí)候,使用光敏電阻是最簡(jiǎn)單的方案。就像智能手機(jī)的光線傳感器一樣,將 LDR 光敏電阻朝向人的正臉并獲取光線強(qiáng)度模擬信號(hào)。由 Arduino 的 ADC 引腳讀取這個(gè)數(shù)值,值域?yàn)?0 ~ 1024。

我們通過(guò)電腦上的 Python 程序,來(lái)接收由 Arduino 發(fā)送過(guò)來(lái)的光線數(shù)值,并將該數(shù)值與屏幕亮度的級(jí)別做一個(gè)映射,第二來(lái)調(diào)節(jié)屏幕的亮度。

搭建實(shí)驗(yàn)電路

為了驗(yàn)證這個(gè)想法,第一在面包板上搭建實(shí)驗(yàn)電路。原理圖如下。

怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

并編寫(xiě)一段簡(jiǎn)單的程序,通過(guò) Arduino 的串行監(jiān)視器輸出光線傳感器數(shù)據(jù)。

// define sensor pin
int sensor_pin = A3;

void setup() {
// set things here
Serial.begin(9600); // init serial communication at 9600 bps
}

void loop() {
// mainloop
int sensorValue = **ogRead(sensor_pin); // read the input on **og pin A3:
Serial.println(sensorValue); // send data over serial

delay(200); // a little delay to make things work better
}

完整的代碼在項(xiàng)目文件庫(kù)中可以下載:https://make.quwj.com/project/389

運(yùn)行之后可以看到在不同的光線強(qiáng)度下,輸出的數(shù)值在 0 ~ 950 這個(gè)區(qū)間。

設(shè)計(jì) PCB

使用 easyEDA 設(shè)計(jì)出 PCB。我選用了兩枚傳感器,這樣讓這個(gè)小設(shè)備如圖一直蝸牛,更加可愛(ài)。實(shí)際上左邊的 LDR 光敏電阻并未使用。

怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

第二就交給 PCB 板廠打樣吧。

焊接并完成組裝

這塊板很簡(jiǎn)單,沒(méi)有太多的組件。焊接好一組排針座和光敏電阻就好了。

怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

第二把 Arduino **排針座。

Arduino 編程

將 Arduino 用 U** 線連接到電腦,打開(kāi) Arduino IDE 將下面的代碼上傳到 Arduino 上。

/* Computer Hack!
Brightness Controller

(C) License: GPL3-General Public License

author: ashraf minhaj
*/

// define sensor pin
int sensor_pin = A3;

void setup() {
// set things here
Serial.begin(9600); // init serial communication at 9600 bps
}

void loop() {
// mainloop
int sensorValue = **ogRead(sensor_pin); // read the input on **og pin A3:
Serial.println(sensorValue); // send data over serial

delay(200); // a little delay to make things work better
}
安裝 Python 程序

通過(guò)上面的步驟,Arduino 已經(jīng)可以將光線數(shù)值通過(guò)串口傳給計(jì)算機(jī)了。下面要做的是編寫(xiě)一個(gè) Python 程序,在計(jì)算機(jī)上運(yùn)行,任務(wù)是接收發(fā)來(lái)的傳感器數(shù)值并依此調(diào)節(jié)屏幕亮度。

如果你的計(jì)算機(jī)上還沒(méi)裝過(guò) Python 環(huán)境,請(qǐng)?jiān)谶@里下載好 Python 并完成安裝:http://python.org/download

怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

打開(kāi)終端,安裝兩個(gè)庫(kù),分別用于串口和屏幕亮度控制方面的支持。

$ pip install pyserial
$ pip install screen-brightness-control

在項(xiàng)目文件庫(kù)中下載源碼:https://make.quwj.com/project/389

找到 controller.py,其程序如下:

""" Computer Hack!
Brightness Controller

(C) License: GPL3-General Public License

author: ashraf minhaj
"""

""" libraries –
$ pip install pyserial
$ pip install screen-brightness-control
"""

# import necessary libraries
import serial # for serial communication
import serial.tools.list_ports # to get Arduino port automatically
import screen_brightness_control as brightness # to control brightness

# device buadrate (bit per second)
# (change buadrate according to your need)
BUAD_RATE = 9600 # Pro Micro's buad rate is 9600
PORT = ""

# get sender device port automatically
serial_ports = list(serial.tools.list_ports.comports()) # get list of ports
for s_port in serial_ports: # iterate through all ports
if 'Arduino Micro' in s_port.description: # look for Pro Micro board
PORT = str(s_port[0]) # select first found board and
break # proceed

# connect with sender device
sender = serial.Serial(PORT, BUAD_RATE)

def map_value(value, in_min=0, in_max=1024, out_min=0, out_max=100):
""" To map values. Arduio sends values from 0 to 1024. My goal
is to make them in between 0 to 100."""
return int((value – in_min) * (out_max – out_min) / (in_max – in_min) + out_min)

# mainloop
while 1:
# convert byte data into string then integer
sensor_value = int(sender.readline().decode("utf-8")) # get data
final_value = map_value(value=sensor_value) # map value (brightness in percentage)
#print(sensor_value)
print(final_value)
brightness.set_brightness(final_value) # set brightness

# close port properly so that others can use it
sender.close()

運(yùn)行它,同時(shí)確保 Arduino 也連接在計(jì)算機(jī)上。

怎樣調(diào)節(jié)電腦屏幕亮度(怎樣調(diào)節(jié)電腦顯示屏亮度)

拓展知識(shí):

原創(chuàng)文章,作者:九賢生活小編,如若轉(zhuǎn)載,請(qǐng)注明出處:http://xiesong.cn/17944.html

亚洲日韩中文在线精品第一 | 亚洲天码高清视频| 精品人妻系列无码人妻免费视频| 亚洲欧美综合久久久| 国产乱对白刺激视频| 日韩无码无线观看| 精品九九一区二区三区| 国产精品无码亚洲| 熟妇色综合四区| 中文字幕在线视频观看| 免费av动作片| 久久精品无码观看TV| 亚洲另类高清| 精品美女国产91| 色爱成人网| 91香蕉在线视频| 国产一区二区 17c| 伊人久久电影| 91国产精品| 国产肉体XXXX裸体高清| 激情啪啪啪五月丁香| 四虎影库毛片大全| 99精品在线视频| 一级免片免费观看| 午夜视频网| 青青色青青操| 久久性18| 高清不卡一区| 超碰免费| 久久久久久久99无码| 国产在线精品一区二区三区直播| 久久久久久久福利9| 欧美日本韩国一区二区| 亚洲黄片久久久久久| 国产片爱欲网站| 国产AV女人久久精品| 国产三级精选91| 久久精品日韩无码| 悠悠色婷婷| 偷拍电影91视频| 懂色 aV一二区|