论坛风格切换切换到宽版
  • 3770阅读
  • 10回复

关于PIC16F系列单片机损坏问题 [复制链接]

上一主题 下一主题
离线XLDZZ
 
发帖
443
只看楼主 倒序阅读 0楼 发表于: 2009-08-06
最近碰到一个怪问题


去年我在深圳华强赛格买了一片16f877,就放在那一年时间没用。
现在拿来使用程序可以写入,但没任何反映。振荡器也没波形。
使用内部rc也没用,会不会有几次我拿在手里看时被esd给挂了。

那位仁兄帮我拿去测试测试啊。
离线XLDZZ
发帖
443
只看该作者 1楼 发表于: 2009-08-06
附件是一段hex文件,用于16f877。

那个兄弟能帮我测试一下,能否可用。
附件: pic1618all.rar (0 K) 下载次数:43
离线xiongjunfeng
发帖
1220
只看该作者 2楼 发表于: 2009-08-06
用proteus仿真就可以啊
在线BG2WAH
发帖
603
只看该作者 3楼 发表于: 2009-08-06
16f877没那么骄嫩吧,其次,也没有内部rc振荡器
离线XLDZZ
发帖
443
只看该作者 4楼 发表于: 2009-08-06
现在我使用外部rc振荡器,时钟信号有了。可是其他振荡方式无信号。

上述程序也无反应。

发个原理图,看看是否有问题。
附件: DD.pdf (0 K) 下载次数:53
离线XLDZZ
发帖
443
只看该作者 5楼 发表于: 2009-08-06
问题已解决

  端口不动作的原因为portd的第二功能是并口,由于我使用了
  movlw 0ffh
  movwf trise
  造成trise的bit4位置1,启动了第二功能
  pic就是这点麻烦

  高频振荡不启动原因是在配置位中的最后两位用错了,本来用的是01
  也就是xtal振荡,应该选择hs

  最终修改后可用的汇编程序和hex文件如附件

多谢各位的,顺便问一句,有没有苏州的ham或准ham,也搞pic玩的
附件: pic1618all.rar (0 K) 下载次数:32
离线BG2IVR
发帖
243
只看该作者 6楼 发表于: 2009-08-07
877还是不错的,可惜价格太贵
离线XLDZZ
发帖
443
只看该作者 7楼 发表于: 2009-08-08
877的价格在苏州赛格卖15块,pic18卖35

不知挣了多少,搞东西还是在大城市好,向

苏州这种二线城市,你想买东西也不一定买的到

就算买得到价格也很高
离线XLDZZ
发帖
443
只看该作者 8楼 发表于: 2009-08-08
帮我看看下面的程序,有没有问题。
ra0加了高信号,rd口还是没有输出

list   p=16f877
  #include "p16f877a.inc"
  __config b�'0x3b31

 
  mm equ 31h
  org 0000h
  nop
  banksel trisa
  movlw 0ffh;a口输入
  movwf trisa
  movlw 00h
  movwf trise;e口输出
  movwf trisd;d口输出
  movlw 07h
  movwf cmcon;关比较器
 
    banksel portd
  movlw 000h
  movwf adcon0;关ad
 
    loop1
  btfss 0   goto loop1
  movlw 08h
  movwf portd
  movlw 06h
  movwf porte
  nop
  nop
  clrf porte
  goto loop1
离线BG2IVR
发帖
243
只看该作者 9楼 发表于: 2009-08-09
看不懂汇编,如果c语言的话,只需要一下这句就可以使用ra口了
adcon1=0b00000111;//关闭a/d
在线BG2WAH
发帖
603
只看该作者 10楼 发表于: 2009-08-09
; 捞干地

bsf   status,rp0     ; 选体1为当前体
movlw   0x6
movwf   adcon1       ; ra、re全部为数字i/o口
movlw   0xff
movwf   trisa       ; ra全部为输入
movlw   0x7
movwf   cmcon       ; 关闭比较器
bcf   status,rp0     ; 恢复体0