电路连接 由于数码管品种多样,还有共阴共阳的,下面我们使用一个数码管段码生成器(在文章结尾) 去解决不同数码管的问题: 本例作者利用手头现有的一位不知品牌的共阳数码管:型号D5611 A/B,在Eagle 找了一个 类似的型号SA56-11,引脚功能一样可以直接代换。所以下面电路图使用SA56-11 做引脚说明。 注意: 1. 将数码管的a~g 段,分别接到Arduino 的D0~D6 上面。如果你手上的数码管未知的话,可以通过通电测量它哪个引脚对应哪个字段,然后找出a~g 即可。 2. 分清共阴还是共阳。共阴的话,接220Ω电阻到电源负极;共阳的话,接220Ω电阻到电源+5v。 3. 220Ω电阻视数码管实际工作亮度与手头现有原件而定,不一定需要准确。 4. 按下按钮即停。 源代码 由于我是按照段码生成器默认接法接的,所以不用修改段码生成器了,直接在段码生成器选择共阳极,再按“自动”生成数组就搞定。 下面是源代码,由于偷懒不用写循环,使用了部分AVR 语句。 PORTD 这个是AVR 的端口输出控制语句,8 位对应D7~D0,PORTD=00001001 就是D3 和D0 是高电平。 PORTD = a;就是找出相应的段码输出到D7~D0。 DDRD 这个是AVR 语句中控制引脚作为输出/输入的语句。DDRD = 0xFF;就是D0~D7 全部 作为输出脚了。 ARDUINO CODECOPY /* Arduino 单数码管骰子 Ansifa 2011-12-28 */ //定义段码表,表中十个元素由LED 段码生成器生成,选择了共阳极。 inta[10] = {0xC0, 0xF9, 0xA4, 0xB0, 0x99, 0x92, 0x82, 0xF8, 0x80, 0x90}; voidsetup() { DDRD = 0xFF; //AVR 定义PortD 的低七位全部用作输出使用。即0xFF=B11111111对 应D7~D0 pinMode(12, INPUT); //D12用来做骰子暂停的开关 } voidloop() { for(int i = 0; i < 10; i++) { //将段码输出PortD 的低7位,即Arduino 的引脚D0~D6,这样需要取出PORTD 最高位,即 D7的状态,与段码相加,之后再输出。 PORTD = a[i]; delay(50); //延时50ms while(digitalRead(12)) {} //如果D12引脚高电平,则在此死循环,暂停LED 跑 动 } }
上传时间: 2013-10-15
上传用户:baitouyu
數字電子技朮
标签:
上传时间: 2013-10-09
上传用户:1101055045
用七个led小灯模拟骰子
上传时间: 2013-11-16
上传用户:lty6899826
提出了一种改进的LSM-ALSM子空间模式识别方法,将LSM的旋转策略引入ALSM,使子空间之间互不关联的情况得到改善,提高了ALSM对相似样本的区分能力。讨论中以性能函数代替经验函数来确定拒识规则的参数,实现了识别率、误识率与拒识率之间的最佳平衡;通过对有限字符集的实验结果表明,LSM-ALSM算法有效地改善了分类器的识别率和可靠性。关 键 词 学习子空间; 性能函数; 散布矩阵; 最小描述长度在子空间模式识别方法中,一个线性子空间代表一个模式类别,该子空间由反映类别本质的一组特征矢量张成,分类器根据输入样本在各子空间上的投影长度将其归为相应的类别。典型的子空间算法有以下三种[1, 2]:CLAFIC(Class-feature Information Compression)算法以相关矩阵的部分特征向量来构造子空间,实现了特征信息的压缩,但对样本的利用为一次性,不能根据分类结果进行调整和学习,对样本信息的利用不充分;学习子空间方法(Leaning Subspace Method, LSM)通过旋转子空间来拉大样本所属类别与最近邻类别的距离,以此提高分类能力,但对样本的训练顺序敏感,同一样本训练的顺序不同对子空间构造的影响就不同;平均学习子空间算法(Averaged Learning Subspace Method, ALSM)是在迭代训练过程中,用错误分类的样本去调整散布矩阵,训练结果与样本输入顺序无关,所有样本平均参与训练,其不足之处是各模式的子空间之间相互独立。针对以上问题,本文提出一种改进的子空间模式识别方法。子空间模式识别的基本原理1.1 子空间的分类规则子空间模式识别方法的每一类别由一个子空间表示,子空间分类器的基本分类规则是按矢量在各子空间上的投影长度大小,将样本归类到最大长度所对应的类别,在类x()iω的子空间上投影长度的平方为()211,2,,()argmax()jMTkkjpg===Σx (1)式中 函数称为分类函数;为子空间基矢量。两类的分类情况如图1所示。
上传时间: 2013-12-25
上传用户:熊少锋
☻本单元主要介绍OTNM2000网管上使用WDM/OTN子网业务管理界面进行业务配置的方法以及注意事项。 ☻学完本单元后,您应该能: l了解OTN子网交叉的功能和使用方法 l了解配置业务和保护的方法和配置规则
上传时间: 2013-11-07
上传用户:shen_dafa
资料介绍说明: 1.本程序只在Windows XP 平台上经过完整测试,因此只能保证该程序在winXP系统下运行正确。 2.由于本程序使用了Access数据库,因此需要计算机安装有Microsoft Access。 3.将本程序下载到本地计算机后,需要建立与用户信息.mdb的ODBC链接。建立方法如下: 进入开始菜单 控制面板 管理工具 数据源(ODBC),建立一个新的"LVTest_UserB",数据库选择用户信息.mdb。点击ok完成设置。 4.运行虚拟电子称_陈锡辉.vi,输入用户名:admin,密码:123456 登陆系统。进入系统后可以更改密码或管理通用户等等。
上传时间: 2014-12-31
上传用户:yepeng139
我们知道,只要在VI 属性的窗口外观设置中选择“显示菜单栏”,那么VI 在运行过程中,一般会在前面板窗口中显示菜单栏。
上传时间: 2013-10-16
上传用户:lgnf
一个DOS下模拟Unix下的vi的程序
上传时间: 2013-12-21
上传用户:gengxiaochao
又一个DOS下模拟vi的程序
上传时间: 2015-01-03
上传用户:gonuiln
我以前写的过滤某窗口及其子窗口的WM_TIMER消息从而破解软件使用时间限制的例子
上传时间: 2014-11-29
上传用户:aeiouetla