打印

79F166A I/O口控制问题

[复制链接]
3752|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
我是新人,我想用SH79F166A去控制单片机的P0口去输出高电平,进而控制LED点亮,请问除了设置方向寄存器P0CR外还要设置哪些寄存器,我想点亮几个灯,但总是控制不了,寻求帮助,谢谢!!
#include<SH79F166A.h>
#define uint unsigned int
#define uchar unsigned char
void delay(uint x);
sbit LED0=P0
^2;
sbit LED1=P0
^4;
sbit LED2=P0
^6;
sbit LED3=P2
^0;
sbit LED4=P4
^0;
sbit LED5=P3
^6;
void main()
{ P0CR=0x54;
P2CR=0x01;
P3CR=0x40;
P4CR=0x01;
P0PCR=0x54;
P2PCR=0x01;
P3PCR=0x40;
P4PCR=0x01;
P0SS=0;
P2SS=0;
P3SS=0;
LED0=1;
LED1=1;
LED2=1;
LED3=1;
LED4=1;
LED5=1;
    while(1);
}
沙发
sunzp0229| | 2012-8-16 18:56 | 只看该作者
外围有接上拉电阻吗?没有的话打开内部上拉试试

使用特权

评论回复
板凳
hellodjl|  楼主 | 2012-8-17 07:42 | 只看该作者
已经打开啦,程序中PORCR已经有设置啦

使用特权

评论回复
地板
bananarer| | 2012-8-17 10:53 | 只看该作者
你的接线怎么接的,我看是可以的嘛

使用特权

评论回复
评分
参与人数 1威望 +1 收起 理由
hellodjl + 1 一句话指明方向
5
hellodjl|  楼主 | 2012-8-17 15:39 | 只看该作者
还是不行的,电路我上传下,51jet设置我也上传下,
我刚有把POPCR加入跟去掉,i/0电压值分别为0.4--0,

13.jpg (2.93 MB )

13.jpg

使用特权

评论回复
6
hellodjl|  楼主 | 2012-8-17 17:24 | 只看该作者
设置如下,哪位仁兄能否帮我看下,设置哪边有问题。。
OP_WDT    Disable WDT function
OP_WDTPD  Disable WDT function in power-down mode
OP_RST    pin 10 used as RST pin
OP_WMT    longest warm up time
OP_OSC    Oscillator1 is 2M-12M cyrstal/cearmic oscillator,oscillator2 is disabled
OP_LVREN  Disable LVR function
OP_LVRLE  4.3V LVR level 1
OP_SCM     SCM is valid in warm up period
OP_LEDCOM   LED common signal is normal(default)
OP_OSCDRIVE   8M-12M crystal

怀疑设置有问题,导致的。。程序还有电路找不出问题啦。

使用特权

评论回复
7
hellodjl|  楼主 | 2012-8-18 09:08 | 只看该作者
答案找到啦,OP_RST    pin 10 used as RST pin
这个设置错误,因为我电路是接地的,所以这样选就一直复位。。
谢谢大家的关注,谢谢!!

使用特权

评论回复
8
bananarer| | 2012-8-20 08:55 | 只看该作者
恩。找到就好

使用特权

评论回复
9
蓦然回首;| | 2013-10-23 16:01 | 只看该作者
把你的程序拷贝过来,为什么我的led只是微弱的亮,求解 啊

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

153

帖子

1

粉丝