完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
#include
#define uint unsigned int #define uchar unsigned char ***it weixuan=P2^7; ***it output=P2^0; ***it input=P3^2; ***it lcden=P3^4; ***it lcdrs=P3^5; ***it lcdwr=P3^7; uint num=1; uint Hnumber,Lnumber,sum; uint d; uint m; uchar table[3]; void delay(uint x) { uint a,b=0; for(a=x;a>0;a--) { for(b;b<110;b++); } } void calculate() { Hnumber=TH0*256; Lnumber=TL0; sum=Hnumber+Lnumber; d=sum*0.172; table[0]=d%10+48; table[1]=(d%100)/10+48; table[2]=d/100+48; } void write_COM(uint com) { lcden=0; lcdrs=0; lcdwr=0; P0=com; delay(5); lcden=1; delay(5); lcden=0; } void write_DATA(uint datar) { lcden=0; lcdrs=1; lcdwr=0; P0=datar; delay(5); lcden=1; delay(5); lcden=0; } void init0() { lcden=0; write_COM(0x38); write_COM(0x0c); write_COM(0x06); write_COM(0x01); } void display() { write_COM(0x88); for(m=0;m<3;m++) { write_DATA(table[m]); } } void clear() { TH0=0; TL0=0; } void init() { weixuan=0x00; output=0; input=0; EA=1; EX0=1; IT0=1; } void main() { init(); init0(); TMOD=0X01; while(1) { TH0=0; TL0=0; output=1; delay(10); output=0; TR0=1; if(num==0) { while(input==1); TR0=0; delay(5); calculate(); init0(); write_COM(0x01); display(); delay(500); } } } void huibo() interrupt 0 { num=0; EX0=1; } 一直都是显示100.。。。为什么啊 改了好久了啊
|
|
相关推荐
|
|
只有小组成员才能发言,加入小组>>
求解外围电路实现的是4脚给持续低电平复位并正常工作,高电平不工作的原因
2084 浏览 1 评论
3629 浏览 3 评论
PIC1946程序有一个变量在运行过程中恢复初始值其他变量保持不变
2336 浏览 2 评论
2763 浏览 0 评论
PIC16F1825的RC5引脚,在主程序中操作无效,在中断中可以改变是为什么?
4027 浏览 5 评论
973浏览 0评论
用XC8编译PIC18F25K80时提示下面Error,求怎么解决这个问题
6360浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-4 05:27 , Processed in 0.385811 second(s), Total 40, Slave 32 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号