创客成长之路 -- 先定一个小目标做他个小项目【上篇】
本帖最后由 HuaShine2015 于 2017-4-21 10:18 编辑四月已到,炎炎夏日也不远了。作为一个伪Maker无时不刻不脑洞开开,突发奇想做了便携式紫外线指数检测小玩具。
完整项目资料可在我的github代码仓库获得github仓库传送门
产品完成后:
使用演示:
共开发了三种版本的固件,演示一下usbkey自动打印模式
推荐使用此模式,兼容Android和iOS系统,免权限需求,无需安装任何APP软件
固件更新演示:
Linux:右键选择执行工具包内uvd_firmware_upload_for_linux.sh或命令行sudo ./uvd_firmware_upload_for_linux.sh
Windows:双击执行工具包内uvd_firmware_upload_for_win.hta文件
简述一下项目开发过程。
项目背景:
全球气候变暖,臭氧层日渐稀薄。在炎热的夏季UVB波长紫外线杀伤力越来越强。白内障和皮肤病发病率变日益增多
项目目标:
开发一款微型,便携,低功耗电子装置,在夏天快速实时检测紫外线指数,获得是否需要加强防晒和佩戴墨镜的信息
------------------------------------------------------------------------------------------------
项目需求:
可检测UVB波长紫外线
检测指示简单明确
微型化低成本低功耗
手机或其他电子装置USB直接供电
可脱机工作,可无需安装APP工作
兼容Win/Linux/MACOS/Android/IOS
可以通过USB HID虚拟多种设备接口类型,方便上位机APP开发
需求扩展:
可方便使用USB口直接下载多种固件,供用户二次多用途创意开发
------------------------------------------------------------------------------------------------
项目硬件选型:
MCU使用8bit Attiny85,微功耗,免外围器件,自带AD转换IO,8K flash足够开发整个业务流程
紫外线检测器件选用模拟类型器件GUVA-S12SD,搭配单运放器件SGM8521放大输出
采用micro USB公头直插手机USB口供电和数据传输,免带数据线
项目软件选型:
MCU使用bootloader实现USB线直接更新固件功能(micronucleus_V2.03,可剩余6255bytes给应用代码编程)
USB驱动库使用AVR原厂V-USB库的二次封装库digistump库
------------------------------------------------------------------------------------------------
项目硬件实现:
线路图
PCB Layout
项目软件实现:
共开发了四种固件(usbkey自动打印模式,USBHID直接通信模式,CDC虚拟串口通信模式,核心模式)
另外开发了PC端固件更新工具包,供给使用者方便的刷新不同版本固件和后续二次开发
可在Windows/Liunx/MACOS三种系统下使用,工具内整合了驱动安装功能
应用固件源码下载传送门
固件更新工具包下载传送门
PCB gerber下载传送门
未完待续。。。 看到小目标。。。。。。 挺有创意的,为何选择Attiny85? 给楼主点个赞 mikeliujia 发表于 2017-4-16 20:01
挺有创意的,为何选择Attiny85?
ATTINY13 2K flash装完bootloader就不够折腾了。用其他AVR又太浪费资源。
本帖最后由 maxims 于 2017-4-18 11:40 编辑
HuaShine2015 发表于 2017-4-17 12:31
ATTINY13 2K flash装完bootloader就不够折腾了。用其他AVR又太浪费资源。
同意~
不过,85的io折腾太蛋疼……
不过,我想知道,苹果手机也支持这个? maxims 发表于 2017-4-18 11:37
同意~
不过,85的io折腾太蛋疼……
MAC OS是支持的,底层都是基于libusb,iOS理论上应该也支持。
刚借朋友iPhone6测试了一下MicroUSB转lighting口,不供电
可能是这种转接头线路没有boost升4.2v-5v的输出 HuaShine2015 发表于 2017-4-19 15:52
MAC OS是支持的,底层都是基于libusb,iOS理论上应该也支持。
刚借朋友iPhone6测试了一下MicroUSB转ligh ...
我最近在研究usb-hid。
我在想,一颗usb-ttl芯片比attiny85贵吧。
想用一颗85跑usb-hid,模拟串口传输数据…… 做一个蓝牙客户端。
然后做一个通用蓝牙模块,带电池的,要做小点。
把需要的功能模块放到蓝牙模块里,然后和手机通信取得数据. maxims 发表于 2017-4-21 23:09
我最近在研究usb-hid。
我在想,一颗usb-ttl芯片比attiny85贵吧。
想用一颗85跑usb-hid,模拟串口传输 ...
可以做,但是需要你自己开发Android端应用驱动
考虑成本也可以用USB/HT42B534单芯片方案,SOP-8封装无需外围器件,每片1.8元 rockze 发表于 2017-4-24 13:25
做一个蓝牙客户端。
然后做一个通用蓝牙模块,带电池的,要做小点。
BLE SOC想法不错,挑战也不小。
推荐你三种方案TI CC2540,Dialog DA14681,Nordic nRF51822
DA公司要被苹果公司抛弃了,估计芯片价格会降下来,呵呵你懂的
另外也可以用创客神器ESP32 很有创意,不错的小玩意儿~ HuaShine2015 发表于 2017-4-24 14:36
可以做,但是需要你自己开发Android端应用驱动
考虑成本也可以用USB/HT42B534单芯片方案,SOP-8封装无需 ...
我是for pc端的。
HT这个芯片看了一下Datasheet,感觉相当的棒啊!!!
另外,我咨询一个问题。
我想用Attiny85解码IR接收,然后模拟驱动WS2812B的方式(归零码传输数据),然后给另外一个单片机通讯,可行性高么? 作为新手我看看就好 maxims 发表于 2017-5-2 13:56
我是for pc端的。
HT这个芯片看了一下Datasheet,感觉相当的棒啊!!!
可以,Adafruit_NeoPixel.h和IRLib.h两个库导入后占Flash 2.2K左右,剩下的做够你业务流程代码
页:
[1]
2