为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

pcf8591测试程序

2017-09-18 6页 doc 19KB 164阅读

用户头像

is_977556

暂无简介

举报
pcf8591测试程序pcf8591测试程序 #include "24c02.h" SCL = 0; iic_stop(); void iic_start(void) return 0; { } SDA = 1; else _nop_(); { SCL = 1; SCL = 0; somenop; return 1; SDA = 0; } somenop; } SCL = 0; } void iic_sendbyte(unsigned char byt) { void iic_stop(void) unsigned cha...
pcf8591测试程序
pcf8591测试程序 #include "24c02.h" SCL = 0; iic_stop(); void iic_start(void) return 0; { } SDA = 1; else _nop_(); { SCL = 1; SCL = 0; somenop; return 1; SDA = 0; } somenop; } SCL = 0; } void iic_sendbyte(unsigned char byt) { void iic_stop(void) unsigned char i; { for(i=0;i<8;i++) SDA = 0; { _nop_(); if(byt&0x80) SCL = 1; SDA = 1; somenop; else SDA = 1; SDA = 0; } somenop; SCL = 1; void iic_ack(bit ackbit) byt <<= 1; { somenop; if(ackbit) SCL = 0; SDA = 0; } else } SDA = 1; somenop; unsigned char iic_recbyte(void) SCL = 1; { somenop; unsigned char da; SCL = 0; unsigned char i; SDA = 1; for(i=0;i<8;i++) somenop; { } SCL = 1; somenop; bit iic_waitack(void) da <<= 1; { if(SDA) SDA = 1; da |= 0x01; somenop; SCL = 0; SCL = 1; somenop; somenop; } if(SDA) return da; { } 1 #ifndef _24C02_H void wrbyte_24c02(unsigned char #define _24C02_H add,unsigned char dat) { #include "reg52.h" // Device Address 1100 000 R/W #include "intrins.h" iic_start(); iic_sendbyte(0xa0); #define somenop iic_waitack(); {_nop_();_nop_();_nop_();_nop_();_nop_();} iic_sendbyte(add); iic_waitack(); iic_sendbyte(dat); sbit SCL = P2^0; iic_waitack(); sbit SDA = P2^1; iic_stop(); delay(10); void iic_start(void); } void iic_stop(void); void iic_ack(bit ackbit); unsigned char rdbyte_24c02(unsigned char void iic_sendbyte(unsigned char byt); add) void wrbyte_24c02(unsigned char { add,unsigned char dat); // Device Address 1100 000 R/W void delay(unsigned char t); unsigned char da; iic_start(); bit iic_waitack(void); iic_sendbyte(0xa0); unsigned char i2c_recbyte(void); iic_waitack(); unsigned char rdbyte_24c02(unsigned char iic_sendbyte(add); add); iic_waitack(); iic_start(); iic_sendbyte(0xa1); #endif iic_waitack(); da = iic_recbyte(); #include "reg52.h" iic_ack(0); #include "24c02.h" iic_stop(); return da; unsigned char dspflag; } unsigned char cnt; unsigned char tflag; void delay(unsigned char t) unsigned char code dsp_code_ca[] = { {0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0 unsigned char i; x80,0x90}; while(t--) { void display(unsigned char d); for(i=0;i<112;i++); void init_t0(void); } } void main() { 2 //wrbyte_24c02(0x00,0x00); P2 |= 0xC0; cnt = rdbyte_24c02(0x00); P2 &= 0x3F; wrbyte_24c02(0x00,cnt+1); } if((dspflag == 1)&&(d>9)) init_t0(); { while(1) P0 = 0xFF; { P2 |= 0xE0; display(cnt); P2 &= 0x1F; } } P0 = dsp_code_ca[d%100/10]; P2 |= 0xE0; void isr_t0(void) interrupt 1 P2 &= 0x1F; { P0 = 0x40; tflag++; P2 |= 0xC0; if(tflag == 16) P2 &= 0x3F; { } tflag = 0; if(dspflag == 2) dspflag ++; { if(dspflag == 3) P0 = 0xFF; dspflag = 0; P2 |= 0xE0; } P2 &= 0x1F; } P0 = dsp_code_ca[d%100%10]; void init_t0(void) P2 |= 0xE0; { P2 &= 0x1F; TMOD = 0x02; P0 = 0x80; TH0 = 0x06; P2 |= 0xC0; TL0 = 0x06; P2 &= 0x3F; ET0 = 1; } EA = 1; } TR0 = 1; } void display(unsigned char d) { if((dspflag == 0)&&(d>99)) { P0 = 0xFF; P2 |= 0xE0; P2 &= 0x1F; P0 = dsp_code_ca[d/100]; P2 |= 0xE0; P2 &= 0x1F; P0 = 0x20; 3
/
本文档为【pcf8591测试程序】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索