#include "def.h"
#include "reg51.h"
#include<intrins.h>
#ifndef OSC110592
#define OSC110592
#endif
unsigned int qian,bai,shi,ge;
unsigned int k;
long result;
void init();
void PULSOUTus(unsigned int port);
bit Read_Port(unsigned int port);
void Write_Port(unsigned int port,bit state);
bdata unsigned char SBUF1;
sbit SBUF1_bit0 = SBUF1^0;
sbit SBUF1_bit1 = SBUF1^1;
sbit SBUF1_bit2 = SBUF1^2;
sbit SBUF1_bit3 = SBUF1^3;
sbit SBUF1_bit4 = SBUF1^4;
sbit SBUF1_bit5 = SBUF1^5;
sbit SBUF1_bit6 = SBUF1^6;
sbit SBUF1_bit7 = SBUF1^7;
void init() //initialization
{
TMOD=0x12;
PCON=00;
TR1=0;
TF1=0;
TR0=0;
TF0=0;
ET1=0;
ET0=0;
EA=0;
}
void delay_ms(unsigned int i)
{
unsigned int j;
for(;i>0;i--)
for(j=0;j<125;j++);
}
void putchar(char input)
{
SBUF1=input;
TL0=160;
TH0=160;
TF0=0;
TR0=1;
P26 = 0; //strat
while(!TF0);
TF0=0;
P26 = SBUF1_bit0; //0
while(!TF0);
TF0=0;
P26 = SBUF1_bit1; //1
while(!TF0);
TF0=0;
P26 = SBUF1_bit2; //2
while(!TF0);
TF0=0;
P26 = SBUF1_bit3; //3
while(!TF0);
TF0=0;
P26 = SBUF1_bit4; //4
while(!TF0);
TF0=0;
P26 = SBUF1_bit5; //5
while(!TF0);
TF0=0;
P26 = SBUF1_bit6; //6
while(!TF0);
TF0=0;
P26 = SBUF1_bit7; //7
while(!TF0);
TF0=0;
P26 = 1; //end
while(!TF0);
TF0=0;
TR0=0;
}
void PULSOUTus(unsigned int port)
{
Write_Port(port,1);
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
Write_Port(port,0);
}
void Write_Port(unsigned int port,bit state)
{
switch (port)
{
case 0: P00=state;break;
case 1: P01=state;break;
case 2: P02=state;break;
case 3: P03=state;break;
case 4: P04=state;break;
case 5: P05=state;break;
case 6: P06=state;break;
case 7: P07=state;break;
case 8: P20=state;break;
case 9: P21=state;break;
case 10:P22=state;break;
case 11:P23=state;break;
case 12:P24=state;break;
case 13:P25=state;break;
case 14:P26=state;break;
case 15:P27=state;break;
}
}
//main program
void main()
{
init();
while(1)
{
TL1=0;
TH1=0;
Write_Port(15,0);
PULSOUTus(15);
Write_Port(15,1);
while(P27==0);
TR1=1;
while(P27==1);
TR1=0;
result=TH1*256+TL1;
result=result*0.187-150;
k=(int)result;
putchar(22);
putchar(12);
delay_ms(100);
qian=k/1000+48;
bai=(k%1000)/100+48;
shi=(k%1000)%100/10+48;
ge=(k%1000)%100%10+48;
putchar(qian);
putchar(bai);
putchar(shi);
putchar(ge);
putchar('m');
putchar('m');
delay_ms(500);
}
}
chaoshengbo.rar_stc10f08
版权申诉
7 浏览量
2022-09-24
18:49:19
上传
评论
收藏 17KB RAR 举报
weixin_42653672
- 粉丝: 94
- 资源: 1万+
最新资源
- IMG_0694.GIF
- 基于图像的三维模型重建C++源代码+文档说明(高分课程设计)
- 基于聚焦法的工件立体测量方案,根据数据进行三维重建 使用HALCON处理图像,MATLAB拟合数据+源代码+数据集+效果图
- 锄战三国村 修改:货币使用不减 v1.10(2) 原创 (中文).apk
- 基于python实现的单目双目视觉三维重建+源代码+图像图片(高分课程设计)
- 基于C+++OPENCV的全景图像拼接源码(课程设计)
- 基于Python+OpenCV对多张图片进行全景图像拼接,消除鬼影,消除裂缝+源代码+文档说明+界面截图(高分课程设计)
- 基于C++实现的全景图像拼接源码(课程设计)
- 基于SIFT特征点提取和RASIC算法实现全景图像拼接python源码+文档说明+界面截图+详细注释(95分以上课程大作业)
- 基于matlab实现眼部判别的疲劳检测系统+源代码+全部数据+文档说明+详细注释+使用说明+截图(高分课程设计)
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈