- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
单片机计算器(Singlechip calculator)
单片机计算器(Singlechip calculator)
#包括 reg51. H / /头文件
#定义unsigned int /单位
#定义unsigned char函数
公司lcden = P2 ^ 3;/ /定义引脚
普通RS = P2 ^ 4;
公司^ RW = P2 0;
公司忙= P0 ^ 7;
焦I,J,温民,num_1;
长,B,C;/ /,第一个数第二个数B,C,得数
浮a_c,b_c;
函数的旗帜,富豪;/ /旗表示是否有符号键按下,富豪表征按下的是哪个符号
函数代码表[ ] = {
7,8,9,0,
4,5,6,0,
1,2,3,0,
0,0,0,0 };
函数代码表[ ] = {
7,8,9,0x2f-0x30,
4,5,6,0x2a-0x30,
1,2,3,0x2d-0x30,
0x01-0x30,0,0x3d-0x30,0x2b-0x30 };
延时(函数Z)/延迟函数
{
函数y;
对于(z;z 0;z -)
对于(y = 0;y<110;y + +);
}
无效check() /判断忙或空闲
{
做{
P0 = 0xff;
RS = 0;//指令
RW = 1;//读
lcden = 0;//禁止读写
延迟(1);//等待,液晶显示器处理数据
lcden = 1;//允许读写
}(忙= = 1时);/ /判断是否为空闲为忙,1,0为空闲
}
无效write_com(UCHAR COM)/写指令函数
{
P0 = COM;/ / COM指令付给P0口
RS=0;
RW = 0;
lcden = 0;
check();
lcden = 1;
}
write_date(void函数日期)/写数据函数
{
P0 =日期;
RS=1;
RW = 0;
lcden = 0;
check();
lcden = 1;
}
无效()/初始化
{
数字= 1;
lcden = 1;//使能信号为高电平
write_com(0X38);/ / 8位,2行
write_com(0x0c);/ /显示开,光标关,不闪烁*/
write_com(0x06);/ /增量方式不移位显竟獗暌贫柚?
write_com(0x80);/ /检测忙信号
write_com(0x01);/ /显示开,光标关,不闪烁
num_1 = 0;
我= 0;
j=0;
= 0;//第一个参与运算的数
B = 0;//第二个参与运算的数
c=0;
标志= 0;//旗表示是否有符号键按下,
富豪= 0;//富豪表征按下的是哪个符号
}
无效keyscan() /键盘扫描程序
{
P3 = 0xfe;
如果(P3)!= 0XFE)
{
延迟(20);延迟20ms
如果(P3)!= 0XFE)
{
温度= P3和0xf0;
开关(温度)
{
案例:num = 0 0xE0;
打破;
案例0xd0:数= 1;
打破;
案例0xb0:数= 2;
打破;
案例0x70:数= 3;
打破;
}
}
当(P3)!= 0XFE);
如果(Num = = 0 | | Num = = 1 | | Num = = 2)/如果按下的是7,8”或9
{
如果(j)!= 0)
{
write_com(0x01);
j=0;
}
如果(旗= = 0)/没有按过符号键
{
a = * * 10 +表[数字];
}
其他/ /如果按过符号键
{
b = b * 10 +表[数字];
}
}
如果按下的是/其他/ /
{
标志=1;
富豪= 4;// 4表示除号已按
}
我=表[数];
write_date(0x30 +我);
}
P3 = 0xfd;
如果(P3)!= 0xfd)
{
延迟(5);
如果(P3)!= 0xfd)
{
温度= P3和0xf0;
开关(温度)
{
案例:num = 4 0xE0;
打破;
案例0xd0:数= 5;
打破;
案例0xb0:数= 6;
打破;
案例0x70:数= 7;
打破;
}
}
当(P3)!= 0xfd);
如果(Num = = 4 | | Num = = 5 | | Num = = 6和民!= 7)/如果按下的是’”,
5or6
{
If (J, =0)
{
Write_com (0x01);
J=0;
}
If (flag==0) / / not according to the symbol keys
{
A=a*10+table[num];
}
Else// if you press the symbol key
{
B=b*10+table[num];
}
}
If you press the / is else//
{
Flag=1;
Fuhao=3; //3 said according to its
}
I=tabl
您可能关注的文档
- linux下解压命令大全 - eoiioe - 博客园(Linux decompression command Daquan - eoiioe - blog).doc
- linux下载文件命令(Linux download file command).doc
- linux入门的建议(Linux tips for getting started).doc
- linux发行版本及其特点(Linux release and its features).doc
- linux访问windows下的共享文件夹(Linux to access the shared folder under Windows).doc
- matlab命令集文库(Matlab command set library).doc
- matlab处理图像代码(Matlab processing image code).doc
- matlab课件(matlab课件).doc
- matlab群(matlab群).doc
- lol流浪攻略(lol流浪攻略).doc
最近下载
- 1-专业建设库 人才需求调研 中科南扬科技有限公司调研记录.doc VIP
- 武汉大学工程水文学历年考研试题.pdf VIP
- 汽车行业研究及策略.pdf
- 商务谈判(毕思勇第四版)PPT课件-第二章-商务谈判的准备工作.pptx VIP
- JCI(第七版)医院评审标准流程指南(1).docx VIP
- 美的MDV8多联机中央空调说明书.pdf
- 工业厂房建设管理制度.docx VIP
- Apache APISIX v2.8 官方文档详解.pdf VIP
- FZ_T 60039-2013膜结构用涂层织物 剥离强力试验方法.pdf
- 2020年知名购物中心、商场开业工作计划倒排表 (财务最全篇).docx VIP
文档评论(0)