微机原理课程设计
上传时间: 2013-11-04
上传用户:qwerasdf
不错的资料
上传时间: 2013-12-21
上传用户:liaofamous
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
a_bit equ 20h ;个位数存放处 b_bit equ 21h ;十位数存放处 temp equ 22h ;计数器寄存器 star: mov temp,#0 ;初始化计数器 stlop: acall display inc temp mov a,temp cjne a,#100,next ;=100重来 mov temp,#0 next: ljmp stlop ;显示子程序 display: mov a,temp ;将temp中的十六进制数转换成10进制 mov b,#10 ;10进制/10=10进制 div ab mov b_bit,a ;十位在a mov a_bit,b ;个位在b mov dptr,#numtab ;指定查表启始地址 mov r0,#4 dpl1: mov r1,#250 ;显示1000次 dplop: mov a,a_bit ;取个位数 MOVC A,@A+DPTR ;查个位数的7段代码 mov p0,a ;送出个位的7段代码
上传时间: 2013-11-06
上传用户:lx9076
通过基于单片机的温度控制系统大型实验,使学生能综合应用“微机原理”、“计算机控制技术”、“单片机的原理及应用”,“电子技术”以及“自控理论”等课程的基础知识。初步掌握DDC系统和硬件设计、控制器算法设计及应用程序的设计、调试及系统调试。为毕业设计及今后DDC系统开发、研制打下了良好基础。
上传时间: 2013-10-16
上传用户:hustfanenze
传统的8位51单片机,结构简单灵活,是本科学生学习微机原理的一个经典例子,但由于51单片机功能过于简单,很多时候无法满足实际应用的需要。因此,本小组的成员希望基于新一代的16位超低功耗单片机MSP430开发出新的功能全面的学习板,来给学生作为实验学习之用。这种单片机功耗低,功能比51单片机强大,能在很多应用中广泛使用,是功能接近ARM的单片机,能让学生结合应用来学习。
上传时间: 2013-10-17
上传用户:黄蛋的蛋黄
单片机是什么?单片机有什么用?单片机与微处理器是什么关系?而CPU呢?MCU呢?其实对于初次接触单片机的朋友,总会提出很多问题,有的可以问问老师或身边的朋友,而有的却把问题挂在自己的脑海中,希望能找到一份详细的资料、书籍把这些问题一一解决。 不过在接触单片机之前,您最好学过或了解过微机原理,以及数字电路、模拟电路的相关知识,这些是基础知识。其实可以把单片机看得简单些,可以把它看作是一个以CPU(处理器)为中心的,集成有不同为了让它可以工作起来的资源的微控制器、微处理器。 可以那么简单地去看:单片机就是个从输入到输出的黑匣子;一切单片机的应用无非就是给其一定的输入,然后期望得到一定的输出结果;而什么样的输入得到什么样的输出?就得由CPU来处理了,然而怎么处理呢?当然要依据程序员的意愿来处理了,所以学习单片机就必然涉及到程序的编写。 程序员编写的程序会利用CPU控制单片机上的各种资源,协调处理,把输入变为所期望的输出;当然这里的输入与输出,只是一个概念,无法具体到某个信号。
上传时间: 2013-11-22
上传用户:fdmpy
目录 第一章 伟福仿真系统说明第一节 伟福仿真系统的使用说明快速入门第一节 分析功能使用第二章 仿真系统构成概述第三章 板上仿真器使用方法第一节 键盘使用说明第二节 脱机仿真第四章 伟福系列实验说明第五章 实验项目软件实验一 存储器块清零软件实验二 二进制到BCD转换软件实验三 二进制到ASCII码转换软件实验四 内存块移动软件实验五 程序跳转表软件实验六 数据排序硬件实验一 P1口输入、输出实验硬件实验二 继电器控制实验硬件实验三 用74LS245读入数据硬件实验四 用74LS273输出数据硬件实验五 音频控制实验硬件实验六 8255输入、输出实验硬件实验七 计数器实验硬件实验八 外部中断实验硬件实验九 定时器实验硬件实验十 外部中断(急救车与交通灯)硬件实验十一 八段数码管显示硬件实验十二 键盘扫描显示实验硬件实验十三 单片机串行口通讯实验硬件实验十四 直流电机控制实验硬件实验十五 步进电机控制实验硬件实验十六 8253计数器实验硬件实验十七 8259外部中断实验硬件实验十八 8253定时器实验硬件实验十九 8251A串行通讯实验附录一 8086实验程序及说明附录二 MCS51实验程序及说明参考书目
上传时间: 2014-11-23
上传用户:GHF
电子密码锁的设计与实现一、实验目的 1.进一步掌握键盘扫描和LED显示的程序设计。 2.了解按键消抖的方法。 3.综合运用微机原理的软硬件知识。 二、实验内容与要求 1.基本要求 (1)具有密码输入功能,密码最多为6位;(2)设置退格键,以便删除输入错误的密码;(3)在输入的密码时数码管上只显示8,并根据输入位数依次横移;(4)设置确认键,当确认键按下后,判断输入密码是否正确;(5)当输入密码正确时,点亮发光二极管;当输入密码不正确时,发光二极管不亮并且蜂鸣器报警,重新输入,当三次密码输入不正确时,系统应锁定键盘10s。2.提高要求 将用户分为管理者和使用者,管理者拥有超级密码,可以修改其他人的密码。使用者不能修改密码。 三、实验报告要求 1.设计目的和内容 2.总体设计 3.硬件设计:原理图(接线图)及简要说明 4.软件设计框图及程序清单5.设计结果和体会(包括遇到的问题及解决的方法) 四、总体设计 电子密码锁的原理是:从键盘输入一组密码,CPU把该密码和设置密码比较,对则将锁打开(不同锁的控制方式不一样,比如加电控制电磁铁抽回,从而打开),错则要求重新输入,并记录错误次数,如果三次错误,则被强制锁定并报警,除非超级密码或者其他的手段打开,比如延时一段时间。 初步设计思路如下: 1.输入密码用矩形键盘,包括数字键和功能键,功能键包括退格键和确认键。 2.LED数码管显示输入密码,但是只是输出显示符号8 。采用动态扫描输出。 3.用发光二极管模拟锁的情况,锁关时发光二极管灭,打开时发光二极管亮。 4.输入密码错误时报警,3次输入错误时键盘锁定10s,键盘无法接收数据。 软件的设计主要包括矩形键盘键值的读取、LED动态扫描输出程序、密码判断程序和报警程序。 五、硬件设计 根据设计思路,硬件电路可通过实验平台上的一些功能模块电路组成,由于实验平台上的各个功能模块已经设计好,用户在使用时只要设计模块间电路的连接,因此,硬件电路的设计及实现相对简单。完整系统的硬件连接如图1所示。硬件电路由LED数码管显示模块、按键模块、发光二极管电路和蜂鸣器模块组成。各个模块的详细说明:1.LED数码管模块实验平台上提供一组六个LED数码管。插孔CS1用于数码管段选的输出选通,插孔CS2用于数码管位选信号的输出选通。本设计用6个数码管来动态显示时分秒,动态显示的定时时间由8253定时/计数器来实现。8253主要是实现每位显示时间1ms,由8253的计数器0来实现。Clk0接实验平台分频电路输出Q6,f=46875hz。GATE0接8255的PA0,由8255的PA0输出来控制计数器的起停。OUT0接8259的IRQ2,定时完成请求中断,进入中断服务程序。软件在中断服务程序中LED数码管显示。
标签: 电子密码锁
上传时间: 2013-10-16
上传用户:15070202241