EasyManuals Logo

Freenove Ultimate Starter Kit User Manual

Freenove Ultimate Starter Kit
286 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Page #125 background imageLoading...
Page #125 background image
125
Chapter 10 Photoresistor & LED
www.freenove.com
support@freenove.com
Code
The code of this project is identical with the one in last chapter logically.
C Code 10.1.1 Nightlamp
First observe the project result, and then analyze the code.
1. Use cd command to enter 010.1.1_Nightlamp directory of C code.
cd ~/Freenove_Ultimate_Starter_Kit_for_Raspberry_Pi/Code/C_Code/10.1.1_Nightlamp
2. Use following command to compile “Nightlamp.cand generate executable file “Nightlamp”.
gcc Nightlamp.c -o Nightlamp -lwiringPi -lpthread
3. Then run the generated file Nightlamp.
sudo ./Nightlamp
After the program is executed, when you cover the photosensitive resistance or make a flashlight toward the
photoresistor, the brightness of LED will be enhanced or weakened. And the terminal window will print out
the current input voltage value of PCF8591 AIN0 pin and the converted digital quantity.
The following is the program code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include <wiringPi.h>
#include <pcf8591.h>
#include <stdio.h>
#include <softPwm.h>
#define address 0x48 //pcf8591 default address
#define pinbase 64 //any number above 64
#define A0 pinbase + 0
#define A1 pinbase + 1
#define A2 pinbase + 2
#define A3 pinbase + 3
#define ledPin 0
int main(void){
int value;
float voltage;
if(wiringPiSetup() == -1){ //when initialize wiring failed,print message to screen
printf("setup wiringPi failed !");
return 1;
}
softPwmCreate(ledPin,0,100);
pcf8591Setup(pinbase,address);
while(1){
value = analogRead(A0); //read A0 pin
softPwmWrite(ledPin,value*100/255);
voltage = (float)value / 255.0 * 3.3; // calculate voltage
printf("ADC value : %d ,\tVoltage : %.2fV\n",value,voltage);

Table of Contents

Questions and Answers:

Question and Answer IconNeed help?

Do you have a question about the Freenove Ultimate Starter Kit and is the answer not in the manual?

Freenove Ultimate Starter Kit Specifications

General IconGeneral
BrandFreenove
ModelUltimate Starter Kit
CategorySingle board computers
LanguageEnglish