51单片机怎样把P1口接收到的数字信号给P0口进行输出?

C中可以直接P0=P1这样给吗?... C中可以直接P0=P1这样给吗? 展开
 我来答
5494小铺
2012-04-18 · TA获得超过1877个赞
知道小有建树答主
回答量:299
采纳率:0%
帮助的人:279万
展开全部
如果你不需要处理这个数据,那还要51单片机的IO口干嘛,直接连起来就好啦。
如果要处理。
建一个中间变量
<reg51.h>//或相关单片机头文件
unsigned char x;
x=P0;
P1=x;
更多追问追答
追问
P1口接收的信号在00000000-11111111之间变化,P0口是通过锁存器连接的是六位数码管,我想使P1口采集的信号,以十进制(0-256)的形式在数码管上显示。这样P1口输出的二进制可以直接bai=P1/100;这样直接运算进行百十个分离吗?迷糊了
追答
你要在数码管上显示,必须先将收集过来的数据分位处理再转化为PCB码。

unsigned char x,ge,shi,bai;
x=P0;
bai=x/100;
shi=(x%100)/10;
ge=(x%100)%10;
上面是个位十位百位的分离。
不知道你具体用的什么数码管(有共阴极共阳极之分)
也不知道你用的什么锁存器
具体做法是 分离之后通过查表来确定要发的数据
百度搜一下就有了 定义一个unsigned code led[10]
{ /*里面写BCP码*/ };
然后看你用的什么锁存器 具体操作要看锁存器的资料了。
zhangjg198
2012-04-18 · TA获得超过245个赞
知道小有建树答主
回答量:246
采纳率:0%
帮助的人:151万
展开全部
不能 需要通过累加器转
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
whilefor
2012-04-21 · 超过21用户采纳过TA的回答
知道答主
回答量:72
采纳率:0%
帮助的人:32万
展开全部
可以的。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式