844|1

19

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

【得捷电子Follow me第1期】 pc状态显示和音量控制器 [复制链接]

 

内容一:

6月26日(2)

 

内容二:总结报告

1.项目描述

      follow me第1期使用的是pico w 开发板,使用该板可以方便的使用python进行功能开发.板载wifi模块,给python赋予了便捷联网的能力.

      pc的状态显示和音量控制通过需要两部操作,在听歌,或者看视频时调节间量需要调出控制面板,使用不便.

      本次follow me我的自选硬件是一个电位器,使用它可以方便得传入一个连续变化的设置值.使用该功能可以将电位器值与pc的音量值对应起来,实现通过旋钮控制pc音量的功能,同时使用板子自带的显示屏幕还可以显示当前cpu占用率,cpu温度等信息
2. 各功能对应的主要代码片段及说明

      pc端

      PC端设置一个server,监听1004端口,当收到来自以太网的消息时,调用applescript控制系统音量,使用python的socket 模块实现网络监听功能.创建socket对象s,绑定IP地址和端口,IP地址设置为0.0.0.0,端口设置为1004.然后开启监听,当收到消息后,创建一个子线程,处理收到的数据, 解析了音量数据后调用applescript的python模块,设置系统音量.

    

      pico端:

      获取电位器位置,电位器接在A0口上,使用mircropython的machine库中的ADC可以读取电位器数值.实测读到的电位器数值 从100到65536.由于音量值范围为(0~100),需要对数据进行重映射,考虑电位器与真实间量的方向相反,所以 使用100 减去重映射的值,得到音量值.

     发送电位器数据,同样使用socket 库,创建一个socket,连接PC的ip,这里IP地址是192.168.1.3

    发送0~100的音量大小数据,使用str()将大小值转换为字符串,使用sendall方法发送,每次发送完成后关闭连接

      实际使用中发现如果pico以过高的频率发送数据,会报内存不够的错误,怀疑是旧连接的内存资源未释放导致,所以设计了一个超时机制,即每次发送完数据都会等待0.5s,同时会对当前的设置进行判断,如果与上次的值 没有变化测不需要 发送,具体逻辑如下:

   

 
3. 功能展示及说明

旋转电位器后,在mu端可以看到音量设置值的变化

    音量数据通过以太网发送到PC端,可以看到PC上server收到设置数据 后打印出的收到的数据:

  PC端的音量跟随电位器旋钮的值发生了变化

 
4. 对本活动的心得体会

    follow me活动立意不错,有人引导,同时还有专门的讲解,相对于一般的竞赛或者开发板测评活动,参与性更高一些,同时,参与人员有一定的自由度,几乎是在游戏中体会到学习的乐趣,祝愿followme活动一直能办下去,越办越好.

   建议:对于活动的参与要求与提交要求感觉有两自两个不同方向的想法,并未完全做到统一,未来的follow me活动中希望能一以贯之,活动是如何计划的确认了就不再改变.

5.代码

ssd.py (6.67 KB, 下载次数: 1)

ntptime.py (1.41 KB, 下载次数: 0)

ntp.py (1.33 KB, 下载次数: 0)

led.py (149 Bytes, 下载次数: 0)

blink.py (26 Bytes, 下载次数: 0)

beep.py (523 Bytes, 下载次数: 0)

changeV.py (855 Bytes, 下载次数: 0)

vul测试.py (276 Bytes, 下载次数: 1)

音量调节.py (538 Bytes, 下载次数: 1)
6.其它帖子

https://bbs.eeworld.com.cn/thread-1245388-1-1.html 

https://bbs.eeworld.com.cn/thread-1245396-1-1.html

https://bbs.eeworld.com.cn/thread-1245414-1-1.html

最新回复

控制PC端,是一个好创意,如果能控制家居电器,那不爽歪歪。   详情 回复 发表于 2023-7-2 08:29
点赞 关注
 
 

回复
举报

6841

帖子

11

TA的资源

版主

沙发
 

控制PC端,是一个好创意,如果能控制家居电器,那不爽歪歪。

 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表