找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 6369|回复: 11
打印 上一主题 下一主题
收起左侧

32灯摇摇棒DIY

  [复制链接]
跳转到指定楼层
楼主
本帖最后由 清风兑酒 于 2019-3-27 10:36 编辑

32颗灯摇摇棒(PCB+制作资料+元件清单+源程序+上位机)


一、说明:8IO驱动32颗高亮发光二极管,程序对上一版本有做改进,显示效果更好,自适应的更好。另外增加了上位机改字的功能,从而大大减少了改动源程序的麻烦。也使得改字很方便,上位机功能可支持输入文字,大小任意,只要在32*64这个区域内就行。支持画图,导入BMP格式图片及保存图片,一共可以配置8张图片,每个图片独立,软件自带各种图案,也可从Word里导出图案,显示图案在范围内随便定义大小。
二、所有资料截图

三、原理图


四、PCB截图


五、上位机软件说明请看:64x32摇摇棒取模软件帮助文档”
下载波特率:2400  8-N-1
下载字幕数据:
请正确连接4P下载线,如下图:
下载时请这样放置,让摇摇棒竖着放,意在不让滚珠开关导通,这样会导致下载不了。上电后有些LED会亮,指示可以下载字幕数据,如果不亮请重新上电。
软件配置:生成方式配置
串口设置中:请务必选择2400波特率,串口选择对应的串口号。或者从设备管理器COM管理看对应串口号。一般软件会自动搜索,前提是先插了USB转串口再打开软件。

六、程序
#include <NEW_8051.H>
#include <task.h>
                                   //缓存
#define uchar unsigned char

#define uint unsigned int    //宏定义

#define KEY P3^0   //定义画面切换按键

uchar KY;      //KY作用在后面说明     

uchar disp=0;     //显示汉字指针,该参数+1的话,显示的字符多4个,同时要给要显示的汉字取模加到汉字数组中。

uchar pic=0,num=0;     //pic为按键次数;num为中断次数







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*/


};








/*****函数声明*****/



void display2(void);





void display5(void);



/*****n(单位us微秒)延时子程序*****/

void DelayUs(uint N)

{

uint x;

for(x=0; x<=N;x++);

}

/*****主函数*****/

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

/*****中断服务程序*****/

void intersvr0(void) interrupt 0 using 1

{

KY=~KY;      //每个摇动来回水银开关会在摆幅两端分别产生下降沿中断,只提取其中一次(从左向右摇才显示)

if(KY==0)

{

if(pic>1)pic=0;//总共有6个图案

  num++;     //计算中断次数

  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*****/




32灯摇摇棒制作全套资料.rar

10.43 MB, 下载次数: 137, 下载积分: 黑币 -5

32灯摇摇棒PCB.rar

1.67 MB, 下载次数: 96, 下载积分: 黑币 -5

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏10 分享淘帖 顶2 踩
回复

使用道具 举报

沙发
ID:308088 发表于 2019-4-3 20:21 | 只看该作者
无法解压
回复

使用道具 举报

板凳
ID:449590 发表于 2019-4-7 10:09 | 只看该作者

能的啊
回复

使用道具 举报

地板
ID:399179 发表于 2019-4-7 20:52 来自手机 | 只看该作者
有没有空板卖?
回复

使用道具 举报

5#
ID:449590 发表于 2019-4-26 16:15 | 只看该作者

有PCB空板的
回复

使用道具 举报

6#
ID:514062 发表于 2019-4-26 21:49 | 只看该作者
学习学习
回复

使用道具 举报

7#
ID:98493 发表于 2019-9-24 11:50 来自手机 | 只看该作者
好东西  感谢分享
回复

使用道具 举报

8#
ID:655165 发表于 2019-12-6 13:43 | 只看该作者
资料完整,要好好学习
回复

使用道具 举报

9#
ID:673471 发表于 2020-4-8 11:22 | 只看该作者
按照这个做出来的根本显示不出,上位机也上传不了,检查了很多遍都没问题,(滚珠开关跟切换开关同时接P32,程序里面又是P30),搞不懂,不知道哪里出错了
回复

使用道具 举报

10#
ID:814885 发表于 2020-8-17 18:00 | 只看该作者
Dragon2483 发表于 2020-4-8 11:22
按照这个做出来的根本显示不出,上位机也上传不了,检查了很多遍都没问题,(滚珠开关跟切换开关同时接P32 ...

这就很尴尬了
回复

使用道具 举报

11#
ID:88256 发表于 2020-8-17 19:06 | 只看该作者
Dragon2483 发表于 2020-4-8 11:22
按照这个做出来的根本显示不出,上位机也上传不了,检查了很多遍都没问题,(滚珠开关跟切换开关同时接P32 ...

这是个锻炼的好机会啊,好好通读一般程序,理解控制流程,然后就是找错误,可以提高自己的水平。
回复

使用道具 举报

12#
ID:370639 发表于 2024-1-22 16:45 | 只看该作者
Dragon2483 发表于 2020-4-8 11:22
按照这个做出来的根本显示不出,上位机也上传不了,检查了很多遍都没问题,(滚珠开关跟切换开关同时接P32 ...

里面的程序和电路是没有任何关系的
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表