完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
这是我写的程序,不知那里错了,望指教,目的就为了练习II2C
#include #include #define uchar unsigned char #define uint unsigned int uchar code duan[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; uchar buf[3]={0x21,0x44,0x00}; uchar buf1[6]; uchar code wei[]={0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01}; ***it SDA=P1^6; ***it SCL=P1^7; void delay1ms(uint z) { uint x=0; uchar y=0; for(x=z;x>0;x--) for(y=110;y--;y>0); } void delay5us() { _nop_();_nop_();_nop_();_nop_();_nop_();_nop_(); } void start() { SCL=1; delay5us(); SDA=1; _nop_();_nop_(); SDA=0; delay5us(); } void stop() { SDA=0; delay5us(); SCL=1; delay5us(); SDA=1; delay5us(); } void write_byte(uchar temp) { uchar i=0; SCL=1; SDA=1; delay5us(); SDA=0; SCL=0; delay5us(); for(i=0;i<8;i++) { SCL=0; SDA=(bit)(temp&0x80); delay5us(); SCL=1; delay5us(); temp=temp<<1; } SCL=0; delay5us(); SDA=1; delay5us(); } uchar read_byte() { uchar temp=0,i=0; SCL=1; SDA=1; SDA=0; delay5us(); SCL=0; delay5us(); for(i=0;i<8;i++) { SCL=1; if(SDA==1) { temp=temp|0x01; } SCL=0; delay5us(); temp=temp<<1; } return temp; } void ACK() { uchar i=0; SCL=1; while(SDA==1&&i<256)i++; SCL=0; delay5us(); } void write(uchar add,uchar dat) { start(); write_byte(0xd0); ACK(); write_byte(add); ACK(); write_byte(dat); ACK(); stop(); } uchar read(uchar add) { uchar dat=0; start(); write_byte(0xd0); ACK(); write_byte(add); ACK(); start(); write_byte(0xd1); ACK(); dat=read_byte(); ACK(); stop(); return dat; } void init() { SCL=1; delay5us(); SDA=1; delay5us(); write(0x07,0x93); write(0x00,0x00); write(0x01,0x00); write(0x02,0x00); } void disp() { uchar i=0; for(i=0;i<6;i++) { P2=wei; P0=duan[buf1]; delay1ms(5); P0=0xff; P2=0x00; } } void main() { init(); while(1) { buf1[1]=read(0x00)/16; delay1ms(5); buf1[0]=read(0x00)%16; delay1ms(5); buf1[3]=read(0x01)/16; delay1ms(5); buf1[2]=read(0x01)%16; delay1ms(5); buf1[5]=read(0x02)/16; delay1ms(5); buf1[4]=read(0x02)%16; delay1ms(5); } }
|
|
相关推荐
5个回答
|
|
{:soso_e113:}
|
|
|
|
{:soso_e113:}
|
|
|
|
以后写程序注意注释,这样子估计没人帮你解答的 一个注释都没有 ,大婶们都注意效率的
|
|
|
|
|
|
|
|
不错的文件,值得收藏
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-使用AHT20进行环境监测之AHT20传感器介绍
203 浏览 0 评论
761 浏览 0 评论
806 浏览 1 评论
基于瑞萨FPB-RA4E2智能床头灯项目——1编译环境搭建与点亮驱动ws2812全彩LED
743 浏览 0 评论
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-LCD显示图片编程示例之介绍mmap
1195 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
11806 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-27 19:30 , Processed in 1.087570 second(s), Total 80, Slave 62 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号