找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

关于单片机AD转换 按一个按键,发送模拟量到pc机 求帮助

查看数: 2922 | 评论数: 1 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2020-6-8 10:34

正文摘要:

按一个按键,发送模拟量到pc机 仿真,我做了好久也没做出来,程序有问题 求帮助 /*  名称:单片机与PC通信     说明:单片机可接收PC发送的数字字符,     按下单片机的K1键后, ...

回复

ID:768939 发表于 2020-6-8 17:10
#include<reg51.h> #include<intrins.h> #define uchar unsigned char #define uint unsigned int sbit ST=P2^0;   sbit OE=P2^2;   sbit ALE=P2^3;   sbit EOC=P2^1;   sbit CLK=P2^4;   long int datas,bai,she,ge; uchar duan; uchar code num[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};    uchar code num_dot[]={0xbf,0x86,0xdb,0xcf,0xe6,0xed};      uchar code wei[]={0x0d,0x0b,0x07};       void delay(uint z) {  uchar i;  while(z--)  for(i=0;i<120;i++); } void display() {  uchar i=0;  bai=(datas*500/255)/100;  she=(datas*500/255)/10 % 10;  ge=(datas*500/255) % 10;  for(i=0;i<3;i++)      {   P3=wei[i];   if(i==0){duan=num_dot[bai];}      else if(i==1){duan=num[she];}   else if(i==2){duan=num[ge];}   P0=duan;   delay(2);  }  } void main() {  TMOD=0x02;        TH0=0x216;            TL0=0x216;     EA=1;       ET0=1;    TR0=1;       while(1)  {  ST=OE=0;      ALE=1;            ST=1;            ALE=0;  ST=0;  while(!EOC);    OE=1;            datas=P1;         display();     } } void inter_1() interrupt 1 {  CLK=~CLK; }

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表