Chat
Danh mục
Mạch đếm sản phẩm Setup Nút Bấm - ChipKool

Mạch đếm sản phẩm Setup Nút Bấm - ChipKool

Số lượng:
Thêm vào giỏ
Mạch đếm sản phẩm Setup Nút Bấm - ChipKool đã được thêm vào giỏ hàng



1.Mạch Mô Phỏng Protues 7.10.. Chỗ nút bấm ngắt đó sau này làm mạch thật chính là cảm biến thu phát hông ngoại..




VIDEO DEMO


2.Mạch Nguyên Lý chuẩn:
                          

3.Mạch In orcad 9.2:







 4.Code chỉ chạy đếm sản phẩm mà chưa có setup Khi nào test ngon chip sẽ cho lên sàn.


#include <REGX51.H>
#include <stdio.h>
#define bat 1
#define tat 0
#define data P0

sbit Led1 = P1^0;
sbit Led2 = P1^1;
sbit L1 = P2^0;
sbit L2 = P2^1;
sbit L3 = P2^2;
sbit L4 = P2^3;

sbit set = P1^4;
sbit up = P1^5;
sbit dw = P1^6;
sbit ok = P1^7;
unsigned int m[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//ma led 7 doan anode chung
unsigned int num,donvi,chuc,tram,nghin;
unsigned int dem,donvi1,chuc1,tram1,nghin1;
/////////////////////////////////////////////
void delay(unsigned char ms)
{
unsigned char i,j;
for (i=0;i<ms;i++)
for (j=0;j<255;j++){;}
}
//////////////////////////////////////////////
void hienthi(void)
{
unsigned int k;
for(k=0;k<5;k++)
{
nghin=num/1000;
tram=(num%1000)/100;
chuc=((num%1000)%100)/10;
donvi=((num%1000)%100)%10;
data=m[nghin];
L4=bat;
delay(10);
L4=tat;
data=m[tram];
L3=bat;
delay(10);
L3=tat;
data=m[chuc];
L2=bat;
delay(10);
L2=tat;
data=m[donvi];
L1=bat;
delay(10);
L1=tat;
}
}

////////////////////////////////////////
void hienthidem(void)
{
unsigned int k;
for(k=0;k<5;k++)
{
nghin1=dem/1000;
tram1=(dem%1000)/100;
chuc1=((dem%1000)%100)/10;
donvi1=((dem%1000)%100)%10;
data=m[nghin1];
L4=bat;
delay(10);
L4=tat;
data=m[tram1];
L3=bat;
delay(10);
L3=tat;
data=m[chuc1];
L2=bat;
delay(10);
L2=tat;
data=m[donvi1];
L1=bat;
delay(10);
L1=tat;
}
}


 ////////////////////////////////////////////////
 void EXT0_Init(void)
 {
 EX0=1;      //Kich hoat ngat ngoai 0
 IT0=1;  //Chon ngat theo suon xuong
}
void Ngat_Ngoai_0(void) interrupt 0
{
//Chuong trinh con phuc vu ngat ngoai 0

//num=90;
//dem++;
//if(dem=num){dem=0;}

hienthi();
num++;
}

 ////////////////////////////////////////////////////
 void main(void)
 {
 EA=1;
 EXT0_Init();

  while(1)
{
hienthi();
//hienthidem();
//setup();
//if(dem=num){Led1=Led2=tat;}
}
}



( Mua mạch + Code Full Setup Liên hệ: echipkool.com@gmail.com)


Blog Điện Tử | Tin Học - Chia sẻ kiến thức - Kết nối đam mê điện tử