利用定时/计数器T1产生定时时钟,由P1口控制8个发光二极管,使8个提示灯依次一个一个闪动,闪动频率为10次每秒(8个灯亮一遍为一个周期),循环
2015-09-01 19:28
1666 查看
#include<reg52.h> #include<intrins.h> #define uchar unsigned char #define uint unsigned int uchar tt,aa; //sbit d1=P1^0; void main() { TMOD=0x10; //选择定时器 t0的工作方式为1 EA=1; TH0=(65536-50000)/256; TL0=(65536-50000)%256; ET1=1; TR1=1; aa=0xfe; while(1) { if(tt==2) { tt=0; P1=aa; aa=_crol_(aa,1); } } } void exter() interrupt 3 { TH0=(65536-50000)/256; TL0=(65536-50000)%256; tt++; }这个程序快恶心死我了,一次写完之后竟然不能执行又找不出原因气的发狂啊。为了不让自己头疼我决定去上晚自习(班长催的紧啊)两个星期只去了三次,其余晚上时间都在学习郭天祥!走到楼下突然想起自己居然没有bug,只是在那干想,不甘心啊,回去继续修改!!!经过bug之后才发现程序不能进入到for语句中。我以为是外边错了。一直在外边找啊,结果可想而知。最后才发现原来是给aa赋值时弄成P1了,最终解决了问题!(中间曾将定时器1换成了0因为自己以前写的全是用定时器0写的结果还是不行,因此由进行下一种方式的找错,调试程序虽然是个耐力活,但是还需要准确的方法啊)
相关文章推荐
- Intent以及onActivityResult方法的使用
- Windows环境,svn服务器地址换了,如何更新本地工作目录
- C语言基础知识之(十九):内存操作的其他函数:内存初始化,内存拷贝,内存比较
- json to object
- flume:支持重命名、移动文件的roll file sink升级版
- 精通Hibernate——Hibernate的两种映射类型说明
- 如何营造游戏的打击感(二):连续打击
- PHP数组函数
- 随笔
- php包管理机制-支持php5.3的方法
- js获取url传递参数
- 如何营造游戏的打击感(一)
- Java中的native关键字浅析(Java Native Interface)
- 自定义的连接MongoDB的工具类(DBHelper)
- NSObject.h解(一)
- Eclipse中如何将Java项目转换为WEB项目
- PHP异步并发访问mysql简单实现
- hdu 5226 Tom and matrix,lucas定理
- 上传Excel数据到数据库中(Asp.net自动生成三层代码 第六集 )
- C语言基础知识之(十八):堆内存的分配函数及运用