有没有大神能帮我p下医疗结扎诊断书书啊 急求急求

查看: 185|回复: 0
有没有大神能帮我看下程序错在哪里,可以加QQ的, 急求!
#define uchar unsigned char& & & & & & & &&&//宏定义
#define uint unsigned int
sbit EN=P1^2;
sbit RS=P1^0;
sbit RW=P1^1;
unsigned char LCD1602_Table[]=&:-&;
& & & & & & & & & & & & & & & & & & & & //& &abcdef
uchar code dis_tab1[ ]={&Number of steps:&};
uchar code dis_tab2[ ]={&stop& && & -----&};
void write_date(uchar date)
& & & & RS=1;
& & & & P0=
& & & & EN=1;
& & & & delayms(1);
& & & & EN=0;}
void write_com(uchar date)
& & & & RS=0;
& & & & P0=
& & & & EN=1;
& & & & delayms(1);
& & & & EN=0;}
void init_1602()
{& &uchar i=0;
& & & & RW=0;
& & & & write_com(0x38);
& & & & write_com(0x0c);
& & & & write_com(0x06);
& & & & write_com(0x01);
& & & & write_com(0x80);
& & & & for(i=0;i&16;i++)
& & & & {write_date(dis_tab1[i]);}
& & & & write_com(0x80+0x40);
& & & & for(i=0;i&16;i++)
& & & & {write_date(dis_tab2[i]);}}
void display()& & & & & & & &&&
{& &write_com(0x80+11+0x40);
& & & & if(Step_num/10000&0)
& & & & write_date(LCD1602_Table[Step_num/10000]);
& & & & else
& & & & write_date(' ');
& & & & if(Step_num/1000&0)
& & & & write_date(LCD1602_Table[Step_num%]);
& & & & else
& & & & write_date(' ');
& & & & if(Step_num/100&0)
& & & & write_date(LCD1602_Table[Step_num%]);
& & & & else
& & & & write_date(' ');
& & & & if(Step_num/10&0)
& & & & write_date(LCD1602_Table[Step_num%100/10]);
& & & & else
& & & & write_date(' ');
& & & & write_date(LCD1602_Table[Step_num%10]);
}& & & & & & & & & & & & & & & & & & & & & & & & & & & &&&
#include&reg52.h&
#include &intrins.h&
#define uchar unsigned char& & & & & & & &&&//宏定义
#define uint unsigned int
//nop指令个数定义& &
#define nops() {_nop_();_nop_();_nop_();_nop_();_nop_();}
uchar xsign,ysign,
bit start_flag=0;
//端口位定义,可修改
sbit SDA=P3^4; //IIC数据线定义
sbit SCL=P3^5; //IIC时钟线定义
sbit key_start=P1^4;
sbit key_stop=P1^5;
sbit key_clean=P1^6;
sbit BEEP=P2^0;
//内部数据定义
unsigned char IIC_ad_ //器件从地址& & & && &&&
unsigned char IIC_ad_&&//器件子地址& & & && &
unsigned char *IIC_& & //发送|接收数据缓冲区& & & && &&&
unsigned char IIC_& &&&//发送|接收数据个数& & & &&&
uint Step_num=0;
uint Speed=0;
uint B_speed=100;
uchar time1_num,time2_
uint time_num=0;
unsigned char x1,y1,z1;
int x,y,z;
bit z_flag=0;
bit x_flag=0;
#define ack 1& && &//主应答
#define no_ack 0& &//从应答& & & &
/***************************************************
& & & & & & & & 函数名称:延时子函数
& & & && &&&函数功能:按键消抖
***************************************************/
void delayms(uint xms)
{&&uint i,j;
& & & & for(i=i&0;i--)
& & & & & & & & for(j=110;j&0;j--);}&&
#include&1602.c&
void IIC_start(void){
& & & & SCL=0;
& & & & SDA=1;
& & & & _nop_();
& & & & SCL=1;
& & & & nops();
& & & & SDA=0;
& & & & nops();
& & & & SCL=0;}
//************************************************
//送停止位 SDA=0-&1
void IIC_stop(void){
& & & & SCL=0;
& & & & _nop_();
& & & & SDA=0;
& & & & _nop_();
& & & & SCL=1;
& & & & nops();
& & & & SDA=1;
& & & & nops();
& & & & SCL=0;}
//************************************************
//主应答(包含ack:SDA=0和no_ack:SDA=0)
void IIC_ack_main(bit ack_main){
& & & & SCL=0;
& & & & if(ack_main)SDA=0; //ack主应答
& & & & else SDA=1; //no_ack无需应答
& & & & nops();
& & & & SCL=1;
& & & & nops();
& & & & SCL=0;}
//*************************************************
//字节发送程序
//发送c(可以是数据也可是地址),送完后接收从应答
//不考虑从应答位
void send_byte(unsigned char c){
& & & & for(i=0;i&8;i++){
& & & & SCL=0;
& & & & & & & & if((c&&i) & 0x80)SDA=1; //判断发送位
& & & & & & & & else SDA=0;
& & & & & & & & _nop_();
& & & & & & & & SCL=1;
& & & & & & & & nops();
& & & & & & & & SCL=0;}
& & & & nops();
& & & & SDA=1; //发送完8bit,释放总线准备接收应答位
& & & & _nop_();
& & & & SCL=1;
& & & & nops(); //sda上数据即是从应答位
& & & & SCL=0; //不考虑从应答位|但要控制好时序
//**************************************************
//字节接收程序
//接收器件传来的数据,此程序应配合|主应答函数|IIC_ack_main()使用
//return: uchar型1字节
unsigned char read_byte(void);
& & & & c=0;
& & & & SCL=0;
& & & & _nop_();
& & & & SDA=1; //置数据线为输入方式
& & & & for(i=0;i&8;i++){
& & & & & & & & _nop_();
& & & & & & & & SCL=0; //置时钟线为低,准备接收数据位
& & & & & & & & nops();
& & & & & & & & SCL=1; //置时钟线为高,使数据线上数据有效
& & & & & & & & _nop_();
& & & & & & & & c&&=1;
& & & & & & & & if(SDA)c+=1; //读数据位,将接收的数据存c}
& & & & SCL=0;
//***************************************************
//向无子地址器件发送单字节数据
void send_to_byte(unsigned char ad_main,unsigned char c){
& & & & IIC_start();
& & & & send_byte(ad_main); //发送器件地址
& & & & send_byte(c); //发送数据c
& & & & IIC_stop();}
//***************************************************
//向有子地址器件发送多字节数据
void send_to_nbyte(unsigned char ad_main,unsigned char ad_sub,unsigned char *buf,unsigned char num)
& & & & IIC_start();
& & & & send_byte(ad_main); //发送器件地址
& & & & send_byte(ad_sub); //发送器件子地址
& & & & for(i=0;i&i++){
& & & & & & & & send_byte(*buf); //发送数据*buf
& & & & & & & & buf++;}
& & & & IIC_stop();
//***************************************************
//从无子地址器件读单字节数据
//function:器件地址,所读数据存在接收缓冲区当前字节
void read_from_byte(unsigned char ad_main,unsigned char *buf)
{&&IIC_start();
& & & & send_byte(ad_main); //发送器件地址
& & & & *buf=read_byte();
& & & & IIC_ack_main(no_ack); //无需应答&no_ack=0&
& & & & IIC_stop();}
//***************************************************
//从有子地址器件读多个字节数据
//function:
void read_from_nbyte(unsigned char ad_main,unsigned char ad_sub,unsigned char *buf,unsigned char num)
& & & & IIC_start();
& & & & send_byte(ad_main);
& & & & send_byte(ad_sub);
& & & & for(i=0;i&num-1;i++){
& & & & & & & & *buf=read_byte();
& & & & & & & & IIC_ack_main(ack); //主应答&ack=1&
& & & & & & & & buf++;
& & & & }*buf=read_
& & & & buf++; //本次指针调整无意义,目的是操作后buf指向下一地址
& & & & IIC_ack_main(no_ack); //无需应答&no_ack=0&
& & & & IIC_stop();}
unsigned char MMA7455_readbyte(unsigned char address)
{& &unsigned char ret = 100;
& & & & IIC_start();& & & & & & & & //启动
& & & & send_byte(0x3A);& & & & //写入设备ID及写信号
& & & & send_byte(address);& & & & //X地址
& & & & IIC_start();& & & & & & & & //重新发送开始
& &send_byte(0x3B);& & & & //写入设备ID及读信
& & & & ret = read_byte();& & & & //读取一字节
& & & & IIC_stop();
void MMA7455_writebyte(unsigned char address, unsigned char thedata)
{&&IIC_start();& & & & & & & & //启动
& & & & send_byte(0x3A);& & & & //写入设备ID及写信号
& & & & send_byte(address);& & & & //X地址
& & & & send_byte(thedata);& & & & //写入设备ID及读信
& & & & IIC_stop();}
//初始化为指定模式
void MMA7455_init()
{&&//2g输出 测量模式
& & & & MMA7455_writebyte(0x16, 0x05);
& & & & //据实际环境修改校验值
& & & & MMA7455_writebyte(0x10,0x10);//校正X值
& & & & MMA7455_writebyte(0x12,0x30);//校正Y值
& & & & MMA7455_writebyte(0x14,0x00);//校正Z值
void keyscan()
{&&if(!key_start)
& & & & {&&delayms(10);
& & & & & & & & if(!key_start)
& & & & & & & & {&&start_flag=1;
& & & & & & & & & & & & write_com(0x80+0x40);
& & & & & & & & & & & & write_date(' ');
& & & & & & & & & & & & write_date('r');
& & & & & & & & & & & & write_date('u');
& & & & & & & & & & & & write_date('n');
& & & & & & & & & & & & while(!key_start);}& & & & }
& & & & else if(!key_stop)
& & & & {&&delayms(10);
& & & & & & & & if(!key_stop)
& & & & & & & & {& &start_flag=0;
& & & & & & & & & & & & write_com(0x80+0x40);
& & & & & & & & & & & & write_date('s');
& & & & & & & & & & & & write_date('t');
& & & & & & & & & & & & write_date('o');
& & & & & & & & & & & & write_date('p');
& & & && &&&& & & & while(!key_stop);}& & & &
& & & & else if(!key_clean)
& & & & {& &delayms(10);
& & & & & & & & if(!key_clean)
& & & & & & & & {&&Step_num=0;
& & & & & & & & & & & & while(!key_clean);}& & & & }
& & & & & & & & & & & & }
void Dat_dispose()
{//读取重力信息
& & & & if(start_flag)
& & & & {& &x1 = MMA7455_readbyte(0x06);
& & & & & & & & y1 = MMA7455_readbyte(0x07);
& & & & & & & & z1 = MMA7455_readbyte(0x08);& & & && && & & && &
& & & & }x=x1;
& & & & y=y1;
& & & & z=z1;
& & & & if((x&0x80)==0x00)
& & & & {&&x=(int)((x*196)/127);& & & &&&//转变为加速度值
& & & & else{& &x=255-x;
& & & & & & & & x=(int)((x*196)/127);& & & &&&//转变为加速度值
& & & & & & & & x=(-1)*x;
& & & & if((y&0x80)==0x00)
& & & & {&&y=(int)((y*196)/127);& & & &&&//转变为加速度值
& & & & else
& & & & {&&y=255-y;
& & & & & & & & y=(int)((y*196)/127);& & & &&&//转变为加速度值
& & & & & & & & y=(-1)*y;}
& & & & if((z&0x80)==0x00)
& & & & { z=(int)(((z-10)*196)/127);& & & &&&//转变为加速度值
& & & & else
& & & & {&&z=255-z;
& & & & & & & & z=(int)(((z+12)*196)/127);& & & &&&//转变为加速度值
& & & & & & & & z=(-1)*z;
& & & & }&&& & & & if(start_flag)
& & & & {&&if(y&30&&x_flag==0&&z&70&&z&100)
& & & & & & & & {x_flag=1;
& & & & & & & & & & & & Step_num++;}&&& & & &
& & & & & & & & else if(y&0)
& & & & & & & & {x_flag=0;& & & & }& & & &
& & & & }else
& & & & x_flag=0;}
void main()
{&&init_1602();
& & & & MMA7455_init();& & & & //初始化MMA7455
& & & & while(1)
& & & & {& & & &
& & & & & & & & Dat_dispose();
& & & & & & & & display();
& & & & & & & & keyscan();
Powered by有没有大神现在能帮我PS一下一个图片的啊 急求啊 急求啊_ps吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:2,176,250贴子:
有没有大神现在能帮我PS一下一个图片的啊 急求啊 急求啊收藏
TUT谁能帮我一下的啊 会PS的 现在有空的 可以的话私信我一下 真的是十万火急啊
毕业季,你准备好了吗?
把图片发过来,看你有什么要求很乐意帮忙
这是谁的号
@风吹风飞扬 @情殇爱过不后悔 @岳先生丶day @love醉浅梦 @半孑丶烟头 @狸丢丢 @喵了个咪的喵er @造价沫沫 @莣情苮珺 @善良的帅子 @秤子很好 @小青年的小痴气 @橙034 @dreamwedding烨 @棒棒糖_甜甜的_ @糖三疯 @单调丶Good @Angel丶收藏 @矜持Bonnie @远去的执念 @a @温柔刀血 @Shmily浮云先生
登录百度帐号推荐应用
为兴趣而生,贴吧更懂你。或跪求大神帮我P下录取通知书_ps高手吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:1,862贴子:
跪求大神帮我P下录取通知书收藏
我被大学录取了,专业不是很好,谁能帮我P一下,把专业改一下,谢谢你们愿意的跟帖留下QQ好吗?谢谢你
登录百度帐号推荐应用
为兴趣而生,贴吧更懂你。或

我要回帖

更多关于 结扎诊断书 的文章

 

随机推荐