原创
自己写的计算器程序(6位LED动态显示,中断键盘扫描,C语言)
自己编写的计算器
键盘扫描采用的中断方式,相关的防抖动算法在程序的注释里应该就可以看出来。采用的是防抖动标志位,和防抖动标志位清除位定时清除防抖动标志位的方法来获得理想的防抖动效果。这是键码处理程序正常运行的关键。
键码处理程序就在KeyProcess.c中,它是键码处理的主程序,用于根据程序的状态对不同的功能进行分派。当然再看下去你会发现程序还在继续分派,因为有不同的状态,按键的功能会有很大不同,对按键要酒性和多不同的响应。
键码处理程序首先判断是计时模式还是计算器模式,如果是计算器模式,这调用计算器程序来进行相应处理。当工作在计算器模式时,就可以当作计算器使用了。计算器程序是使用状态判断来进行计算的,一共分为3个状态,等待第一个操作数输入,等待运算符输入,等待第二个操作数输入。在不同的输入模式下对数据进行处理。因此可以实现连续运算。但它并不会判断运算优先级。
[ 本帖最后由 superyongzhe 于 2007-8-28 20:44 编辑 ]
附件
- Calculator.rar (41.1 KB)
2007-8-11 09:25, 下载次数: 206
这个没有源代码
- CalculatorCode.rar (112.89 KB)
2007-8-11 09:25, 下载次数: 478
这个是有源代码的
- DynamicLEDFlow.JPG (47.78 KB)
2007-8-11 09:37
- RunTime.JPG (178.42 KB)
2007-8-11 09:37
- DynamicLED2_2.rar (76.95 KB)
2007-8-11 11:52, 下载次数: 153
这是前期版本,很多功能都没有,只是一个框架,发出来主要是便于大家查看
文章评论(0条评论)
登录后参与讨论