久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3201|回復: 1
打印 上一主題 下一主題
收起左側

單片機傳送帶產品計數器(附仿真源文件和程序)

[復制鏈接]
跳轉到指定樓層
樓主
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)


利用單片機實現生產線的自動計數
  #include"lcd1602.h"
#define uchar unsigned char
#define uint unsigned int
    uchar out[6];
sbit STAR_KEY =P3^2;//定義鍵與單片機的連接引腳
sbit L0=P1^0;  //定義SFR中引腳的位
sbit L1=P1^1;
sbit L2=P1^2;
sbit L3=P1^3;
sbit L4=P1^4;
sbit L5=P1^5;
sbit L6=P1^6;
sbit L7=P1^7;

sbit MOTOR=P3^0;
uchar n[2]={1,0};
void delayms(uint x)   //延時子程序
{
   uchar y;
   while(x--)
   {
     for(y=0;y<123;y++){;}
   }
}
uchar Keynum()  //按鍵子程序1
{
    uchar key=0;
    STAR_KEY=1; //置初值
    if(STAR_KEY==0){delayms(10);if(STAR_KEY==0)n[0]=0;n[1]=1;}  //按下STAR鍵則n[0]=0;n[1]=1
    return n[1];  //返回n值
}
void xianshi(uint dispbuf)   //顯示子程序
{
  out[0]=dispbuf/10000+0x30;
  out[1]=((dispbuf%10000)/1000)+0x30;
  out[2]=((dispbuf%1000)/100)+0x30;
  out[3]=((dispbuf%100)/10)+0x30;
  out[4]=dispbuf%10+0x30;
  out[5]='\0';
  LCD_Initial();          //LCD初始化
  LCD_Prints(1, 0,"The Speed Is");   //LCD輸出
  LCD_Prints(10, 1,"n/min");
  LCD_Prints(4, 1,out);      
}
uint qiuzhi() //求用撥碼盤所置數的值的子程序
{
    uchar a;
    uchar b;
    uchar c;
    uchar d;
    uchar e;
    uchar f;
    uchar g;
    uchar h;
  
    uint p=0;
    if (L0==1) {a=1;} else {a=0;} //將電平信號變為數字的值
    if (L1==1) {b=1;} else {b=0;}
    if (L2==1) {c=1;} else {c=0;}
    if (L3==1) {d=1;} else {d=0;}
    if (L4==1) {e=1;} else {e=0;}
    if (L5==1) {f=1;} else {f=0;}
    if (L6==1) {g=1;} else {g=0;}
    if (L7==1) {h=1;} else {h=0;}
    p=a+b*2+c*2*2+d*2*2*2+e*2*2*2*2+f*2*2*2*2*2+g*2*2*2*2*2*2+h*2*2*2*2*2*2*2;
    return p;   // 返回所求的P值
}
void main(void)   //主程序
{
    uint q;
    IT0=1;       //負跳變觸發
    EA=1;       //開總允許中斷
    EX0=1;       //開INTO中斷
      
    TMOD=0X05;    //置T0為計數器    方式1
    TL0=0;   //置計數器初值
    TH0=0;
    while(1)    //無限循環
    {
       q=qiuzhi();     //調用求值子程序求出所置的數
       if (MOTOR==1) {xianshi(q);} else {xianshi(TL0);Keynum();TR0=n[1];} //當電動機關閉時顯示用薄碼盤所置的數并停止計數,電機啟動時則開始計數,并顯示計數值
       if (TL0==q) {TR0=0;MOTOR=1;} else {Keynum();MOTOR=n[0];} //當計數值與所置數相同時關閉電機,停止計數,當計數值不等時則將電機啟動與關閉交由按鍵控制,所以不存在計數值超過置數值的情況
    }         
}
void Int0(void) interrupt 0  //中斷服務程序,工作寄存器用0組
{
    TL0=0;TR0=1;      //重置計數值,重新開始計數
}



仿真代碼51hei下載地址:
傳送帶產品計數器的設計(LCD顯示).7z (30.88 KB, 下載次數: 57)

評分

參與人數 1黑幣 +20 收起 理由
admin + 20 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏3 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:1126506 發表于 2024-6-24 09:15 | 只看該作者
你好,我下載下來這個了,重啟動和設定計數值好使,急停和計數 沒搞明白
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产二区av| 精品一区二区三区四区视频 | 国产一区二区三区 | 日韩精品一区二区三区四区 | 免费一区二区三区 | 亚洲国产小视频 | 成人在线亚洲 | 九九99精品 | 亚洲人成人一区二区在线观看 | 麻豆精品久久 | 亚洲成a| 国产精品国产a | 国产精品一区在线观看 | 欧美成人精品激情在线观看 | 欧美日韩一卡 | 久久国产精品精品国产色婷婷 | 在线视频一区二区 | 久久久91精品国产一区二区精品 | 99久久亚洲 | 中文字幕欧美一区 | 91成人在线 | 日本三级日产三级国产三级 | 一区二区三区网站 | 有码一区 | 日日天天 | 国产精品亚洲精品 | 久久人爽 | 精品国产一级片 | 一区二区三区中文字幕 | 午夜三级在线观看 | 亚洲精品片 | 成人av鲁丝片一区二区小说 | 国产精品久久av | 日韩欧美三级在线 | 亚洲精品一区二区在线 | 少妇一级淫片免费播放 | 九一视频在线播放 | 国产精品高潮呻吟久久 | 国产精品久久久久久久毛片 | 国产激情免费视频 | 美女黄视频网站 |