0.png (56.68 KB, 下載次數(shù): 129)
下載附件
2016-10-18 15:01 上傳
32顆led燈搖搖棒制作的所有資料打包下載:
32燈搖搖棒全套資料.rar
(9.01 MB, 下載次數(shù): 576)
2016-10-18 15:11 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
32顆燈搖搖棒制作說明 32顆燈搖搖棒的制作,包括焊接說明,常見問題分析,讓你輕松DIY。 一.說明:8個IO驅(qū)動32顆高亮發(fā)光二極管,程序?qū)ι弦话姹居凶龈倪M,顯示效果更好,自適應(yīng)的更好。另外增加了上位機改字的功能,從而大大減少了改動源程序的麻煩。也使得改字很方便,上位機功能可支持輸入文字,大小任意,只要在32*64這個區(qū)域內(nèi)就行。支持畫圖,導入BMP格式圖片及保存圖片,一共可以配置8張圖片,每個圖片獨立,軟件自帶各種圖案,也可從Word里導出圖案,顯示圖案在范圍內(nèi)隨便定義大小。
原理圖:
0.png (71.16 KB, 下載次數(shù): 104)
下載附件
2016-10-18 15:02 上傳
1.001.jpg (42.8 KB, 下載次數(shù): 106)
下載附件
2016-10-18 15:08 上傳
二.元件清單:
1.002.jpg (31.35 KB, 下載次數(shù): 123)
下載附件
2016-10-18 15:08 上傳
三.原理圖:下圖不清楚,具體請看PDF文檔的原理圖
1.003.jpg (12.98 KB, 下載次數(shù): 86)
下載附件
2016-10-18 15:08 上傳
四.焊接說明以及注意事項: 1.LED燈是從原理圖可以看出,是正負正負接的。請看好PCB板子上的標號。 另外板上一共有8條跳線,利用LED剪下的管腳當跳線用。
1.005.jpg (16.55 KB, 下載次數(shù): 108)
下載附件
2016-10-18 15:08 上傳
2.滾珠開關(guān)焊接方向: 如下圖,搖搖棒豎直放,滾珠開關(guān)金色那頭靠左邊焊接,如果焊反顯示效果也是反的。
1.008.jpg (68.13 KB, 下載次數(shù): 101)
下載附件
2016-10-18 15:08 上傳
3.電池盒焊接: 電池盒采用3V7號電池盒,放置在握手的地方,使得搖晃起來很舒適。 兩個電池盒串聯(lián)的方式,多一個電池槽需短路,因為3個電池電壓已夠供單片機所需電源。另外需要用雙面膠把電池盒固定在板上。
1.013.jpg (72.8 KB, 下載次數(shù): 111)
下載附件
2016-10-18 15:08 上傳
4.下載口 從PCB板上的標號也可看出VCC P30 P31 GND 下載程序或者配置字幕數(shù)據(jù)時請正確連接。 常見問題分析: - 焊接完成后,上電池,由于電池盒都帶電源開關(guān),因此有兩個電源開關(guān)需要同時撥到開的位置。
- 搖晃時出現(xiàn)個別LED不亮,請檢查是否有斷線。
- 如果搖晃時,亮度不均勻,請更換該LED,由于此種接法的特殊,需要各個燈的特性要盡量相同。
- 程序下載不進去,檢查下載口的線是否正確連接,單片機下載需要冷啟動,意思是重新上電,單片機型號STC11F02E,選擇對型號,使用內(nèi)部晶振下載。
一般源程序不需要下載的,發(fā)貨前都已燒好程序。如果真需要燒寫,可按照步驟燒寫。這里特別聲明一下,由于有些初學者沒操作過下載,特別是USB轉(zhuǎn)串口的使用這里我覺得有必要提一下。見下圖:
32顆燈搖搖棒使用說明 手握著電池盒位置,手臂不需要擺動,只需要靠手腕的擺動來形成一個扇區(qū), 搖晃速度不需要很快,可以自己感覺一下,可以自適應(yīng)的很好,搖晃很小的范圍都能正常顯示。效果很贊!�。�! 上位機軟件說明請看:“64x32搖搖棒取模軟件幫助文檔” 下載波特率:2400 8-N-1 下載字幕數(shù)據(jù): 請正確連接4P下載線,如下圖:
1.004.jpg (21.67 KB, 下載次數(shù): 107)
下載附件
2016-10-18 15:08 上傳
下載時請這樣放置,讓搖搖棒豎著放,意在不讓滾珠開關(guān)導通,這樣會導致下載不了。上電后有些LED會亮,指示可以下載字幕數(shù)據(jù),如果不亮請重新上電。 軟件配置:生成方式配置
1.006.jpg (2.07 KB, 下載次數(shù): 112)
下載附件
2016-10-18 15:08 上傳
串口設(shè)置中:請務(wù)必選擇2400波特率,串口選擇對應(yīng)的串口號�;蛘邚脑O(shè)備管理器COM管理看對應(yīng)串口號。一般軟件會自動搜索,前提是先插了USB轉(zhuǎn)串口再打開軟件。
1.007.jpg (58.61 KB, 下載次數(shù): 111)
下載附件
2016-10-18 15:08 上傳
取模范例: 圖片不居中可以通過上下左右來移動,制定出滿意的圖片。
1.009.jpg (71.42 KB, 下載次數(shù): 109)
下載附件
2016-10-18 15:08 上傳
1.010.jpg (70.07 KB, 下載次數(shù): 119)
下載附件
2016-10-18 15:08 上傳
1.011.jpg (74.46 KB, 下載次數(shù): 107)
下載附件
2016-10-18 15:08 上傳
1.012.jpg (75.45 KB, 下載次數(shù): 124)
下載附件
2016-10-18 15:08 上傳
部分源程序預(yù)覽:
- #include
- #include
- //緩存
- #define uchar unsigned char
- #define uint unsigned int //宏定義
- #define KEY P3^0 //定義畫面切換按鍵
- uchar KY; //KY作用在后面說明
- uchar disp=0; //顯示漢字指針,該參數(shù)+1的話,顯示的字符多4個,同時要給要顯示的漢字取模加到漢字數(shù)組中。
- uchar pic=0,num=0; //pic為按鍵次數(shù);num為中斷次數(shù)
- uchar code xinjiaxin[]={
- 0x00,0x0E,0x11,0x21,0x42,0x84,0x42,0x21,0x11,0x0E,0x00,0x08,0x08,0x3E,0x08,0x08,
- 0x00,0x00,0x0E,0x1E,0x3C,0x78,0x3C,0x1E,0x0E,0x00,0x14,0x14,0x14,0x14,0x00,0x0E,
- 0x1F,0x3F,0x7E,0xFC,0x7E,0x3F,0x1F,0x0E,/*"xinjiaxin*/
- };
- unsigned char code miss[] = {
- 0x00,0x00,0x00,0x81,0xFF,0x81,0x00,0x00,0x00,0x00,0x04,0x7C,0x04,0x7C,0x04,0x7C,
- 0x00,0x7D,0x00,0x5C,0x54,0x54,0x74,0x00,0x5C,0x54,0x54,0x74,0x00,0x00,0x00,0x7F,
- 0x80,0x80,0x80,0x7F,0x00,0x00,0x00,0x00,/*I miss U*/
- };
- /*****函數(shù)聲明*****/
- void display2(void);
- void display5(void);
- /*****n(單位us微秒)延時子程序*****/
- void DelayUs(uint N)
- {
- uint x;
- for(x=0; x<=N;x++);
- }
- /*****主函數(shù)*****/
- void main(void)
- {
- IT0=1;
- EX0=1;
- EA=1; //開中斷,下降沿中斷
- KY=0;
- while(1) //主程序中只檢測按鍵
- {
- if(KEY==0) //圖案切換鍵按下
- {
- DelayUs(20000); //去除按鍵抖動
- if(KEY==0);
- {
- pic++;
- disp=0;
- num=0;
- } //endif
- } //endif
-
- } //endwhile
- } //endmain
- /*****中斷服務(wù)程序*****/
- void intersvr0(void) interrupt 0 using 1
- {
- KY=~KY; //每個搖動來回水銀開關(guān)會在擺幅兩端分別產(chǎn)生下降沿中斷,只提取其中一次(從左向右搖才顯示)
- if(KY==0)
- {
- if(pic>1)pic=0;//總共有6個圖案
- num++; //計算中斷次數(shù)
- switch(pic) //選擇顯示圖案
- {
-
- case 1:{display2();}break;
-
- case 2:{display5();}break;
- default:{display2();}
- }
- }
- }
- /*****顯示子程序3(漢字)*****/
- void display2(void)
- {
- uchar i;
- DelayUs(5000);
- for(i=0;i<40;i++)
- {
- P1=~miss[i*1];
-
- DelayUs(75);
- }
- }
- /*****顯示子程序6(漢字)*****/
- void display5(void)
- {
- uchar i;
- DelayUs(5000);
- for(i=0;i<40;i++)
- {
- P1=~xinjiaxin[i*1];
-
- DelayUs(65);
- }
- }
- /*****END*****/
復(fù)制代碼
|