• 回复
  • 收藏
  • 点赞
  • 分享
  • 发新帖

PIC16F877A单片机汇编问题请教

大家好,PIC16F877A单片机的RE端口的RE0,为什么我这样写得不到所要的结果:
(PIC16F87A的A端口有6个,E端口只有3个)

bcf  status,rp0  ; 选体0
bsf  porte,0     ;目的是将E端口的0位设为高电平,
可我在观察窗口中没有看到变化,烧到实验板也没有变化.也就是说RE0还是0

RA端口共6个也存在这种问题,请问我的问题出在哪,是不是RA和RE比较特殊.
各位是怎么解决的.(体选不会错,TRISE在体1  89H,porte在体0的09H)
谢谢
全部回复(2)
正序查看
倒序查看
2009-05-14 22:41
怎么这么多人看没有人回复呀,是不是表达的不清楚.
我查了下资料,不知是不是和ADCON1这个寄存器有关,哪位知道回答一下,谢谢!
0
回复
madboy21
LV.8
3
2009-05-15 21:56
@hunter-007
怎么这么多人看没有人回复呀,是不是表达的不清楚.我查了下资料,不知是不是和ADCON1这个寄存器有关,哪位知道回答一下,谢谢!
你好!上面的程序不完整,另应用大写.
如果你是正在学习我建议先从别人的例子做起~~~

ADCON1是ADC控制寄存器,如果不用ADC的话可以不管这个寄存器.

与IO有关的寄存器有:ANSEL、TRISIO、当然还一个就是GPIO.
如要让RA口有输出必需先将TRISIA置0,如RA全输出为高电平.

MOVLW ox0
MOVWF TRISIO //假设已定义,并先好Bank~~~
MOVLW oxff
MOVWF PORTA

我认为学习单片机,特别是PIC单片机的朋友最好先用C语言~~~更容易学会,操作更加简单.
0
回复