無意間在淘寶看到了一個超聲波懸浮的套件,覺得很好玩,就自己畫了一個。
? ? ? ?小科普:超聲波懸浮是高強條件下的一種非線性效應,其基本原理是利用聲駐波與物體的相互作用產生豎直方向的懸浮力已克服物體的重量,同時產生水平方向的定位力將物體固定于聲波節處。
制作原理和原理圖
直流12v供電,利用STC15W104單片機,用兩個引腳通過定時器輸出40Khz方波,加一個驅動芯片驅動超聲波探頭,初始狀態設置為一高一低,再定時翻轉即可。
立創EDA?畫圖加打樣
原理圖:
驅動板,底板如下
? ? ? ? ?
每月兩次,剛好夠用,立創YYDS!
?
芯片型號如下:
STC15W104單片機? ? ? ? ? ? ? ? ? ? ? TC427驅動芯片? ? ? ? ? ? ? ? ? ? 1117 5V電源芯片? ? ? ? ? ? ? ? ?超聲波探頭
?
M2銅柱,買了三種,方便適配調整間距,其他就是DC005電源座,220uF電解電容、0603 的1K電阻,0603的104電容。
?
?
?
#include <REGX52.H>
#define u16 unsigned int
#define u8 unsigned char ? ?
sbit INA=P3^2; ?//超聲波發射
sbit INB=P3^3; ?//超聲波發射
sbit LED=P3^4; ?//LED
#define FOSC 24000000
//#define T1MS (65536-FOSC/1000000) ?//1us初值
#define T1MS 65236 ?//12.5us周期
sfr AUXR=0x8e;
void delay(u16 a)
{
u16 i,j;
? ? for(i=0;i<a;i++)
? ? for(j=0;j<2000;j++);
}
?
void Time0_Init()
{
?AUXR|=0x80;
? ? TMOD=0x00;
? ? TL0=T1MS;
? ? TH0=T1MS>>8;
? ? ET0=1;
? ? EA=1;
? ? TR0=1;
} ? ?
?
void main()
{
? ? Time0_Init();
? ? INA=1;
? ? INB=0;
? ? LED=1;
? ?while(1)
?{
// ? ? ? ? LED=0; ? ? ? ? ?//測試用的指示燈,不加都可以
// ? ?delay(1000);
// ? ? ? ? LED=1;
// ? ?delay(1000);
?}
}
void zd() interrupt 1
{
? TL0=T1MS;
? ? TH0=T1MS>>8;
? ??
? ? INA=!INA;
? ? INB=!INB;
}
?
主要就一個定時器,主程序都是空的。
?
?
暫時就這么多了,第一次給大家分享,希望可以幫助到有需要的人,感興趣的小伙伴來B站找我呀,謝謝支持。
?
?
!注意:請使用瀏覽器自帶下載,迅雷等下載軟件可能無法下載到有效資源。
歡迎加入EEWorld參考設計群,也許能碰到搞同一個設計的小伙伴,群聊設計經驗和難點。 入群方式:微信搜索“helloeeworld”或者掃描二維碼,備注:參考設計,即可被拉入群。 另外,如您在下載此設計遇到問題,也可以微信添加“helloeeworld”及時溝通。
EEWorld Datasheet 技術支持