资源简介

实用的51单片机设计项目,里面有项目代码,对初学者有一定的帮助。

资源截图

代码片段和文件信息

#include
#define uchar unsigned char
#define uint unsigned int 
#define ulong unsigned long
#define _rrca_()          CY   = ACC & 0x01           //产生RRC A指令
#define _rlca_()          CY   = ACC & 0x80           //产生RLC A指令
sbit bADcs=P1^4;
sbit bADcl=P1^5;
sbit bADda=P1^6;
sbit flag=P1^7;
sbit str=P2^7;
sbit d=P2^6;
sbit clk=P2^5;
bit choose=0;
unsigned char data1;
unsigned char count;
unsigned char cycle;
uint gexiao1xiao2;
unsigned long data2;
//无小数点
const uchar table1[17]={0x810xed0x430x490x2d0x190x110xcd0x010x090x710x310x930x610x130x170xff};


//有小数点
const uchar table2[17]={0x800xec0x420x480x2c0x180x100xcc0x000x080x700x300x920x600x120x160xff};
uchar buffer[4]={0x000x000x000x00};


void Delayus(uchar i)
 {
  while(--i);
 }

void display(void)
{

uchar bit_count=0;
uchar table_counter=0;
uchar byte_counter=0;
uchar temp_i=0;
buffer[0]=xiao2;
buffer[1]=xiao1;
buffer[2]=ge;
buffer[3]=0x00;


//led_str_off;//先清零
str=0;
//led_clk_off;
clk=0;
for(byte_counter=0;byte_counter<4;byte_counter++)
{
bit_count=8;
   if(byte_counter==2)temp_i=table2[buffer[byte_counter]];
    else
temp_i=table1[buffer[byte_counter]];
// nop;
while(bit_count>0)
{
if((temp_i&0x80)==0)
{
//led_d_off;
d=0;
}
else
{
//led_d_on;
d=1;
}
temp_i=(temp_i<<1);

// nop;
//led_clk_on;
clk=1;
// nop;
//led_clk_off;
clk=0;
// nop;

bit_count--;

}

}

//led_str_on;
str=1;
}

/*
void ad()
{
choose=0;
 count = 0;
 bADcs = 0;//当ADC0832未工作时其CS输入端应为高电平,此时芯片禁用.
 bADcl = 0;
 bADda = 1;//在第1 个时钟脉冲的下沉之前DI端必须是高电平.
 bADcl = 1; 
 bADcl = 0;//pulse 1 down
 bADda = 1;
 bADcl = 1; bADcl = 0;//pulse 2 down
 if(choose == 0)
 bADda = 0;
else
 bADda = 1;  
  bADcl = 1; bADcl = 0;//pulse 3 down
  bADcl = 1; bADcl = 0;//pulse 4 down
     //bADcl = 1;


      for(cycle = 8; cycle > 0; cycle-- )
 {
 bADda = 1;

//bADcl = 0;//pulse 
bADcl = 1;
 CY = bADda;
 _rlca_(); //RRC A
 bADcl = 0;//pulse
 }
 data1= ACC;

     
 for(cycle = 8; cycle > 0; cycle-- )
 {
 bADda = 1;
  
  bADcl = 1;
 CY = bADda;
 _rrca_(); //RLC A
 bADcl = 0;//pulse 
 }

 //bADcl = 0;//pulse
 
} */
void ad(void)
{    uchar i;
     //data1=0;
     bADcs = 0;//当ADC0832未工作时其CS输入端应为高电平,此时芯片禁用.
 bADcl=0;
 bADda=1;
 bADcl=1;
 bADcl=0;//i down
 bADda=1;
 bADcl=1;
 bADcl=0; //   2 down
 bADda=0;
 bADcl=1;
 bADcl=0; //   3 down
 bADda=1;
 bADcl=1;
 bADcl=0; //   4 down

 for(i=8;i>0;i--)
  {

  data1<<=1;
  bADcl=0;
bADcl=1;
if(bADda==1) data1|=0x01;
    bADda=1;
  }
/* for(i=8;i>0;i--)
  {
  bADcl=0;
bADcl=1;
  } */
 bADcs=1;
 
}
void cal()
{
data2=((ulong)data1*493)/256;
ge=data2/100;
xiao1=(data2%100)/10;
xiao2=data2%10;
}

main()
{
flag=1; 
  while(1){
      ad();
       

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        374  2009-03-29 21:29  51单片机课程设计项目\说明.txt

     文件     104833  2008-11-12 14:41  51单片机课程设计项目\项目仿真\项目1 基于AT89S52单片机交通灯控制系统的设计\Last Loaded 交通灯.DBK

     文件     104833  2009-03-17 16:03  51单片机课程设计项目\项目仿真\项目1 基于AT89S52单片机交通灯控制系统的设计\交通灯.DSN

     文件       1650  2008-11-12 14:38  51单片机课程设计项目\项目仿真\项目1 基于AT89S52单片机交通灯控制系统的设计\交通灯.HEX

     文件        742  2009-03-19 12:13  51单片机课程设计项目\项目仿真\项目1 基于AT89S52单片机交通灯控制系统的设计\交通灯.PWI

     文件     108277  2009-03-18 16:34  51单片机课程设计项目\项目仿真\项目10 基于AT89S52单片机的密码锁设计\Last Loaded 单片机的密码锁.DBK

     文件        929  2009-03-18 16:17  51单片机课程设计项目\项目仿真\项目10 基于AT89S52单片机的密码锁设计\单片机的密码锁.asm

     文件     108284  2009-03-18 16:35  51单片机课程设计项目\项目仿真\项目10 基于AT89S52单片机的密码锁设计\单片机的密码锁.DSN

     文件        462  2009-03-18 16:17  51单片机课程设计项目\项目仿真\项目10 基于AT89S52单片机的密码锁设计\单片机的密码锁.HEX

     文件        768  2012-03-21 21:08  51单片机课程设计项目\项目仿真\项目10 基于AT89S52单片机的密码锁设计\单片机的密码锁.PWI

     文件      10496  2009-03-15 17:17  51单片机课程设计项目\项目仿真\项目11 基于AT89S52单片机多模式带音乐跑马灯的设计\liushuishuma.hex

     文件      10713  2005-09-17 04:05  51单片机课程设计项目\项目仿真\项目11 基于AT89S52单片机多模式带音乐跑马灯的设计\LiWan.hex

     文件     117630  2009-03-23 21:34  51单片机课程设计项目\项目仿真\项目11 基于AT89S52单片机多模式带音乐跑马灯的设计\跑马灯.DSN

     文件     139561  2009-03-17 13:41  51单片机课程设计项目\项目仿真\项目12  LED数字倒计时器的设计\Last Loaded LED数字倒计时器的设计.DBK

     文件       2365  2009-02-19 16:45  51单片机课程设计项目\项目仿真\项目12  LED数字倒计时器的设计\LED.hex

     文件     139561  2009-03-23 21:39  51单片机课程设计项目\项目仿真\项目12  LED数字倒计时器的设计\LED数字倒计时器的设计.DSN

     文件        742  2009-03-23 21:39  51单片机课程设计项目\项目仿真\项目12  LED数字倒计时器的设计\LED数字倒计时器的设计.PWI

     文件     116154  2009-03-17 13:13  51单片机课程设计项目\项目仿真\项目13  简易函数信号发生器的设计\项目13  简易函数信号发生器的设计.DSN

     文件       3694  2009-03-17 13:12  51单片机课程设计项目\项目仿真\项目13  简易函数信号发生器的设计\项目13  简易函数信号发生器的设计.hex

     文件        766  2009-03-23 21:41  51单片机课程设计项目\项目仿真\项目13  简易函数信号发生器的设计\项目13  简易函数信号发生器的设计.PWI

     文件     113867  2009-03-19 15:27  51单片机课程设计项目\项目仿真\项目14  基于AT89S52单片机数字温度计的设计\数字温度计.DSN

     文件       1028  2009-03-23 21:40  51单片机课程设计项目\项目仿真\项目14  基于AT89S52单片机数字温度计的设计\数字温度计.PWI

     文件       1885  2009-03-19 15:24  51单片机课程设计项目\项目仿真\项目14  基于AT89S52单片机数字温度计的设计\项目14  基于AT89S52单片机数字温度计的设计.hex

     文件     112961  2009-03-17 13:17  51单片机课程设计项目\项目仿真\项目15 基于单片机LED点阵显示电子钟的设计\项目15 基于单片机的LED点阵显示电子时钟设计.DSN

     文件       1499  2009-03-17 13:16  51单片机课程设计项目\项目仿真\项目15 基于单片机LED点阵显示电子钟的设计\项目15 基于单片机的LED点阵显示电子时钟设计.hex

     文件        742  2009-03-23 21:41  51单片机课程设计项目\项目仿真\项目15 基于单片机LED点阵显示电子钟的设计\项目15 基于单片机的LED点阵显示电子时钟设计.PWI

     文件       1454  2009-03-17 15:45  51单片机课程设计项目\项目仿真\项目18  基于AT89S52单片机抢答器的设计\抢答器.asm

     文件      88351  2009-03-18 08:37  51单片机课程设计项目\项目仿真\项目18  基于AT89S52单片机抢答器的设计\抢答器.DSN

     文件        183  2009-03-11 10:05  51单片机课程设计项目\项目仿真\项目18  基于AT89S52单片机抢答器的设计\抢答器.hex

     文件          0  2012-03-21 20:08  51单片机课程设计项目\项目仿真\项目18  基于AT89S52单片机抢答器的设计\抢答器.SDF

............此处省略441个文件信息

评论

共有 条评论