第 一章 电路原理分析 1-1 显示原理 1-2 数码管结构及代码显示 1-3 键盘及读数原理 1-4 连击功能的实现 第 二 章 程序设计思想和相关指令介绍 2-1 数据与代码转换 2-2 计时功能的实现与中断服务程序 2-3 时间控制功能与比较指令 2-4 时钟误差的分析 附录A 电路图 附录B 存储单元地址表 附录C 输入输出口功能分配表 附录D 定时中断程序流程图 附录F 调时功能流程图 附录G 程序清单
上传时间: 2014-01-15
上传用户:hustfanenze
主要包含AVR单片机读写SD程序用到的函数
标签: AVR单片机 SD卡
上传时间: 2015-10-20
上传用户:小法2333
目前,许多高校在机房管理上使用了IC 卡,其中少数机房是使用接触式IC卡,众所周知,接触式IC 卡在可靠性、易用性、安全性、高抗干扰性和工作距离方面不及非接触式IC 卡,因此很多接触式IC 卡基本已被非接触式IC 卡取代。 经过调研发现,使用IC 卡的机房管理系统的基本工作方式是每个机房中配置了1个IC 卡读写终端和1 台监控机。IC 卡读卡终端只是一个普通的读卡器,只负责读取卡内信息,并通过串口等通信方式将IC 卡信息传输给监控机,读卡终端本身没有信息存储功能,实际的计费管理完全是通过监控计算机控制,监控计算机向中心服务器端定时或实时传输刷卡信息。由于整个系统要占用一台微机,而且中间的信息传递、计费环节都要由它来完成,不仅浪费资源,而且也增加了安全隐患。在这种工作模式下,会出现一些问题和漏洞: 1) 可靠性不高由于读卡设备与监控计算机之间的信息传输只是暂时保存在监控计算机中,如果监控计算机遭到病毒袭击或者出现硬件故障,将出现无法挽回的后果。而且由于学生信息都保存在监控计算机中,因此存在着人为伪造、篡改和徇私舞弊行为的极大可能。 2) IC卡的特点未完全体现IC卡除了能标识身份外,还有电子钱包功能,能对其进行充值和扣款,但是上述方法基本上IC卡只用做标识身份,实际的每次扣款,都是由监控计算机和中心服务器来完成,基本与读卡设备无关。 3) 不方便学生上机和收费管理学生每次上机刷卡,都要由监控计算机连接中心服务器端,由中心服务器端读出学生信息,进行核对,而且对学生的扣款需要额外的计算机软件来进行计时和计费处理,显得比较繁琐。 鉴于以上问题,为提高机房管理效率,降低工作强度,并及时处理机房发生的故障,采用机房计费管理系统势在必行。如果能在读卡终端设备中完成计费的大部分功能,并且增加存储功能,这样就可以减少监控计算机的负担,甚至读卡终端设备可以直接与中心服务器通信,不仅能增加系统的可靠性和安全性而且还充分利用了IC 卡的功能,还降低了财务统计和计算带来的麻烦。 目前已经应用于机房管理的解决方案主要有3种方式,即:软硬件结合控制方式、帐号方式和门禁方式。鉴于设计要求,并且考虑到安全、可靠、简单等因素,如果在软硬件结合控制方式中,把更多的任务交由读卡终端,比如由读卡终端来存储数据、计费管理,同时如果读卡终端能实现TCP/IP 通信,那么监控计算机的任务就大大降低,甚至可以由读卡终端直接与中心服务器通信。就减少了一些不必要的麻烦和安全风险。本论文的设计就是基于这一点来进行的。 本系统要求数据传输稳定可靠,实时性要好,另外考虑到性价比等因素,综合考虑选择将μC/OS-II 操作系统移植到ARM7 上作为开发平台。在此平台基础上,考虑到TCP/IP协议栈的实现与要采用的硬件的性能以及实现的成本有关。从解决这一技术问题出发,结合本论文研究的应用对象,决定使用嵌入式操作系统,此种方案可以描述为嵌入式TCP/IP协议栈+嵌入式操作系统+微控制器。 本文介绍了一种基于ARM7的IC 卡机房管理终端的设计方案。该系统在ARM7的基础上实现了μC/OS-Ⅱ操作系统的移植和TCP/IP协议栈的嵌入,能够正确读写IC 卡信息,增加了SD 卡存储功能,完成计费操作,实现液晶显示功能,能够通过以太网或串口直接与服务器通信。 本文详细介绍了整个机房管理系统终端的硬软件设计,给出了嵌入式操作系统μC/OS-Ⅱ在ARM7 处理器上的详细移植过程,介绍了一种TCP/IP协议栈和基于套接字的编程方法,同时也提供了一种多卡操作的防冲突机制。 同目前大多数机房管理系统相比,该系统有如下特点: 1) 由于使用了嵌入式操作系统μC/OS-Ⅱ,提高了系统的实时性和反应时间,任务管理和调度更加方便有效。 2) 由读卡终端来进行计费操作,降低了服务器端的工作压力,同时降低了安全风险。 3) 增加了数据存储功能,提高了系统的可靠性,有利于数据的查询和故障的恢复。 4) 增加了对无效卡、注销卡和欠费卡的判断与处理,对恶意操作或者有意或者无意的逃费操作采取了积极有效的措施。 5) 以太网通信克服了以往串口通信的传输距离短、传输速率慢等缺点,使得通信更加方便、高效,并且可以进行远距离传输和控制。
上传时间: 2013-07-09
上传用户:浅言微笑
特点: 精确度0.1%满刻度 可作各式數學演算式功能如:A+B/A-B/AxB/A/B/A&B(Hi or Lo)/|A|/ 16 BIT类比输出功能 输入与输出绝缘耐压2仟伏特/1分钟(input/output/power) 宽范围交直流兩用電源設計 尺寸小,穩定性高
上传时间: 2014-12-23
上传用户:ydd3625
特点(FEATURES) 精确度0.1%满刻度 (Accuracy 0.1%F.S.) 可作各式数学演算式功能如:A+B/A-B/AxB/A/B/A&B(Hi or Lo)/|A| (Math functioA+B/A-B/AxB/A/B/A&B(Hi&Lo)/|A|/etc.....) 16 BIT 类比输出功能(16 bit DAC isolating analog output function) 输入/输出1/输出2绝缘耐压2仟伏特/1分钟(Dielectric strength 2KVac/1min. (input/output1/output2/power)) 宽范围交直流两用电源设计(Wide input range for auxiliary power) 尺寸小,稳定性高(Dimension small and High stability)
上传时间: 2013-11-24
上传用户:541657925
/*--------- 8051内核特殊功能寄存器 -------------*/ sfr ACC = 0xE0; //累加器 sfr B = 0xF0; //B 寄存器 sfr PSW = 0xD0; //程序状态字寄存器 sbit CY = PSW^7; //进位标志位 sbit AC = PSW^6; //辅助进位标志位 sbit F0 = PSW^5; //用户标志位0 sbit RS1 = PSW^4; //工作寄存器组选择控制位 sbit RS0 = PSW^3; //工作寄存器组选择控制位 sbit OV = PSW^2; //溢出标志位 sbit F1 = PSW^1; //用户标志位1 sbit P = PSW^0; //奇偶标志位 sfr SP = 0x81; //堆栈指针寄存器 sfr DPL = 0x82; //数据指针0低字节 sfr DPH = 0x83; //数据指针0高字节 /*------------ 系统管理特殊功能寄存器 -------------*/ sfr PCON = 0x87; //电源控制寄存器 sfr AUXR = 0x8E; //辅助寄存器 sfr AUXR1 = 0xA2; //辅助寄存器1 sfr WAKE_CLKO = 0x8F; //时钟输出和唤醒控制寄存器 sfr CLK_DIV = 0x97; //时钟分频控制寄存器 sfr BUS_SPEED = 0xA1; //总线速度控制寄存器 /*----------- 中断控制特殊功能寄存器 --------------*/ sfr IE = 0xA8; //中断允许寄存器 sbit EA = IE^7; //总中断允许位 sbit ELVD = IE^6; //低电压检测中断控制位 8051
上传时间: 2013-10-30
上传用户:yxgi5
TLC2543是TI公司的12位串行模数转换器,使用开关电容逐次逼近技术完成A/D转换过程。由于是串行输入结构,能够节省51系列单片机I/O资源;且价格适中,分辨率较高,因此在仪器仪表中有较为广泛的应用。 TLC2543的特点 (1)12位分辩率A/D转换器; (2)在工作温度范围内10μs转换时间; (3)11个模拟输入通道; (4)3路内置自测试方式; (5)采样率为66kbps; (6)线性误差±1LSBmax; (7)有转换结束输出EOC; (8)具有单、双极性输出; (9)可编程的MSB或LSB前导; (10)可编程输出数据长度。 TLC2543的引脚排列及说明 TLC2543有两种封装形式:DB、DW或N封装以及FN封装,这两种封装的引脚排列如图1,引脚说明见表1 TLC2543电路图和程序欣赏 #include<reg52.h> #include<intrins.h> #define uchar unsigned char #define uint unsigned int sbit clock=P1^0; sbit d_in=P1^1; sbit d_out=P1^2; sbit _cs=P1^3; uchar a1,b1,c1,d1; float sum,sum1; double sum_final1; double sum_final; uchar duan[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; uchar wei[]={0xf7,0xfb,0xfd,0xfe}; void delay(unsigned char b) //50us { unsigned char a; for(;b>0;b--) for(a=22;a>0;a--); } void display(uchar a,uchar b,uchar c,uchar d) { P0=duan[a]|0x80; P2=wei[0]; delay(5); P2=0xff; P0=duan[b]; P2=wei[1]; delay(5); P2=0xff; P0=duan[c]; P2=wei[2]; delay(5); P2=0xff; P0=duan[d]; P2=wei[3]; delay(5); P2=0xff; } uint read(uchar port) { uchar i,al=0,ah=0; unsigned long ad; clock=0; _cs=0; port<<=4; for(i=0;i<4;i++) { d_in=port&0x80; clock=1; clock=0; port<<=1; } d_in=0; for(i=0;i<8;i++) { clock=1; clock=0; } _cs=1; delay(5); _cs=0; for(i=0;i<4;i++) { clock=1; ah<<=1; if(d_out)ah|=0x01; clock=0; } for(i=0;i<8;i++) { clock=1; al<<=1; if(d_out) al|=0x01; clock=0; } _cs=1; ad=(uint)ah; ad<<=8; ad|=al; return(ad); } void main() { uchar j; sum=0;sum1=0; sum_final=0; sum_final1=0; while(1) { for(j=0;j<128;j++) { sum1+=read(1); display(a1,b1,c1,d1); } sum=sum1/128; sum1=0; sum_final1=(sum/4095)*5; sum_final=sum_final1*1000; a1=(int)sum_final/1000; b1=(int)sum_final%1000/100; c1=(int)sum_final%1000%100/10; d1=(int)sum_final%10; display(a1,b1,c1,d1); } }
上传时间: 2013-11-19
上传用户:shen1230
#include<iom16v.h> #include<macros.h> #define uint unsigned int #define uchar unsigned char uint a,b,c,d=0; void delay(c) { for for(a=0;a<c;a++) for(b=0;b<12;b++); }; uchar tab[]={ 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,
上传时间: 2013-10-21
上传用户:13788529953
针对众多低成本数据采集需求,采用带有片上USB控制器和D/A转换器的混合信号微处理器C8051F340,设计了一款可通过USB接口和LabVIEW图形用户界面实现与PC机联机的数据采集器,同时借助系统的SD卡存储独立实现现场长时间采集数据。该数据采集器成本低,结构简单,体积小,已成功用于工业现场。 Abstract: Aiming at the need of low cost data acquisition, a data acquisition device is designed based on C8051F340 which is a mixed-signal microcontroller and integrates USB controller and A/D controller on a chip.The data acquisition device which can combine with PC by USB interface and LabVIEW graphical user interface,can realize data acquisition. At the same time,it can be solely run a long time in virtue of SD card in field.The date aequisition device features low cost,simple structure and little sharp, and it has been used in industry field.
上传时间: 2014-05-31
上传用户:1109003457
摘要: 串行传输技术具有更高的传输速率和更低的设计成本, 已成为业界首选, 被广泛应用于高速通信领域。提出了一种新的高速串行传输接口的设计方案, 改进了Aurora 协议数据帧格式定义的弊端, 并采用高速串行收发器Rocket I/O, 实现数据率为2.5 Gbps的高速串行传输。关键词: 高速串行传输; Rocket I/O; Aurora 协议 为促使FPGA 芯片与串行传输技术更好地结合以满足市场需求, Xilinx 公司适时推出了内嵌高速串行收发器RocketI/O 的Virtex II Pro 系列FPGA 和可升级的小型链路层协议———Aurora 协议。Rocket I/O支持从622 Mbps 至3.125 Gbps的全双工传输速率, 还具有8 B/10 B 编解码、时钟生成及恢复等功能, 可以理想地适用于芯片之间或背板的高速串行数据传输。Aurora 协议是为专有上层协议或行业标准的上层协议提供透明接口的第一款串行互连协议, 可用于高速线性通路之间的点到点串行数据传输, 同时其可扩展的带宽, 为系统设计人员提供了所需要的灵活性[4]。但该协议帧格式的定义存在弊端,会导致系统资源的浪费。本文提出的设计方案可以改进Aurora 协议的固有缺陷,提高系统性能, 实现数据率为2.5 Gbps 的高速串行传输, 具有良好的可行性和广阔的应用前景。
上传时间: 2013-11-06
上传用户:smallfish