hai312546
hai312546
闲谈莫论人是非,静坐常思己之过。
关注数: 4
粉丝数: 6
发帖数: 262
关注贴吧数: 13
晚上约夜宵 蛮久没吃夜宵了,想吃夜宵,吃完就一拍两散的那种。
电车上牌发票名字不是本人怎么办 买的二手车没牌,发票合格证等都齐全,网上预约说是要发票名字是本人的,有人知道怎么处理么?谢谢,
应用型本来在哪? 桂电的网络工程(应用型本科)这个专业是不是在东区?毕业一年不清楚了,惭愧……
求教at24C08一个程序,急求解!!!! 程序如下,有数码管显示读取的数据,但是每次断电后再接电显示的是同一个数,而不是断电时时的数,求各位大侠帮帮忙,看看哪里错了。谢谢 #include<reg52.h> #include<intrins.h> sbit SCL=P3^4; sbit SDA=P3^5; sbit shiwei=P2^0; sbit gewei=P2^1; sbit K5=P3^2; unsigned char sec,count; bit write1; #define OP_READ 0xa1 #define OP_WRITE 0xa0 unsigned char code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; void delay(x) //延时函数 { unsigned char i; while(x--) for(i=125;i>0;i--); } void start() //开始函数 { SCL=1; SDA=1; _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); SDA=0; _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); SCL=0; } //结束函数 void stop() { SCL=1; SDA=0; _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); SDA=1; _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); SCL=0; SDA=0; } bit ask() //应答函数 { bit answer; SDA=1; _nop_(); _nop_(); SCL=1; _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); answer=SDA; SCL=0; return answer; } unsigned char read() //读出24C08中的数据 { unsigned char j,y; for(j=0;j<8;j++) { SCL=1; y<<=1; y|=(unsigned char)SDA; SCL=0; } return y; } void write(unsigned char y) //向24C08写入数据 { unsigned char i; for(i=0;i<8;i++) { SDA=(bit)(y&0X80); _nop_(); SCL=1; _nop_(); _nop_(); SCL=0; y<<=1; } } void writeset(unsigned char add,unsigned char Data) //向指定地址写数据 { start(); write(OP_WRITE); ask(); write(add); ask(); write(Data); ask(); stop(); delay(4); } unsigned char ReadData() //读出当前24C08的数据 { unsigned char a; start(); write(OP_READ); ask(); a=read(); stop(); return a; } unsigned char readpoint(unsigned char set_add) //读指定地址的数据 { start(); //ask(); write(OP_WRITE); ask(); write(set_add); ask(); return (ReadData()); } void led() { P0=table[sec/10]; shiwei=0; delay(10); shiwei=1; P0=table[sec%10]; gewei=0; delay(10); gewei=1; } void main() { TMOD=0X01; EA=1; ET0=1; TH0=(65536-50000)/256; TL0=(65536-50000)%256; SDA=1; SCL=1; sec=readpoint(2); TR0=1; //读24C中上次储存的数据 while(1) { led(); if(write1==1) { write1=0; writeset(2,sec); } if(K5==0){ delay(10); if(K5==0){ sec=0; } } } } void to() interrupt 1 { TH0=(65536-50000)/256; TL0=(65536-50000)%256; count++; if(count==20) { count=0; sec++; write1=1; if(sec==100) sec=0; } }
1
下一页