OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3353|回复: 1

对射红外传感51能用怎么改到能在miniSTM32上使用

[复制链接]

2

主题

4

帖子

0

精华

新手入门

积分
3
金钱
3
注册时间
2016-5-19
在线时间
1 小时
发表于 2016-5-19 11:10:36 | 显示全部楼层 |阅读模式
#include<reg52.h>
#define ucharunsigned char
#defineuint  unsigned  int      
ucharduan[10]={0xc0,0Xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};          //所需的段的位码
//ucharwei[4]={0XEf,0XDf,0XBf,0X7f};                                 //位的控制端     (开发板)
ucharwei[4]={0X80,0X40,0X20,0X10};                                 //位的控制端       (仿真)
uint z,x,c,v,date;      //定义数据类型
uintdispcount=0;
/******************************************************************
延时函数
******************************************************************/
voiddelay(uchar t)
{
  uchar i,j;
   for(i=0;i<t;i++)
   {
                 for(j=13;j>0;j--);
                 { ;
                 }
   }
}
/**********************************************************************
                数码管动态扫描
*********************************************************************/
voidxianshi()
{
/*****************数据转换*****************************/
  z=date/1000;                                          //求千位
  x=date%1000/100;                                 //求百位
  c=date%100/10;                     //求十位
  v=date%10;                                           //求个位
      P2=wei[0];
                 P0=duan[z];
                 delay(50);  
                  P2=wei[1];
      P0=duan[x];
                 delay(50);  
                  P2=wei[2];
      P0=duan[c];
                 delay(50);  
      P2=wei[3];
      P0=duan[v];
                 delay(50);  
    }
/*************************************************************************
                                主函数   
**************************************************************************/
voidExtInt0() interrupt 0 //中断服务程序
{
dispcount++;//每按一次中断按键,计数加一
if(dispcount==9999) //计数范围0-9999
{dispcount=0;}
}
/*************************************************************************
                                主函数   
**************************************************************************/
void main()
{  
TCON=0x01; //中断设置
IE=0x81;
while(1)
                {               
    date=dispcount;
                xianshi();
    }
}                 



这是程序                                             
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

2

主题

4

帖子

0

精华

新手入门

积分
3
金钱
3
注册时间
2016-5-19
在线时间
1 小时
 楼主| 发表于 2016-5-19 11:11:01 | 显示全部楼层
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-2-27 08:39

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表