本系统基于stm32f10x为核心,数码管显示计数值和目标数量,在软件中设置目标人数量可设置的最大值。通过矩阵按键设置目标数量。按键计数设置传送带计数值,按键按下计数值数量加一,计数值与目标数量比较数量相等。计数值数量重置蜂鸣器报警,计数值和目标值不相等继续计数。
#include "stm32f10x.h"
void GPIO_Config(void);
void delay(uint32_t d){
uint32_t i=0;
uint32_t n=0;
for(i=0;i<d;i++)
for(n=0;n<800;n++);
}
uint8_t conveyor_scan(){
if(GPIO_ReadInputDataBit(GPIOC, GPIO_Pin_9)==0){
return 1;
}
return 0;
}
void keymat_line_set(uint8_t c){
uint8_t bb[]={Bit_SET,Bit_SET,Bit_SET,Bit_SET};
bb[c]=Bit_RESET;
GPIO_WriteBit(GPIOC,GPIO_Pin_4, bb[0]);
GPIO_WriteBit(GPIOC,GPIO_Pin_5, bb[1]);
可以自己按照这个思路进行自行设计,也可以通过百度网盘列表下载已经做好的
https://www.aiesst.cn/share.html