娇小w搡bbbb搡bbb,《第一次の人妻》,中国成熟妇女毛茸茸,边啃奶头边躁狠狠躁视频免费观看

歷史上的今天

今天是:2024年09月21日(星期六)

2020年09月21日 | 基于51單片機計算器源程序 可發送給上位機 可紅外

發布者:MindfulCreator 來源: 51hei關鍵字:51單片機  計算器  上位機  紅外 手機看文章 掃描二維碼
隨時隨地手機看文章

單片機程序如下:

#include"lcd12864.h"

#include"reg52.h"

#include"i2c.h"

#include"math.h"

sbit IRIN=P3^2;

int app=0;

unsigned char IrValue[6];

unsigned char Time;

unsigned char code smgduan[17]={

0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,

0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0X76};

void chuan()

{

TMOD=0X20;

TH1=0XFD;

TL1=0XFD;

TR1=1;

REN=1;

SM0=1;

SM1=1;

}

void delay(unsigned int i)

{

        while(i--);       

}

void IrInit()

{

        IT0=1;//下降沿觸發

        EX0=1;//打開中斷0允許

        EA=1;        //打開總中斷


        IRIN=1;//初始化端口

}  

char hongwai()

{

  if((smgduan[IrValue[2]/16]==0x06)&&(smgduan[IrValue[2]%16]==0x7d))

  return '0';

  if((smgduan[IrValue[2]/16]==0x3f)&&(smgduan[IrValue[2]%16]==0x39))

  return '1';

  if((smgduan[IrValue[2]/16]==0x06)&&(smgduan[IrValue[2]%16]==0x7f))

  return '2';

  if((smgduan[IrValue[2]/16]==0x6d)&&(smgduan[IrValue[2]%16]==0x79))

  return '3';

  if((smgduan[IrValue[2]/16]==0x3f)&&(smgduan[IrValue[2]%16]==0x7f))

  return '4';

  if((smgduan[IrValue[2]/16]==0x06)&&(smgduan[IrValue[2]%16]==0x39))

  return '5';

  if((smgduan[IrValue[2]/16]==0x6d)&&(smgduan[IrValue[2]%16]==0x77))

  return '6';

  if((smgduan[IrValue[2]/16]==0x66)&&(smgduan[IrValue[2]%16]==0x5b))

  return '7';

  if((smgduan[IrValue[2]/16]==0x6d)&&(smgduan[IrValue[2]%16]==0x5b))

  return '8';

  if((smgduan[IrValue[2]/16]==0x66)&&(smgduan[IrValue[2]%16]==0x77))

  return '9';

  if((smgduan[IrValue[2]/16]==0x3f)&&(smgduan[IrValue[2]%16]==0x6f))

  return '+';

  if((smgduan[IrValue[2]/16]==0x06)&&(smgduan[IrValue[2]%16]==0x6d))

  return '-';

  if((smgduan[IrValue[2]/16]==0x66)&&(smgduan[IrValue[2]%16]==0x4f))

  return '/';

  if((smgduan[IrValue[2]/16]==0x66)&&(smgduan[IrValue[2]%16]==0x3f))

  return 'x';

  if((smgduan[IrValue[2]/16]==0x3f)&&(smgduan[IrValue[2]%16]==0x07))

  return '=';

  if((smgduan[IrValue[2]/16]==0x66)&&(smgduan[IrValue[2]%16]==0x07))

  return '.';

   if((smgduan[IrValue[2]/16]==0x66)&&(smgduan[IrValue[2]%16]==0x7d))

   return 'p';

   if((smgduan[IrValue[2]/16]==0x66)&&(smgduan[IrValue[2]%16]==0x6d))

   return '|';

  else return 0xff;

}

main()

{


        char i,sign,s,j,k,h=0;

       unsigned char num;                 

  char temp[16];   //最大輸入16個

     bit firstflag;


     double a=0,b=0;

         chuan();

     IrInit();

     LCD_Init();


//    LCD_Write_com(0x01); //清屏

   

    while(1)


    {    if(app==1)

             {num=hongwai();

                 app=0;

             }

         else

                  num = KeyPro();


        if(num!=0xff)

        {

            if(j == 0)

                LCD_Write_com(0x01);

                                j=1;

             if(num=='|')

                         {

                           a=At24c02Read(1);

                           firstflag = 1;

                         }

            if(('+' == num) || ('-' == num) || ('x' == num) || ('/' == num) || ('=' == num)|| ('p' == num))

            {

                             if(num=='p')

                         {

                           LCD_Write_Char(i,0,num);

                           i++;

                           h=1;

                         }

                            else

                                {k=0;

                if(firstflag==0)     //flag=1為第一個數,0為第二個數

                {

                    sscanf(temp,"%f " ,&a);

                    firstflag = 1;

                                        if(h==1)

                                        a=a*a;

                }        

                else

                    {sscanf(temp," %f " ,&b);

                                        if(h==1)

                                        b=b*b;}


                for(s = 0;s<16;s++)

                    temp[s] = 0;

                                        LCD_Write_Char(i,0,num);

                                        i++        ;

             //////////////////

                if(num != '=')

                    sign = num;

                else

                {        j=0;

                                    i=0;

                    firstflag = 0;

                    switch(sign)

                    {

                        case '+' :a = a+b;break;

                        case '-' :a = a-b;break;

                        case 'x' :a = a*b;break;

                        case '/' :a = a/b;break;

                        default:break;

                    }

                    //LCD_Write_Char(1,1,answer);

                                        At24c02Write(1,a);   //在地址1內寫入數據num

                    sprintf(temp,"%.2f",a);    //輸出浮點型,無用的0不輸出

                     Write_String(0,3,temp);//顯示到液晶屏

                                         for(s=0;temp[s]!='

主站蜘蛛池模板: 巴彦县| 汉源县| 桂阳县| 舞钢市| 盐池县| 石城县| 平谷区| 敦煌市| 磐安县| 奇台县| 潮州市| 辽宁省| 新兴县| 隆尧县| 景德镇市| 定南县| 临颍县| 凤台县| 城固县| 武川县| 沈丘县| 通城县| 渝北区| 邵阳市| 宁海县| 延寿县| 宁河县| 辽宁省| 贵阳市| 和政县| 兴宁市| 开平市| 偃师市| 常山县| 仁布县| 布拖县| 大新县| 利津县| 东光县| 明水县| 清涧县|