完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
|
#include
#include #define uchar unsigned char #define uint unsigned int uchar dig[]="0123456789"; void delay(uchar MS) //延时 { uchar i,j; for (i=0;i for(j=0;j<1141;j++); } } void start() //twi启动 { TWCR=(1< void stop() //twi 停止 { TWCR=(1< void write_one(uchar add,uchar data) //往特定地址写数据 { start(); TWDR=(0xa0+0x00)<<1+0x00; TWCR = (1< TWCR = (1< TWCR=(1< delay(10); } uchar read_one(uchar add) //读取特定地址的单个字节 { uchar temp; start(); TWDR=(0xa0+0x00)<<1+0x00; TWCR = (1< TWCR = (1< TWDR=(0xa0+0x00)<<1+0x01; TWCR = (1< temp = TWDR; return temp; } void twi_init() //twi 初始化 { DDRC|=BIT(0)|BIT(1); TWBR=0X30; TWCR=0x00; TWSR=0X02; } void write_com(uchar com) //液晶设置 { PORTA&=~BIT(4); PORTA&=~BIT(5); PORTB=com; PORTA|=BIT(6); delay(1); PORTA&=~BIT(6); } void yejing_init() //1602液晶初始化 { DDRB=0Xff; DDRA|=BIT(4)|BIT(5)|BIT(6); DDRC=0XFF; PORTC=0XFF; PORTC&=~(1<<6); delay(50); write_com(0x38); delay(5); write_com(0x01); delay(5); write_com(0x0c); delay(5); write_com(0x06); delay(5); } void write_data(uchar data) //液晶写数据 { PORTA|=BIT(4); PORTA&=~BIT(5); PORTB=data; PORTA|=BIT(6); delay(1); PORTA&=~BIT(6); } void main() { uchar i,j,a,b; yejing_init(); twi_init(); write_one(0x02,0x11); i=read_one(0x02); a=i/10; b=i%10; write_com(0x80+0x00); delay(5); write_data(dig[a]); delay(5); write_data(dig[b]); delay (5); } 液晶显示不是17而是e8.到底是咋回事啊 |
|
相关推荐
2个回答
|
|
|
|
|
|
|
|
|
有没有人会啊
|
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
【瑞萨RA6E2】瑞萨E2S软件安装过程,等待过程玩下97_e2 studio_ZGZZ
140 浏览 0 评论
483 浏览 0 评论
【原创】【RA4M2-SENSOR开发板评测】低功耗+USB综合测试
815 浏览 0 评论
1346 浏览 2 评论
804 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
16903 浏览 31 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-2 16:22 , Processed in 0.623896 second(s), Total 73, Slave 55 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
2575