广告广告
  加入我的最爱 设为首页 风格修改
首页 首尾
 手机版   订阅   地图  繁体 
您是第 2331 个阅读者
 
发表文章 发表投票 回覆文章
  可列印版   加为IE收藏   收藏主题   上一主题 | 下一主题   
Rickylam
数位造型
个人文章 个人相簿 个人日记 个人地图
路人甲
级别: 路人甲 该用户目前不上站
推文 x0 鲜花 x0
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片
推文 x0
[][其他] 请问有冇8051高手可以帮帮忙呀???
请问有冇8051高手可以帮帮忙呀???
我要做一个用max232控制8051接收Port1的button再送去终端机的project, 但是出了问题,我不知道怎么把Port1的 button用SCAN_KEY得到的信号,用8051送到终端机,还有SCAN_KEY好像出错了,请各位高人帮帮忙,看一下我的程式出了什么问题,感激不尽!!!

我的程式如下:
    ORG 00H
      SETB EA      
      MOV TMOD, #00100000B   ;8 bits auto-reload mode
    MOV TH1, #0F4H
    MOV TL1, #0F4H   ;2400 baud rate
    MOV SCON,#01000010B   ;8 Bits,set by timer 1, with TI ready
    ANL PCON,#01111111B;Close SMOD

    LJMP BEGIN

BEGIN:   MOV SP,#60H
    CALL INIT_RS232
    CALL SCAN_KEY
    MOVC A,@A+DPTR
    MOV SBUF,A   ;Send out the data
    ??     ;不知道接下来怎么写=o=,不知道用不用call delay
    JMP $

SCAN_KEY: PUSH R0
    MOV R0,#11111110B
LOOP:   MOV P1, R0
    MOV A, P1
    ORL A,#00001111B
    CPL A
    JNZ RETURN_VALUE
    MOV A, R0
    RL A
    MOV R0, A
    ANL A, #00010000B
    MOV DPTR, A
    POP R0
    JNZ LOOP

RETURN_VALUE:MOV A, P1


INIT_RS232:
    MOV SCON,#50H
    MOV TMOD,#20H
    MOV TH1,#0F4H
    SETB TR1
    SETB TI
    RET

END



献花 x0 回到顶端 [楼 主] From:欧洲 | Posted:2007-10-29 13:14 |
Rickylam
数位造型
个人文章 个人相簿 个人日记 个人地图
路人甲
级别: 路人甲 该用户目前不上站
推文 x0 鲜花 x0
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

_______________________________________________________
  * lbing7
发表于:2007-10-28 19:56:041楼 得分:0
第一:SCANKEY能否成功这和你的硬件连线有直接关系。
第二:你的程序结构不太理想
你试试我这个看,嘿嘿希望有帮助

分三个模块:
1.SCANKEY
2.UART
3.MAIN

SCANKEY再定时器里以一定的间隔不停地扫。产生对应的一组标志
在MAIN里查询这组标志,如果是对应的就调用UART向上位机发数据。

这样的结构是不是好些?
_________________________________________________________

谢谢lbing7的回覆!!
不过我是个新手,你可以说详细点嘛?
不大明白你说的............


献花 x0 回到顶端 [1 楼] From:欧洲 | Posted:2007-10-29 13:20 |

首页  发表文章 发表投票 回覆文章
Powered by PHPWind v1.3.6
Copyright © 2003-04 PHPWind
Processed in 0.020793 second(s),query:16 Gzip disabled
本站由 瀛睿律师事务所 担任常年法律顾问 | 免责声明 | 本网站已依台湾网站内容分级规定处理 | 连络我们 | 访客留言