您当前的位置:钢材 > 型钢 > 市场分析

投币充电器内部结构图,投币充电器工作原理

来源:头条 作者: chanong
分享到
关注德勤钢铁网在线:
  • 扫描二维码

    关注√

    德勤钢铁网微信

在线咨询:
  • 扫描或点击关注德勤钢铁网在线客服

点击此处设计投币多功能充电器的控制电路(阅读本文需要3分钟)

1、使用1元硬币设计的投币器或自制投币器;2、第一个硬币的数码管将被计数一次;3、使用倒计时显示,一个硬币将被充电20分钟。完毕。 2位数码管显示(投币这两个数码管用于计数和倒计时); 5、按确认键,不能投币,数码管不计数; 6 充电电压为5V,使用各种接口。下面是我的程序#include #define Coin_maxnum 20 //设置最大硬币数量为20 #define time_1 5 //设置1个硬币的充电时间为5分钟voidlay_ms(unsigned char x) //Delay function {inti ,j ;for(i=0;ifor(j=0;j125;j++);}void Time_Init(void); //定时器初始化函数{TMOD=0x01; //选择工作模式1TH0=0x3C; //设置初始值value ,timer 50MSTL0=0xB0; EA=1; //开启总中断ET0=1; //开启定时器0中断TR0=1; //开启定时器0 Start}void display(int date); //数码管display function char time_second_test_1; //第一通道计时char time_second_1;char time_minut_1;char Coin_num_1;char flagyes_1;char flagcoin_1;sbit CE_1=P3^6; //控制CN3052使能端子sbit key1=P2^0; //Key 1 coin sbit key2=P2^1; //按2键确认unsigned charreg[]={0xFA,0x82,0xB9,0xAB,0xC3 ,0x6B,0x7B,0xA2,0xFB,0xEB}; //0-9void main(void ) { char i,j,flagcoin_1, flagyes_1,coin_num_1;intshow,display_1; //显示i=0;j=0;flagcoin_1=0; //币标记flagyes_1=0; //标记确认Time_Init(); //定时器初始化函数CE_1=0;P2=0xff; //所有数码管都关闭P0=0x00;key1=1 ;while(1){if((key1==0)(flagyes_1==0)) //key1为按下无需确认即可开始充电{lay_ms(100); //延迟去抖if(key1==0){ Coin_num_1++; //增加币数if(coin_num_1==coin_maxnum+1) //限制投资币数{ Coin_num_1=1;}while(key1==0); //按钮松开等待} flagcoin_1=1; //硬币标记display_1=coin_num_1;//显示硬币数量P0=0x00;}if(( key2==0)(flagcoin_1==1)) //投币并确认key2 Key按下{ flagyes_1=1;}if(flagyes_1==1){ TR1=1; //启动T1定时器CE_1=1; //开始充电if(time_Second_test_1==20) //定时1s{ P0=0x00; //消隐time_Second_1++;time_Second_test_1=0;if(time_Second_1==60){ time_Second_1=0;time_minut_1++;if(time_minut_1==time_1*coin_num_1) //充电时间结束{time_minut_1=0;CE_1=0; //CN3052充电使能端低电平TR1=0; //关闭定时器flagyes_1=0; //确认标志清除Coin_num_1=0; //取消硬币标记display_1=0; //显示清除}}}if((time_1*coin_num_1-time_minut_1)==1){display_1=60-time_second_1;} //最后一分钟时显示秒数else {display_1=time_1*coin_num_1 - time_minut_1;//显示分钟}}show=display_1;display(show); //显示数码管}}

责任编辑:德勤钢铁网 标签:

热门搜索

相关文章

广告
德勤钢铁网 |市场分析

投币充电器内部结构图,投币充电器工作原理

chanong

|

点击此处设计投币多功能充电器的控制电路(阅读本文需要3分钟)

1、使用1元硬币设计的投币器或自制投币器;2、第一个硬币的数码管将被计数一次;3、使用倒计时显示,一个硬币将被充电20分钟。完毕。 2位数码管显示(投币这两个数码管用于计数和倒计时); 5、按确认键,不能投币,数码管不计数; 6 充电电压为5V,使用各种接口。下面是我的程序#include #define Coin_maxnum 20 //设置最大硬币数量为20 #define time_1 5 //设置1个硬币的充电时间为5分钟voidlay_ms(unsigned char x) //Delay function {inti ,j ;for(i=0;ifor(j=0;j125;j++);}void Time_Init(void); //定时器初始化函数{TMOD=0x01; //选择工作模式1TH0=0x3C; //设置初始值value ,timer 50MSTL0=0xB0; EA=1; //开启总中断ET0=1; //开启定时器0中断TR0=1; //开启定时器0 Start}void display(int date); //数码管display function char time_second_test_1; //第一通道计时char time_second_1;char time_minut_1;char Coin_num_1;char flagyes_1;char flagcoin_1;sbit CE_1=P3^6; //控制CN3052使能端子sbit key1=P2^0; //Key 1 coin sbit key2=P2^1; //按2键确认unsigned charreg[]={0xFA,0x82,0xB9,0xAB,0xC3 ,0x6B,0x7B,0xA2,0xFB,0xEB}; //0-9void main(void ) { char i,j,flagcoin_1, flagyes_1,coin_num_1;intshow,display_1; //显示i=0;j=0;flagcoin_1=0; //币标记flagyes_1=0; //标记确认Time_Init(); //定时器初始化函数CE_1=0;P2=0xff; //所有数码管都关闭P0=0x00;key1=1 ;while(1){if((key1==0)(flagyes_1==0)) //key1为按下无需确认即可开始充电{lay_ms(100); //延迟去抖if(key1==0){ Coin_num_1++; //增加币数if(coin_num_1==coin_maxnum+1) //限制投资币数{ Coin_num_1=1;}while(key1==0); //按钮松开等待} flagcoin_1=1; //硬币标记display_1=coin_num_1;//显示硬币数量P0=0x00;}if(( key2==0)(flagcoin_1==1)) //投币并确认key2 Key按下{ flagyes_1=1;}if(flagyes_1==1){ TR1=1; //启动T1定时器CE_1=1; //开始充电if(time_Second_test_1==20) //定时1s{ P0=0x00; //消隐time_Second_1++;time_Second_test_1=0;if(time_Second_1==60){ time_Second_1=0;time_minut_1++;if(time_minut_1==time_1*coin_num_1) //充电时间结束{time_minut_1=0;CE_1=0; //CN3052充电使能端低电平TR1=0; //关闭定时器flagyes_1=0; //确认标志清除Coin_num_1=0; //取消硬币标记display_1=0; //显示清除}}}if((time_1*coin_num_1-time_minut_1)==1){display_1=60-time_second_1;} //最后一分钟时显示秒数else {display_1=time_1*coin_num_1 - time_minut_1;//显示分钟}}show=display_1;display(show); //显示数码管}}


市场分析