电路连接 由于数码管品种多样,还有共阴共阳的,下面我们使用一个数码管段码生成器(在文章结尾) 去解决不同数码管的问题: 本例作者利用手头现有的一位不知品牌的共阳数码管:型号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
我是做电脑主板设计的,有需要的朋友可以参考一下
上传时间: 2014-12-24
上传用户:zhang_yi
简易负离子发生器负离子增加,对人有催眠、止汗、镇痛、增进食欲,使人精神爽快,消除疲劳的作用。图1是负离子发生器电路图。220V交流市电经D1整流后向C3和C2充电,当C2充电至氖泡导通并触发SCR导通时,C3经SCR、B的L1放电,经B感应升压后,由D2反向整流得8kV直流高压使发生器M的分子电离而产生负离子。调整R3的阻值可以改变触发频率和输出电压。调整时必须注意安全,更换元件需拨下电源插头
标签: 负离子发生器
上传时间: 2013-10-29
上传用户:731140412
前言: 电源作为消费性产品,漂亮的外包装固然需要,但电源的核心作用在于提供稳定纯净的电力,内在的质量才是更应该关注的焦点。劣质电源不仅直接影响了电脑的正常的使用,对主板、显卡等其它配件造成损害,而且这种电源所产生的电磁辐射,对人身健康也构成了潜在的威胁。
标签: 电脑开关电源
上传时间: 2013-10-28
上传用户:jixingjie
前言 随着单片机应用的越来越广泛,MCS-51单片机(如C51/52/55)以其优越的性能/价格比一直长盛不衰。随着社会分工越来越细,许多产业都得利于其模块化设计,这有利于大家把工作做好做专,我们特设计了JMDM-MB01单片机主板和一系列的功能板。选好相应的硬件,可以构成相应的系统,对于客户特定的应用,也可以开发相应的功能板;我们的设计意图是,像电脑一样,主板就像电脑主板一样,而一系列功能板就像PCI或ISA总线的控制板,我们提供的驱动程序就像是PCI或ISA总线的控制板的驱动程序,这样,就可以把辛苦的,非标的单片机设计简化成标准件的组态,该系统适用于科研、开发教学实验初期的设计之用。同时也适用于工控,智能仪表等符合要求的应用场合,具有极高的性能/价格比。本系统的所有接口原理、一般接口资料均能找到,并提供Windows下组态测试软件一套。
上传时间: 2014-12-27
上传用户:fandeshun
用51单片机设计的时钟电路毕业论文第一章电路原理分析1-1 显示原理1-2 数码管结构及代码显示1-3 键盘及读数原理1-4 连击功能的实现第 二 章 程序设计思想和相关指令介绍2-1 数据与代码转换2-2 计时功能的实现与中断服务程序2-3 时间控制功能与比较指令2-4 时钟误差的分析附录A 电路图附录B 存储单元地址表附录C 输入输出口功能分配表附录D 定时中断程序流程图附录F 调时功能流程图附录G 程序清单
上传时间: 2013-10-29
上传用户:hoperingcong
这里介绍的一款多功能编程器,功能强大,支持大多数常用的EPROM, EEPROM, FLASH, I2C,PIC, MCS-51,AVR, 93Cxx等系列芯片(超过400种)。硬件成本较低,性价比很高。既适合于电子和电脑爱好者使用,也适合家电维修人员维修家电和单片机开发人员使用。图1为多功能编程器的主机,中间是32脚ZIF(零插力)锁紧插座, 用于27系列、28系列、29系列、39/49系列等BIOS芯片。左边是25芯并口插座,通过并口电缆连接计算机并口。左下方是电源插座。32脚ZIF插座下方是12位的DIP开关,对EPROM芯片进行读写等操作前,需将此开关拨至相应位置。具体开关位置可以参照软件提示。锁紧插座右侧依次排列3个DIP8插座和一个DIP18插座,分别用于25系列、24系列、93系列存储器和PIC系列单片机等;绿色电源指示灯(Power)用于指示编程器电源状态;红色指示灯(Vpp)用于指示芯片Vpp电源状态;黄色指示灯(Vcc)用于指示芯片编程状态。 一、 主要功能: ★ 可用此编程器升级、维修电脑主板,显卡等BIOS芯片。可支持3.3V低电压BIOS芯片。 ★ 用来写网卡启动芯片:用于组建无盘站写网卡启动芯片或制作硬盘还原卡等。 ★ 可用于复印机、传真机、打印机主板维护和维修。★ 可用于读写用来写汽车仪表、安全气囊、里程表数据。★ 可用于维修显示器、彩电、VCD、DVD 上面的存储芯片。可修改开机画面。 ★ 用来开发单片机: 通过添加不同适配器,可以支持 MCS-51 系列, AVR 系列和 PIC 系列的MCU。 ★ 用来写大容量存储芯片:大容量的存储芯片,一般在卫星接收机上使用较多,可以用编程器直接来升级或改写。 二、电路简介图2是这台编程器的完整电路图,可以看到编程器电路由完全分离的两部分组成:串行部分和并行EPROM部分电路。限于篇幅,原理部分不再详述。对原理感兴趣的读者可以参考本文配套文件包中的“电路原理参考.PDF”文件。图2三、电路板设计与制作 图3是编程器参考元件布局图,双面PCB尺寸为160X100毫米,厚度1.6毫米。具体的PCB设计可以参考配套文件中的“PCB参考设计.PDF”。这个文件中包括电路板的顶层和低层布线和顶层丝印层。如果业余自制电路板,建议使用双面感光电路板制作,以确保精度。
标签: 多功能编程器
上传时间: 2013-10-14
上传用户:问题问题
微型计算机课程设计论文—通用微机发声程序的汇编设计 本文讲述了在微型计算机中利用可编程时间间隔定时器的通用发声程序设计,重点讲述了程序的发声原理,节拍的产生,按节拍改变的动画程序原理,并以设计一个简单的乐曲评分程序为引子,分析程序设计的细节。关键字:微机 8253 通用发声程序 动画技术 直接写屏 1. 可编程时间间隔定时器8253在通用个人计算机中,有一个可编程时间间隔定时器8253,它能够根据程序提供的计数值和工作方式,产生各种形状和各种频率的计数/定时脉冲,提供给系统各个部件使用。本设计是利用计算机控制发声的原理,编写演奏乐曲的程序。 在8253/54定时器内部有3个独立工作的计数器:计数器0,计数器1和计数器2,每个计数器都分配有一个断口地址,分别为40H,41H和42H.8253/54内部还有一个公用的控制寄存器,端地址为43H.端口地址输入到8253/54的CS,AL,A0端,分别对3个计数器和控制器寻址. 对8353/54编程时,先要设定控制字,以选择计数器,确定工作方式和计数值的格式.每计数器由三个引脚与外部联系,见教材第320页图9-1.CLK为时钟输入端,GATE为门控信号输入端,OUT为计数/定时信号输入端.每个计数器中包含一个16位计数寄存器,这个计数器时以倒计数的方式计数的,也就是说,从计数初值逐次减1,直到减为0为止. 8253/54的三个计数器是分别编程的,在对任一个计数器编程时,必须首先讲控制字节写入控制寄存器.控制字的作用是告诉8253/54选择哪个计数器工作,要求输出什么样的脉冲波形.另外,对8253/54的初始化工作还包括,向选定的计数器输入一个计数初值,因为这个计数值可以是8为的,也可以是16为的,而8253/5的数据总线是8位的,所以要用两条输出指令来写入初值.下面给出8253/54初始化程序段的一个例子,将计数器2设定为方式3,(关于计数器的工作方式参阅教材第325—330页)计数初值为65536. MOV AL,10110110B ;选择计数器2,按方式3工作,计数值是二进制格式 OUT 43H,AL ; j将控制字送入控制寄存器 MOV AL,0 ;计数初值为0 OUT 42H,AL ;将计数初值的低字节送入计数器2 OUT 42H,AL ;将计数初值的高字节送入计数器2 在IBM PC中8253/54的三个时钟端CLK0,CLK1和CLK2的输入频率都是1.1931817MHZ. PC机上的大多数I/O都是由主板上的8255(或8255A)可编程序外围接口芯片(PPI)管理的.关于8255A的结构和工作原理及应用举例参阅教材第340—373页.教材第364页的”PC/XT机中的扬声器接口电路”一节介绍了扬声器的驱动原理,并给出了通用发声程序.本设计正是基于这个原理,通过编程,控制加到扬声器上的信号的频率,奏出乐曲的.2.发声程序的设计下面是能产生频率为f的通用发声程序:MOV AL, 10110110B ;8253控制字:通道2,先写低字节,后写高字节 ;方式3,二进制计数OUT 43H, AL ;写入控制字MOV DX, 0012H ;被除数高位MOV AX, 35DEH ;被除数低位 DIV ID ;求计数初值n,结果在AX中OUT 42H, AL ;送出低8位MOV AL, AHOUT 42H,AL ;送出高8位IN AL, 61H ;读入8255A端口B的内容MOV AH, AL ;保护B口的原状态OR AL, 03H ;使B口后两位置1,其余位保留OUT 61H,AL ;接通扬声器,使它发声
上传时间: 2013-10-17
上传用户:sunjet
ICCAVR软件中文使用说明书:一ImageCraft 的ICC AVR 编译器安装1 运行光盘上的SETUP.EXE 程序进行安装方法一a 打开我的电脑b 打开光盘驱动器所对应的盘符c 双击光盘中文件SETUP.EXE 的图标d 按照屏幕提示选定一个安装路径后进行安装方法二a 在开始菜单中选择运行项目b 在运行对话框中填入drive:\setup.exe注意drive 对应你的机器中的光盘驱动器盘符c 按确定键开始安装d 其余同方法一注意按上述方法进行安装后得到的是一个只可以使用30 天的未注册版对正式版用户还要进行第二步的注册才可得到一个无时间限制的正式版ICC AVR 正式版分标准版和专业版在标准版中有一些功能限制如代码的压缩工程和文件的配置检查在标准版中不可以使用
上传时间: 2013-10-23
上传用户:hwl453472107
ICCAVR教程,ICCAVR软件中文件使用说明书,双龙公司翻译整理。建议大家认真学习一下这个资料,内容不是很长,看了之后会对ICCAVR有更深的了解。 ImageCraft ICCAVR 的中文使用说明翻译 詹卫前一ImageCraft 的ICC AVR 编译器安装1 运行光盘上的SETUP.EXE 程序进行安装方法一a 打开我的电脑b 打开光盘驱动器所对应的盘符c 双击光盘中文件SETUP.EXE 的图标d 按照屏幕提示选定一个安装路径后进行安装方法二a 在开始菜单中选择运行项目b 在运行对话框中填入drive:\setup.exe注意drive 对应你的机器中的光盘驱动器盘符c 按确定键开始安装d 其余同方法一注意按上述方法进行安装后得到的是一个只可以使用30 天的未注册版对正式版用户还要进行第二步的注册才可得到一个无时间限制的正式版ICC AVR 正式版分标准版和专业版在标准版中有一些功能限制如代码的压缩工程和文件的配置检查在标准版中不可以使用
上传时间: 2013-11-05
上传用户:zhyfjj