又32只二极管组成的又P1-P3口控制的方阵。
上传时间: 2014-12-24
上传用户:JIEWENYU
P1口点亮八只二极管
标签: 发光二极管
上传时间: 2013-11-15
上传用户:520
内容提要: MCS-51单片机结构和原理分析 MCS51-指令系统简介,汇编语言程序设计, 定时/计数器,串行接口,等等实例. 第一章 单片机基础知识 第一节 引言 一 什么是单片机 二 单片机发展概况 三 MCS系列单片机简介 第二节 MCS系列单片机结构特点 第三节 MCS系列单片机应用领域 第四节 MCS系列单片机的开发与开发工具 思考题与习题 第二章 MCS-51单片机的结构和原理分析 第一节 MCS-51单片机的结构 第二节 CPU结构 一 运算器 二 控制器 第三节 MCS-51单片机的储存器 一 程序储存器 二 数据储存器 第四节CPU时序及引脚功能 一 MCS-51系列单片机引脚功能 二 振荡电路和时钟电路 三 CPU时序 第五节 输入/输出(I/0) 一 P0口 二 P1口 三 p2口 四 P3口 思考题与习题 ......... .........
上传时间: 2013-10-17
上传用户:yuyizhixia
1、T0做定时器,在P1.0输出一个周期为2秒的方波信号; 2、T1做计数器,记录P1.0引脚上的脉冲个数; 3、在数码管上显示脉冲个数;
上传时间: 2013-10-10
上传用户:onewq
80C51单片机控制流水灯 1使用汇编语言编写程序,8个LED灯接在P0口,显示出流水灯效果 2用mov指令移位 3用查表法显示流水灯 4将P1口拨码开关设置状态读出,作为流水灯设置显示模式 5在4的基础上加入控制功能,K0为低电平时,LED停止移动,K0高电平时,LED开始移动;K1为低电平时,LED左移,K1高电平时,LED右移。
上传时间: 2013-10-31
上传用户:ggwz258
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<reg51.h> //包含单片机寄存器的头文件 /******************************************************* 函数功能:主函数 (C 语言规定必须有也只能有1 个主函数) ********************************************************/ void main(void) { while(1) //无限循环 { P1=0xff; // P1=1111 1111B,熄灭LED P0=P1; // 将 P1 口状态送入P0 口 P2=P1; // 将 P1 口状态送入P2 口 P3=P1; // 将 P1 口状态送入P3 口
上传时间: 2013-10-26
上传用户:离殇
单片机c语言学习和单片机制作资料: 函数的使用和熟悉 实例3:用单片机控制第一个灯亮 实例4:用单片机控制一个灯闪烁:认识单片机的工作频率 实例5:将 P1口状态分别送入P0、P2、P3口:认识I/O口的引脚功能 实例6:使用P3口流水点亮8位LED 实例7:通过对P3口地址的操作流水点亮8位LED 实例8:用不同数据类型控制灯闪烁时间 实例9:用P0口、P1 口分别显示加法和减法运算结果 实例10:用P0、P1口显示乘法运算结果 实例11:用P1、P0口显示除法运算结果 实例12:用自增运算控制P0口8位LED流水花样 实例13:用P0口显示逻辑"与"运算结果 实例14:用P0口显示条件运算结果 实例15:用P0口显示按位"异或"运算结果 实例16:用P0显示左移运算结果 实例17:"万能逻辑电路"实验 实例18:用右移运算流水点亮P1口8位LED 实例19:用if语句控制P0口8位LED的流水方向 实例20:用swtich语句的控制P0口8位LED的点亮状态 实例21:用for语句控制蜂鸣器鸣笛次数 实例22:用while语句控制LED 实例23:用do-while语句控制P0口8位LED流水点亮 实例24:用字符型数组控制P0口8位LED流水点亮 实例25: 用P0口显示字符串常量 实例26:用P0 口显示指针运算结果 实例27:用指针数组控制P0口8位LED流水点亮 实例28:用数组的指针控制P0 口8 位LED流水点亮 实例29:用P0 、P1口显示整型函数返回值 实例30:用有参函数控制P0口8位LED流水速度 实例31:用数组作函数参数控制流水花样 实例32:用指针作函数参数控制P0口8位LED流水点亮 实例33:用函数型指针控制P1口灯花样 实例34:用指针数组作为函数的参数显示多个字符串
上传时间: 2013-10-21
上传用户:llandlu
#ifndef __485_C__ #define __485_C__ #include #include #define unsigned char uchar #define unsigned int uint /* 通信命令 */ #define __ACTIVE_ 0x01 // 主机询问从机是否存在 #define __GETDATA_ 0x02 // 主机发送读设备请求 #define __OK_ 0x03 // 从机应答 #define __STATUS_ 0x04 // 从机发送设备状态信息 #define __MAXSIZE 0x08 // 缓冲区长度 #define __ERRLEN 12 // 任何通信帧长度超过12则表示出错 uchar dbuf[__MAXSIZE]; // 该缓冲区用于保存设备状态信息 uchar dev; // 该字节用于保存本机设备号 sbit M_DE = P1^0; // 驱动器使能,1有效 sbit M_RE = P1^1; // 接收器使能,0有效
上传时间: 2014-12-26
上传用户:604759954
一、实验目的 1、掌握P1口的使用方法。2、掌握数据输入/输出的区别。 二、实验器材 1、HK-MCS51综合实验仪2、超想2000仿真器3、连线4、计算机
上传时间: 2014-12-27
上传用户:xieguodong1234