历史上的今天
今天是:2025年07月29日(星期二)
2020年07月29日 | 单片机啤酒瓶计数实验源程序
2020-07-29 来源:51hei
实验说明:在源程序中计算初值为0xf7,运用定时计数的方式2对程序进行计数,当程序开始运行,每按下一次按键(即每装一瓶啤酒)LED显示的计数就会+1直到8为止,当装满8瓶时再加1时LED的计数溢出就会跳转到0,这时相当于装满了9瓶,程序停止。直到下一箱啤酒开始装箱,依次反复进行。
单片机源程序如下:
#include char led[]={0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x07,0x7f,0x6f}; //led显示字模 sbit P37=P3^7; sbit P34=P3^4; void delay(unsigned int time) //约4ms的延时函数 { unsigned int j; for (;time>0;time--); for (j=0;j<500;j++); } void t0() interrupt 1 { TR0=0; //停止计数 P37=0; //启动电机运转 delay(1000); //延时,等待下一空箱运转到位待装啤酒 P37=1; //停止电机运转 TR0=1; //启动计数 } /**********主函数**************/ void main() { char i; TMOD=0x06; //T0计数方式 TL0=0xf7; //计数初值247 TH0=0xf7; TR0=1; //启动T0计数 ET0=1; //开中断 EA=1; P37=1; //停止电机运转 while(1) { i=256-TL0; //获取计数差值 P0=led[9-i]; //显示已装了多少啤酒 delay(1000); if(i==1) //是否已经装了(9-1)=8瓶 { while(P34==1); //等待装最后一瓶 P0=0x71; //显示已经装满符号 delay(100); } } }
上一篇:第三章 硬件基础知识学习
下一篇:单片机驱动EC11编码器源程序
史海拾趣
|
新手提问,请勿取笑,呵呵。 S3C2410在管脚复用的时候有这样一段代码: //set GPG1 as EINT9 for CS8900A value = INREG32(&pOalPortRegs->GPGCON); OUTREG32(&pOalPortRegs->GPGCON,(value & ~(3… 查看全部问答> |
|
产品最初正常工作,内核和应用程序都好的。过了一段时间后启动异常。 步骤是开机Bootloader启动,启动时加载了LOGO界面填充了液晶的显示缓冲区,后来就停在这里了。 我可以按照原来的方式烧内核,更换了画面也可以显示。 重烧了BOOTLOADER后也没 ...… 查看全部问答> |
|
在应用程序里如何查询某个USB连在哪一个USB controller上 在具有多个USB controller和多个USB设备的情况下, 如何查询这些USB设备连接在哪个USB controller上。 设备管理器中,如果选择“依连接排序设备”,就可以看到所 有设备的Device Tree,VC里有什么API或者什么方法可以获得 类似的信息吗? 请高 ...… 查看全部问答> |
|
看看有没有问题,第一次玩STM32,没有什么经验,硬件是按照st-link制作的,做了一些修改(st-link本来也是一块开发板)。准备自己做JTAG下载工具或者调试工具,呵呵,如果搞的定的话。PCB还没铺地,其他都OK了。发现一个错误,应该BOOT1接地,BO ...… 查看全部问答> |
|
μC/OS-II实时性能测试指标 衡量嵌入式实时操作系统的好坏一般主要参考以下主要性能指标参数: 任务切换时间、中断响应时间、任务响应时间、任务创建/删除时间、交替信号量时间、取得/释放信号量时间、交替消息队列传输时间等。本文仅对前2个 ...… 查看全部问答> |




