今天的这个实验需要用上两位常驻嘉宾!

它们就是PCF8591和双色LED!


文章目录

  • 1.实验器材
  • 2.实验原理
    • 2.1基本原理
    • 2.2接线图
  • 3.实验效果
    • 3.1代码示例
    • 3.2实验效果
  • 结语

1.实验器材

  • 树莓派开发板
  • 40p软排线+T型转接板+面包板
  • 双色LED模块(元老级朋友)
  • PCF8591模数转换器模块(长老级朋友)
  • 电位计传感器
  • 一些跳线

上:电位计传感器;下:双色LED


2.实验原理

2.1基本原理

电位计是一种用于测量电路中电势(电压)的仪器。通过电流计将来自电阻式滑动导线的已知电压的一部分与未知电压进行比较。调节电位器的滑动触点或游标。然后将检流计短暂地连接在滑动触点和未知电压之间,观察检流计的挠度,并调节滑动分接头,直到检流计不再从零偏斜为止。

此时,检流计不再从未知源汲取电流,并且可以从滑动触点的位置计算出电压的幅值。

电位器,又称POT,是可变电阻器。他们可以通过简单地改变其头部顶部的旋钮来提供可变的电阻。可以基于两个主要参数对其进行分类。一个是电阻(R-ohms)本身,另一个是功率(P-Watts)额定值。

在本实验中,PCF8591用于读取电位计的模拟值并将值输出到双色LED。

将电位器的引脚SIG(电位器上的OUT管脚)连接到PCF8591的引脚AINO。将双色LED的引脚R或引脚G连接到PCF8591的引脚AOUT,以观察LED的变化。


2.2接线图

有了前两次接线的经验,这一次就只需要复刻就行了

树莓派 T型转接板 PCF8591
SDA SDA SDA
SCL SCL SCL
5V 5V VCC
GND GND GND
电位计 T型转接板 PCF8591
OUT * AIN 0
VCC 5v VCC
GND GND GND
双色LED T型转接板 PCF8591
R(中间) * AOUT
GND(-) GND GND
G(S) * *

实物图一如既往的乱,哈哈哈


3.实验效果

3.1代码示例

本次实验使用上了AOUT的接口,用于接收电位计的信号而改变双色LED亮度

//电位器模块实验
#include <stdio.h>
#include <wiringPi.h>
#include <pcf8591.h>#define makerobo_PCF  120 // 基础管脚120// 主函数
int main ()
{int pcf_value ;     // 定义一个变量存储AIN的输入值wiringPiSetup () ;   // 调用初始化函数// 在基本引脚120上设置pcf8591,地址0x48pcf8591Setup (makerobo_PCF, 0x48) ;while(1) // 无限循环{pcf_value = analogRead  (makerobo_PCF + 0) ;// 获取AIN0上的值,读取电位器模拟量值;printf("Potentiometer Value: %d\n", pcf_value); // 打印出该值    analogWrite (makerobo_PCF + 0, pcf_value) ;    // 控制AOUT输出电平控制LED灯delay (200) ;  // 延时200ms}return 0 ;
}

这里先用Read函数读取电位计的值,然后再用Write函数写入到PCF8591,它用AOUT输出到双色LED,来控制它的亮度


3.2实验效果

如果你看过实验12的博客的话,你应该还记得,PCF8591上也有一个电位计,他也能实现本次实验的效果。

但不同的是,本次实验使用的是单独的电位计模块,调节更加方便,不需要使用螺丝刀


运行程序,屏幕上会打印出电位计接收到的值,通过调节旋钮,值在0-255之间波动

效果如图,还是很明显的

结语

本篇博客到此结束,感谢你的阅读

【树莓派C语言开发】实验15:电位计传感器(关联PCF8951)相关推荐

  1. 【树莓派C语言开发】实验01:双色LED

    文章目录 前言 1.实验器材 2.实验原理 3.控制代码 3.1显示器的PWM调光和DC调光 3.2 编译代码 3.2.1直接使用Geany编译器内部选项 3.2.2 使用linux语言 4.如何在使 ...

  2. 【树莓派C语言开发】实验10:干簧管传感器

    文章目录 前言 1.实验器材 2.实验原理 2.1电路图 2.2接线图 3.代码示例 3.1编译代码 3.1.1 GCC中-Wall指令的作用 3.2实验效果 结语 前言 好像没啥可以说的,直接开始进 ...

  3. 【树莓派C语言开发】实验14:PS2游戏手柄模块(关联PCF8591)

    本次实验还是需要用到PCF8591模数转换器,莫非它要取代双色LED成为新的常驻嘉宾吗? 本次实验是摇杆实验.这个玩意可以用于操控机器人或者是树莓派的遥控小车.当然,生活中最常见的用途还是在游戏手柄上 ...

  4. 【树莓派C语言开发】实验02:RGB小灯

    文章目录 前言 1.实验器材 1.1树莓派运行库准备 2.元件接线 3.函数解释 3.1关于softPwmWrite的使用问题,大大的疑惑 4.代码样例 4.1初始化针脚 4.2颜色参数设置 4.3完 ...

  5. 【树莓派C语言开发】实验12:PCF8591模数转换器模块

    文章目录 前言 1.实验器材 2.实验原理 2.0 元件介绍 2.1 i2c总线 2.2 第一字节 2.3 控制字节 2.4 模块电路 2.5 电路接线 3.程序控制 3.1 在树莓派中开启I2C 3 ...

  6. 【树莓派C语言开发】实验03:七彩LED模块

    文章目录 前言 1.实验器材 2.实验接线 3.实验效果 结语 前言 学习太累,那就玩玩树莓派"陶冶情操"吧! 关注本专栏,和我一起学习树莓派开发板30+经典实验! C语言代码,0 ...

  7. 【树莓派C语言开发】实验07:倾斜开关模块

    文章目录 前言 1.实验器材 2.实验原理 2.1实验接线 2.2实物接线图 3.代码示例 3.1部分代码解释 去抖动操作 直接用`==`比较字符串 3.2 Linux编译运行代码 3.3运行效果 结 ...

  8. 【树莓派C语言开发】实验08:振动开关模块

    文章目录 前言 1.实验器材 2.实验原理 2.1电路图 2.2接线图 3.代码示例 3.1代码思路讲解 参数`clb_tmp`问题 3.2linux运行代码 结语 前言 今天折腾vim编辑器折腾了老 ...

  9. 【树莓派C语言开发】实验09:有源和无源蜂鸣器模块

    文章目录 前言 1.实验器材 2.实验原理 3.有源蜂鸣器模块 3.1代码示例 3.2编译代码 3.3实验效果 4.无源蜂鸣器 4.1代码示例 音符频率对照表 softTone软件音频库 4.2编译代 ...

最新文章

  1. linux 文件缓冲区,如何查看 Linux 当前缓存了哪些大文件?
  2. 互联网晚报 | 1月11日 星期二 | 恒大集团退租深圳总部大楼;荣耀发布首款折叠旗舰手机;虎牙拿下5年LPL独播权...
  3. 重磅!『2021科技研究前沿』发布,重点关注11大领域、171个热点和新兴前沿!...
  4. 2021年五月下旬推荐文章(2)
  5. 台达plc自由口通讯_【台达PLC详解】附PLC功能总简介~
  6. 小刘同学的CMOS模拟集成电路学习小记(不停更新)
  7. eeglab使用与错误解决
  8. 【听课笔记】入行电商产品经理
  9. appfuse mysql_Appfuse学习笔记(1)
  10. jmeter 接口请求出现安全验证解决方案
  11. PC屏幕颜色识别实现鼠标自动点击
  12. 如果你画了一个圆被挤扁了
  13. 使用 Kubernetes 和 Istio 进行基于容器的全面服务监控
  14. C#下汉字转换成拼音
  15. 配置小程序项目的第一个页面—小程序入门与实战(五)
  16. 使用MathType为公式自动编号
  17. Windows Installer无法启动或不见了的解决方法
  18. 国行诺基亚Lumia 1520价格或为4999元
  19. 网通、电信、教育网IP查询
  20. 【项目学习总结】GitHub : miloyip/json-tutorial(轻量级JSON)

热门文章

  1. textarea 手机端无法换行_在某一些手机的安卓浏览器上textarea标签的placeholder不自动换行的解决方法...
  2. arduino旋转编码器控制步进电机
  3. 第三章 标准单元库(下)
  4. [读书笔记]《一本书读懂财报》
  5. Window系统 cd命令
  6. 带你Java入门(Java系列1)
  7. 文件备份 服务器,服务器文件备份
  8. android 界面代码,一个漂亮的app界面代码
  9. 指纹识别 python实现_Python语言之指纹识别是目前最成熟的识别技术!Python能分分钟做出一个来!...
  10. 《2019全球货运代理TOP25、全球第三方物流Top50排行榜》