搖搖棒設計
㈠ 請問,搖搖棒的設計思路,和pic單片機的c程序。謝謝!
以下是詳細說明:
圖形顯示的原理:
利用人眼的視覺暫留效應,使手在擺動到不同位置的時候,讓位於一條直線上的顯示二維圖像的不同的列,實現圖形掃描顯示。
物理機制:
當我們在擺動手臂的時候,短時間內擺動位置和左右幅度不會有太大變化,利用我們手臂的這個運動規律,只要能得到棒從一側擺動到另一側的時間,然後把這個時間分成N份,然後在每一份的時間里顯示不同的花樣就能實現圖形的顯示。當我們在擺動手臂的時候,並不能預先得知此次擺動需要的時間,怎樣得到從一側擺動到另一側的時間呢?
再想想,短時間內我們手臂的擺動頻率也不會有特別大的變化,我們只要能得到前一次擺動所用的時間,然後用這個時間近似得到下一次擺動所需要的時間,然後分N份就可以了。得到一次擺動所需的時間的任務由光遮斷器完成,在棒上裝一個可以擺動的用來遮擋光遮斷器光線的細桿,粗細比光遮斷器的狹縫稍寬,我用的是整流橋焊後剪下的一段管腳。每左右擺動一次這個桿就會通過一次光遮斷器,使單片機產生一次中斷,兩次中斷之間的時間就是想要得到的時間,實現這個功能用掉2051的一個定時器T0和外部中斷INT0。然後用2051的另一個定時器T1,其定時時間是T0的N分之一,每次中斷依次顯示一列,就是照片上的效果。
再細想一下,手臂擺動的頻率大於2Hz的時候才大概能由視覺暫留看出圖形,再快也不過十幾Hz,由T0為16位定時器的最長計時時間得到2051的時鍾頻率1MHz最合適,還有遮擋用的細桿的粗細也可以大概估算,使其不會對計時精度產生太大影響。
所用元件:
AT89C20518元
高亮LED共8個3.6元
電池盒0.5元
單面萬用板8元可以裁成3塊,做3個搖棒
陶瓷諧振器1元
光遮斷器2元
電阻電容導線2元
外殼*0.7元可以裁成2塊
可選元件:
電源開關1元
總成本不超過20元
*外殼我用在家樂福買的半透明文件夾捲成的
此電路電路非常簡單,代碼短,但是用到了2051的外部中斷編程和T0、T1定時器編程,非常適合初學者練習。我製作這個玩具花費了兩個晚上的時間。此電路和程序還有擴展改進的空間,如在長時間不擺動的情況下可以使單片機進入省電模式,顯示不僅限於對稱圖片等,大家可以試試。
以下是源程序:
/*************************************************************************/
//---------------
//LED顯示搖棒
//---------------
//作者:nim於http://www.21icbbs.com2005-1-7
//
//email:[email protected]
//
//本設計版權歸作者所有,請勿擅自用於商業目的,轉載請註明作者及出處
/*************************************************************************/
#include<reg51.h>
#defineSEG17//每幀圖片分成17列來顯示
#defineINTERVAL20//每幅圖片在左右搖擺20次後換下一幅
typedefunsignedcharuchar;
typedefunsignedintuint;
codecharpattern[17][3]={//3幅圖片的字模
{0xff,0xff,0xff},
{0xff,0xff,0xff},
{0xff,0xff,0xff},
{0xff,0x9f,0xff},
{0xff,0x6f,0xf9},
{0xff,0x77,0x65},
{0xfe,0xbb,0x1e},
{0x7e,0xdd,0xfe},
{0x00,0xee,0xfe},
{0x7e,0xdd,0xfe},
{0xfe,0xbb,0x1e},
{0xff,0x77,0x65},
{0xff,0x6f,0xf9},
{0xff,0x9f,0xff},
{0xff,0xff,0xff},
{0xff,0xff,0xff},
{0xff,0xff,0xff},
};
ucharphase,th1,tl1,index,count;
main()
{
EA=0;
EX0=1;
ET1=1;
PX0=1;
IT0=1;
TMOD=0x11;
index=0;
EA=1;
while(1)
{
}
}
voidInt0_Handle(void)interrupt0using2
{
uintt0_time;
TR0=0;
TR1=0;
TF1=0;
t0_time=TH0<<8|TL0;
TL0=0;
TH0=0;
TR0=1;
t0_time=65535-t0_time/SEG;
th1=t0_time/256;
TH1=th1;
tl1=t0_time%256;
TL1=tl1;
if(count<3*INTERVAL){//3幅圖片循環
count++;
}
else{
count=0;
}
index=count/INTERVAL;
if(th1!=0xff||tl1!=0xff){//如果擺動特別慢,定時器溢出就不顯示
phase=0;
TR1=1;
}
else{
TR1=0;
}
}
voidTimer1(void)interrupt3using3
{
if(phase<SEG)//17段依次顯示
{
P1=pattern[phase][index];
phase++;
TH1=th1;
TL1=tl1;
}
}
㈡ 如何用stm32單片機製作一個搖搖棒,網上只找到了用51的教程,能具體說一下怎麼做嗎,或者要注意的
搖搖棒的顯示原理和點陣的顯示差不多,就只不過x軸的掃描是要在搖的時候產生震動才進行x軸掃描,而且掃描的速度要比點陣慢一些,具體掃描速度是多少根據你的具體情況測試得到
㈢ 高分求基於51單片機的搖搖棒的設計,設計一個16隻高亮度LED發光二極體的搖搖棒需要哪些原件
這個是我去年設計的從上位機提字型檔編碼下載到單片機全套方案,圖和單片機 ,.net程序都在里邊了,提供您參考。
原件通常就是最小系統,水銀開關,需要用的控制按鍵,顯示的LED通常是16個需要做電源的話,在考慮加電源。5V的就用4節1.5V電池7805穩壓到5V,3.3V的LE型號的單片機的話,就直接2節就好了。
希望對你有幫助。
㈣ 數碼搖搖棒的原理
數碼搖搖棒又叫搖搖棒、魔棒、閃光棒、閃字棒、閃圖棒、星光棒
"數碼搖搖棒"是基於人眼視覺暫留原理、運用最新專利電子技術研製而成的線陣LED運動成像的高科技產品。它可以通過在手中左右搖晃棒體,就可在其搖擺出的扇形軌跡面上顯示非常穩定的文字或圖像,並可以連接電腦編輯下載更新文字或圖案。
本產品廣泛適用於各種室內外的聚會,賽事,演唱會等多種場合。
輕輕晃動就可顯示多種不同的美麗畫面(可自行製作文字和圖案)如:新年好、生日快樂、萬事如意、大吉大利、一路順風、我愛你、學習進步、招財進寶、生意興隆、龍、牛、馬、鼠、蝴蝶……等文字或圖案變化無窮。奇妙有趣、令人叫絕!
在演唱會、文藝演出、及各種比賽場合,揮舞著的發光棒上可以顯示出各種你所需要的文字、符號、圖像等,能夠極大地活躍現場氣氛,調動觀眾激情。試想一下,當你手中的發光棒顯示出"某某某",或"我愛你"的字樣時,即使你無法與心中的偶像面對面交流,他也能感受到來自你的激情。
數碼搖搖棒"使用優質工程塑料,質量輕、無污染、高強抗沖擊。而且圖形可以多次更新,電源使用3節AAA(7號)電池,更方便、更通用、更環保!
"數碼搖搖棒"採用人體工程學流線設計,通體圓角過渡,在快速搖動中體貼保護您的手掌。產品並附帶手繩,防止搖動中意外脫手。
它由35厘米長PC管組成;內裝一個單片機晶元,可用紅、蘭、綠、白等超高亮LED燈作發光源,3節5號電池驅動。用手搖動;橫空會留下各種圖像或文字浮現在空中,按動開關可變換圖片,停止搖動30秒鍾後電源自動關閉,是目前市場上最新,價格最低,可遠距離觀看的一款新產品。
神奇數碼搖搖棒的誕生是閃光系列產品中的一大革命,它的好玩神奇之處在於初看是一支藍色熒光棒,當用手左右搖晃這根棒,就會在棒子劃過的軌跡上留下清析的圖案或文字。
該產品由32顆LED組成,可儲存4副圖片或文字,圖片解析度32X64,使用者可以隨意變換顯示的圖案。同時本公司還提供專用電腦COM口或者USB連線和圖案編輯傳送程序,讓用戶自己編輯圖案並傳送到數碼搖搖棒里。
該產品解決了目前市場上搖搖棒圖片無法變換、解析度低,顯示不清晰等弊病。是目前市場上最新,價格最低,可遠距離觀看的一款新產品。現有單色中文、英文、日文、韓文、圖片等字。該產品用處十分廣泛,可用於選舉活動、夜間標記、推銷、廣告、演唱會、體育場及節日,禮品、贈品等。
㈤ 51單片機。哪位大神有製作圖片搖搖棒的經驗能顯示照片的那種,不知道怎麼入手。用51單片機做。
不要加分只是想法,感覺還是玩玩搖字的靠譜些,想像一下即便是LCD12864又能顯示什麼像樣的圖片呢,那就已經需要這根搖棒上排列64棵LED了,在加上手搖動時的扇形畫面、拖影等等,真的不知道如何是好,也或許我孤陋寡聞沒見過。
㈥ 急!!用單片機STC89C52設計的搖搖棒可以不用復位電路嗎
STC 系列單片機,復位引腳可以直接接 GND (其內部含有復位電路)。
㈦ 我想製作搖搖棒,電路已經焊接完成,請問怎麼給單片機寫程序謝謝回答
下載復電路參考;http://hi..com/xiaohus/blog/item/5d57cd9b5ac8c3b0c8eaf439.html
其實制我覺得STC的單片機很好用,下載程序最方便,一個串口就可以了。關於STC單片機的下載教程網上很多,也可以去 STC官網下載晶元文檔和下載程序的軟體。
㈧ 手機藍牙控制搖搖棒設計有哪些功能
藍牙連接一個單片機做主機,由這個主機再控制其他單片機,用串口控制還是引腳直接控制看你的應用