/*--------- 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
浅谈51系列单片机嵌入式程序设计:文主要提出了一个51系列汇编语言通用程序设计框架,并对其作了详细的探讨.关键字:单片机;嵌入式;程序设计;汇编;51系列1 引言无论是测控系统、数控系统,还是机电一体化、智能仪表或者接口,单片机作为现代工业的基本技术,应用都已日臻成熟。目前,51系列单片机应用系统程序设计大多使用汇编语言,虽然它能最充分发挥指令系统的功能和效率,但是实际的程序设计给设计师增加了不少工作量。为了简化程序设计,本文设计了一个通用程序框架,能够使设计师模块化嵌入式地轻轻松松、快速有效地编程设计。
上传时间: 2014-12-28
上传用户:萍水相逢
random.zip 随机数产生器的汇编源代码 cmdsrc.zip 一个文本编辑器的汇编源代码 ourvxd.zip 一个用汇编编VxD的简单例子 foxprn.zip 一个在Fox中利用汇编语言接口程序实现打印图形的程序 amis.zip 在汇编程序中灵活运用TSRs的程序库
上传时间: 2013-12-25
上传用户:yy541071797
random.zip 随机数产生器的汇编源代码 cmdsrc.zip 一个文本编辑器的汇编源代码 ourvxd.zip 一个用汇编编VxD的简单例子 foxprn.zip 一个在Fox中利用汇编语言接口程序实现打印图形的程序 amis.zip 在汇编程序中灵活运用TSRs的程序库
上传时间: 2013-12-27
上传用户:hxy200501
题目:利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。 1.程序分析:(a>b)?a:b这是条件运算符的基本例子。
上传时间: 2015-01-08
上传用户:lifangyuan12
自己写的木马绑定机,实现了基本的原理,有些细节上的东西处理得不是很好。还有,我认为必需写个文件存储a和b程序的字节数。不晓得高手门是不是这样做的?请多多指教。
标签: 木马
上传时间: 2013-12-10
上传用户:xiaoyunyun
汇编语言课程设计 设计题目:在显示器上显示九九表 设计目的: 1. 巩固和加深课堂所学知识; 2. 将课本上的理论知识和实际应用有机的结合起来,培养同学们分析和解决实际问题的能力; 3. 通过对汇编语言程序代码的阅读、修改、设计,理解和掌握复杂的汇编语言应用程序的编程,提高实践编程能力。 设计任务:(在规定的时间内完成下列任务) 功能与要求: 二进制转换十进制的显示子程序能自动消除高位的0。 能180度旋转方向显示两张九九表。 按1键和2键手动切换显示其中一张九九表。 按(a或A)键自动循环切换显示两张九九表。 按Esc键退出程序。 包涵了程序所需的各个子程序和程序运行截图
上传时间: 2013-12-23
上传用户:gououo
本代码为编码开关代码,编码开关也就是数字音响中的 360度旋转的数字音量以及显示器上用的(单键飞梭开 关)等类似鼠标滚轮的手动计数输入设备。 我使用的编码开关为5个引脚的,其中2个引脚为按下 转轮开关(也就相当于鼠标中键)。另外3个引脚用来 检测旋转方向以及旋转步数的检测端。引脚分别为a,b,c b接地a,c分别接到P2.0和P2.1口并分别接两个10K上拉 电阻,并且a,c需要分别对地接一个104的电容,否则 因为编码开关的触点抖动会引起轻微误动作。本程序不 使用定时器,不占用中断,不使用延时代码,并对每个 细分步数进行判断,避免一切误动作,性能超级稳定。 我使用的编码器是APLS的EC11B可以参照附件的时序图 编码器控制流水灯最能说明问题,下面是以一段流水 灯来演示。
上传时间: 2017-07-03
上传用户:gaojiao1999
基于ti公司TMS320C5416编写的语言程序,包含c语言和汇编语言,程序均已在硬件平台上运行,可以实现录放音,自动回放等功能。
上传时间: 2014-12-02
上传用户:xcy122677