论坛风格切换切换到宽版
  • 2858阅读
  • 6回复

C程序求助 [复制链接]

上一主题 下一主题
离线BD6AAO
 
发帖
214
只看楼主 倒序阅读 0楼 发表于: 2004-07-28
我现在在写一个程序,先有一个五位的七段显示器,led4,led3,led2,led1,led0。其bcd码电压都是五伏,现在想通过单片机采集其显示的数再通过串口发送到计算机,现在问题在输入部分,也就是bcd采集的部分,由于小弟我没有搞过单片机,1、现在就是不清楚c语言里如何表示p0为输入端口,我看有的书上说是给p0全部赋值为1,就是输入端口,不知语句如何表达 2、硬件电路如何接?直接通过单片机的断口接到七段显示器的bcd码的输入上吗?是否要加电阻?
谢谢

73
离线bg4rhe
发帖
756
只看该作者 1楼 发表于: 2004-07-28
我现在在写一个程序,先有一个五位的七段显示器,led4,led3,led2,led1,led0。其bcd码电压都是五伏,现在想通过单片机采集其显示的数再通过串口发送到计算机,现在问题在输入部分,也就是bcd采集的部分,由于小弟我没有搞过单片机,1、现在就是不清楚c语言里如何表示p0为输入端口,我看有的书上说是给p0全部赋值为1,就是输入端口,不知语句如何表达
p0口赋1与p0口是不是输入口无关,只是为了无误的读取输入数据。汇编指令 mov a,p0 就使的p0为通用接口,mov a,@dptr 使得p0为数据地址复用口
2、硬件电路如何接?直接通过单片机的断口接到七段显示器的bcd码的输入上吗?是否要加电阻?
原来的显示器是如何驱动的?可以从那儿读入数据啊,不知道你讲的电阻是哪儿的电阻?
假如你讲的是上拉电阻的话,是这样的:如p0口为数据地址复用口是不要加上拉电阻,如果为通用接口则要加上拉电阻。

谢谢



可能讲的不对,请指教!
离线BD6AAO
发帖
214
只看该作者 2楼 发表于: 2004-07-28
谢谢你的答复,我现在的问题就是,必须使用po端口,但是问题就是原来没有搞过单片机,不知道上拉电阻怎么接线,还有就是使用p0做输入端还有什么要注意的。谢谢你,望答复

73
离线bg4rhe
发帖
756
只看该作者 3楼 发表于: 2004-07-28
上拉电阻的接法一般书上都有的,你可以看一看。也就是将p0口的8个脚分别通过电阻接到
高电平,使得一般情况下,为高电平。一般可以用排阻,大概几k的就行了。
使用p0口好象没别的要注意的了。
'
谢谢你的答复,我现在的问题就是,必须使用po端口,但是问题就是原来没有搞过单片机,不知道上拉电阻怎么接线,还有就是使用p0做输入端还有什么要注意的。谢谢你,望答复
73
'
离线BD6AAO
发帖
214
只看该作者 4楼 发表于: 2004-07-29
好的,谢谢你的答复,我已经在qq上加你了,有什么不懂的以后还要麻烦你呢,谢谢你
离线bss
发帖
130
只看该作者 5楼 发表于: 2004-08-01
不同的芯片有不同的语法
对于89c51芯片,没有定义端口的方向(输入/输出)
对于at90s,atmega等avr系列的芯片就有专门定义输入出入方向的寄存器
离线BG6AGB
发帖
915
只看该作者 6楼 发表于: 2004-08-03
但是如果51的端口不置1的话,引脚上的电位就会被拉成低电位,那就不能正确的读取引脚的电平了。