knrt.net
当前位置:首页 >> 编写一个完整的单片机C51程序 >>

编写一个完整的单片机C51程序

设单片机系统编写一个完整的C51程序使P1.6和P1,可以使用正确编码加上解压即可。 一、过程: 1、TMOD = 0X02;//工作方式寄存器; 2、TH0 = 56;//8位的用TH; 3、TL0 = 0;//16位跟13位两个都用; 4、EA = 1;//开总中断; 5、TR0 = 1;//定时器开始...

#include sbit led=P1^0; //单片机管脚位声明 void main() { TMOD=0x01; //定时器TO工作在方式1 TH0=(65536-5000)/256; //装初值,12M晶振 1为1us; 5000为5000us=5ms; TL0=(65536-5000)%256; EA =1; //开总中断 ET0=1; //开定时器TO中断 TR0=1;...

#include#include "intrins.h"#include "absacc.h"#define uchar unsigned charuchar code ledtab[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40,0xff};//0-9unsigned char disdat[4]="2018";sbit key=P3^0;void ext0() interrupt...

#include #define uint unsigned int uint width; sbit pulse=P3^2; main() { TMOD=0x09; //定时器0模式1,GATE=1 TH0=0; TL0=0; while(pulse); //等待P3.2变低 TR0=1; //启动定时器0 while(!pulse); //等待脉冲变高 while(pulse); //等待脉冲变...

void main() { P1=0XFF; /*定义初始状态为全灭*/while(1) { delay(2000); P1=0X7e; delay(2000); P1=0Xbd; delay(2000);P1=0Xdb;delay(2000); P1=0Xe7; delay(2000); P1=0Xdb;delay(2000); P1=0Xbd;delay(2000); P1=0X7e; delay(2000); P1=0XFF;...

#include sbit speaker=P2^2; unsigned char timer0h,timer0l,time; //生日歌 code unsigned char sszymmh[]={5,1,1, 5,1,1, 6,1,2, 5,1,2, 1,2,2, 7,1,4, 5,1,1, 5,1,1, 6,1,2, 5,1,2, 2,2,2, 1,2,4, 5,1,1, 5,1,1, 5,2,2, 3,2,2, 1,2,2, 7,1,2...

1、十秒对于单片机来说是很长很长的时间了,单片机十秒的时间什么事都不能做,只在跑这延时程序,那是什么概念,用中断的话,单片机正常运行其他程序,只是时间到了才过来处理延时以后的程序,效率不知道高了多少 。 2、例程: //假设晶振12MHZ ...

首先搞清LED管是高电平导通还是低电平导通。 如果是低电平导通,P1赋0x00时,发光管全亮,0xff时,全灭。 具体程序: #define uint unsigned int #define uchar unsigned char void delay(uint time_out) { uint i,j; for(i=0;i

ORG 0000HLJMP MAINORG 0003HLJMP EXT0ORG 0030HMAIN: SETB EX0 SETB IT0 SETB EA CLR P1.0 SJMP $EXT0: SETB P1.0 JNB P3.2,$ CLR P1.0 RETI END

给我留一个邮箱 可以给你分享百度云

网站首页 | 网站地图
All rights reserved Powered by www.knrt.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com