简单介绍
超声波自拍神器就是一个用来自拍的东西,下面是一个网页上的广告:
http://it007.com/thread-1699349-1-1.html
简单说就是,如果有一个自拍杆,然后想要自拍的时候,按下开关,然后发出一个超声波,手机接收到了之后就会拍照了——此外,我们还需要下载一个手机APP,叫做Airshooting。
参考资料
我是在某位大神的博客上看到有这么个东西的。
地址如下:
http://www.cirmall.com/circuit/1484/(ST大赛三等奖作品)超声波自拍神器#/details?2
方案介绍
首先手机先到网上下载一个APP(Airshooting),然后打开APP,利用STM32 NUCLEO-F072RB开发板的定时器产生一定频率PWM信号,用来控制蜂鸣器发出声音,当手机接收到蜂鸣器发出的声音后,会执行拍张操作,如果你的手机有前摄像头,还可以控制手机执行切换摄像头操作。
(1)拍照的PWM频率为:先发送250ms的频率为15870Hz的PWM信号(占空比没什么要求,50%左右即可);后发送250ms的频率为15617Hz的PWM信号。这个频率精确度越高,控制的距离就越远。
(2)切换的PWM频率为:先发送250ms的频率为16526Hz的PWM信号(占空比没什么要求,50%左右即可);后发送250ms的频率为15620Hz的PWM信号。
实物图
我也是拿面包板搭建的电路,用的是正点原子的STM32F4开发板。
因为我用的是开发板,所以很多代码都是现成的,自己需要改的部分很少。用的是TIM14_CH1通过PF9端口输出PWM信号。蜂鸣器串联了一个1K电阻,然后一端连着PF9引脚,另一端接地。电路非常简单。
主要的代码片段
PWM的频率和占空比公式
频率:
//Fpwm = 时钟频率 / ((arr+1)*(psc+1))(单位:Hz)
占空比:
//duty circle = TIMxx->CCR1 / arr(单位:%)
int main(void)
{
Stm32_Clock_Init(3