导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→发表看法:[slightdark]求助,有用过义隆单片机的朋友帮帮忙



No.12612
作者:slightdark
邮件:zxq0917@163.com
ID:85886
登陆:2次
文章数:1篇
最后登陆IP:202.105.113.50
最后登陆:2009/12/23 13:59:51
注册:2007/8/2 9:04:22
财富:106
发帖时间:2007/8/2 10:27:39
发贴者IP:219.134.109.53
标题:slightdark:求助,有用过义隆单片机的朋友帮帮忙
摘要:No.12612求助,有用过义隆单片机的朋友帮帮忙 我用的是义隆的EM78P153S单片机,最近编写了一个恒温控制与抽水的程序。P50,P60,P61,P62为输入口,P50内部下拉,P60,P61,P62内部上拉。如果P61口在上电前按地的话,上电后会出现电流持续过大,单片机迅速发热的情况。如果P61口在上电前没有接地,则工作基本正常,工作电流在10mA以下。其他的输入口都不会出现这种情况。试烧几个单片机都是这样。P61口只是普通IO口,并无第二功能,为什么会出现这样的情况呢?怎么样能解决这个问题?
还有,就是如果P62口所接的按键如果连续20分钟不动作,单片机进入休眠。因为程序休眠前采用TCC中断来计时,所以20分钟后是在中断服务程序中进入睡眠方式,醒来后再返回主程序,这样设计程序是否妥当?我在书上没有看到有这样设计程序的。
我编写的程序如下:
;*******************输入输出口定义***********************

P5       EQU        0X05
P6       EQU        0X06

;*******************控制寄存器***************************

IOC5     EQU        0X05
IOC6     EQU        0X06
IOCB     EQU        0X0B
IOCC     EQU        0X0C
IOCD     EQU        0X0D
IOCE     EQU        0X0E
IOCF     EQU        0X0F
RF       EQU        0X0F

;*******************特殊功能寄存器***********************

TCC      EQU        0X01         
PC       EQU        0X02
PSW      EQU        0X03


;********************用户自定义寄存器********************  

T1       EQU        0X10              ;计时寄存器
T2       EQU        0X11
T3       EQU        0X12
LP_CNT0  EQU        0X13            ;循环计数寄存器
LP_CNT1  EQU        0X14
LP_CNT2  EQU        0X15
LP_CNT3  EQU        0X16
STACK_A  EQU        0X17           ;A寄存器内容保存寄存器
STACK_S  EQU        0X18           ;状态寄存器内容保存寄存器

;********************位定义******************************

WATER1   EQU        0X00        ;入水水箱
WATER2   EQU        0X01        ;出水水箱
KY       EQU        0X02         ;按键
ALARM    EQU        0X07       ;报警蜂鸣器
FIRE     EQU        0X04         ;加热继电器
PUMP     EQU        0X05        ;水泵
TMPR     EQU        0X00        ;测温度电阻 

  ORG   0X00
  ADD   A,@0XFF
  ADD   A,@0XFF
  ADD   A,@0XFF
  JMP   MAIN
  ORG   0X08
  MOV   STACK_A,A       ;存储A值
                                SWAP  STACK_A 
                               SWAPA PSW             ;存储状态寄存器值 
                               MOV   STACK_S,A 
  CLR   RF
  JMP   TCCINT
INT_RET:
  SWAPA   STACK_S         ;恢复状态寄存值 
                                MOV     PSW,A 
                                SWAPA   STACK_A         ;恢复A值 
                                RETI 


MAIN:
  MOV   A,@0X0            ;禁看门狗
  IOW   IOCE          
  MOV   A,@00001111b      ;P60,P61,P62输入,P67,64,65输出
  IOW   IOC6          
  MOV   A,@00000001b      ;p50输入
  IOW   IOC5          
  MOV   A,@00000111b      ;TCC分频1:256
  CONTW         
  MOV   A,@130            ;20分钟延时     
  MOV   T1,A
  MOV   A,@93
  MOV   T2,A
  MOV   A,@3
  MOV   T3,A
                 MOV   A,@00000001b      ;允许TCC中断
  IOW   IOCF
  NOP
  NOP
  MOV   A,@11111000b      ;P60,P61,P62上拉使能
  IOW   IOCD
  MOV   A,@10110000b      ;P64,P65,P67漏极开路使能
  IOW   IOCC          
  MOV   A,@01111110b      ;p50下拉使能
  IOW   IOCB          

  
  
  
MAIN_1:  
  
  JBC   P6,WATER2         ;出 ......

>>返回讨论的主题



  发表回复
用户名   *您没有注册?
密码   *
验证码   * .
标题   *
心情
随便说说    我回答你    最新发现    得意的笑   
气死我了    真是没劲    坚决同意    表示反对   
大家过来    好奇怪哟    懒得理它    大家小心   
文件上传
内容


字体:      字体大小:    颜色:
粗体 斜体 下划线 居中 超级连接 Email连接 图片 Flash图片 Shockwave文件 realplay视频文件 Media Player视频文件 QuickTime视频文件 引用 飞行字 移动字 发光字 阴影字 查看更多的心情图标 背景音乐
点击加入表情
                         
选项
有回复时用短消息通知您?

   




老古网执行:47毫秒 最大:78531毫秒 查询6次