网站首页  |   业界社区  |  电信社区  |  技术社区   |  极客社区  |  游戏社区  |  生活社区   |   科技博客  |   同事录
TechWeb-技术社区


标题: [讨论] Wince 下访问IO端口
OKBEN
TW金牌会员
Rank: 6Rank: 6



UID 138713
精华 37
积分 1469
帖子 584
阅读权限 70
注册 2008-7-29
状态 离线
发表于 2008-8-20 11:59 资料 短消息 加为好友 添加 OKBEN 为MSN好友 通过MSN和 OKBEN 交谈
Wince 下访问IO端口

项目要通过IO端口通讯数据,本人不会汇编,在网上看到可以嵌入汇编,我的代码如下,每次读上来数据都是0xFF,是哪里有问题吗?第一次用evc通过模拟器显示,也不知如何单步执行,比较痛苦。高手指点。 TechWeb-技术社区/\'e#V,x6q9x+w*G-i
unsigned char pio_inbyte( WORD addr )
/E$k%n4m+d;G"x4q{
:v&r2w;P5r4N$F程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛unsigned char data_byte;
1l2V%{"h8o#G&S(^*T$ltech.techweb.com.cn  _asm  {push ax}
8|+L*h7^:R2V_asm  {push dx} 程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛6o,@)Z'C1s(z!O-m!e
_asm  {mov dx,addr}
!C:A)m#d2v6o+r4z"_+@%d程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛_asm  {in al,dx}
8\/Z8U;g8k+B/Z(m_asm  {mov data_byte, al} -I"W;A*P%n"~7]*H%k
_asm  {pop dx} 7U D e8?&b&O!n r,|
_asm  {pop ax}
,c#C/x#L0s4F"t#I#?return data_byte;
8H#|#l#k!j5i6D.P2Jtech.techweb.com.cn}
&{*M1I$I:F.O5a1O&c/*********************************************************/ tech.techweb.com.cn1P9G,V,e6P/u9q5f7q1g6e9O2_
void pio_outbyte(WORD addr,unsigned char data )
/r#]9j0^.b"t7l2A Q!c/]{ 3R0|*s6x"a!A1s9}$T
_asm  {push ax}
,D#k0S)k#u5i;i3R(v*fTechWeb-技术社区_asm  {push dx}
+\1W%\0K6o"c3q"U,b_asm  {mov dx,addr}
0Z)u#t i-@9Z1vtech.techweb.com.cn_asm  {mov al,data}
;U#r1A y)L3L.y_asm  {out dx,al}
"h8O:_$g1n4Ztech.techweb.com.cn_asm  {pop dx} +w!~3U1w1J3n#~${
_asm  {pop ax}
7d$[:\%@9x6O;r8?$|1N:D}
1f1L!_'\3T;c程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛/*********************************************************/
5L)v)R;Y9u8@程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛WORD pio_inword( WORD addr )
2I)E$R+|/~7h)Y5w2M%U.V{ 程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛)?&[5W&G-y(h
WORD data_word;
2P6l6p;[2O9Z)Y)o0P+jtech.techweb.com.cn2R.N:e5s7z,f
    _asm  {push ax}
5l*T:d6h1iTechWeb-技术社区    _asm  {push dx} TechWeb-技术社区#@,E*w4L0]3B-t'z
    _asm  {mov dx,regAddr} 5y9l;\2_7h6F7V8`;J
    _asm  {in ax,dx} tech.techweb.com.cn!H5?2_8~:O,x:c,S8t!w }/K1J1G
    _asm  {mov data_word, ax}
0W$q.N%w3^TechWeb-技术社区    _asm  {pop dx}
.k#|,H2a6E%?0k+\"k!D.x    _asm  {pop ax}
8?#i1[ v#Z([程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛8O+\7?3t+x&G.F
    return data_word; tech.techweb.com.cn2K3Z.?;i(^'V9q
}
;b)J8K)T i9f3],o4@/*********************************************************/
6J)q3h"u(b0F)U$p3[程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛void pio_outword( WORD addr, WORD data )
4v0U:u'Q.t4D#`TechWeb-技术社区{
)]-I4c$O"C w4@.h/B;c    WORD regAddr=pio_reg_addrs[addr]; "?2S/R!L$^:k3U2t
    _asm  {push ax}
&Z%K/p1w/r9L!p-J    _asm  {push dx} TechWeb-技术社区 d4^0P7B1Z#M.|#Z*S
    _asm  {mov dx,regAddr}
2J)P't%D.@(_tech.techweb.com.cn    _asm  {mov ax,data} tech.techweb.com.cn'H j1D#E/P3{ X1s
    _asm  {out dx,ax} TechWeb-技术社区;g5^!I&_$[+w8D4j&d:s-b'_7G
    _asm  {pop dx}
-I6L'o6T9jtech.techweb.com.cn    _asm  {pop ax}

引用 回复 顶部
游客
该用户匿名发帖









发表于 2008-8-20 11:59
x86处理器有inport和outport指令,也有相应的C语言函数库。
+~)t+W8y+p4P:?0e你的WinCE是哪一个版本?不同的版本可能有点不一样,还有就是访问的地址空间应该是虚拟的地址

引用 回复 顶部
游客
该用户匿名发帖









发表于 2008-8-20 11:59
阿,有这么复杂,就是帮其他人写个通讯程序,这个通讯跟处理有关系吗,跟wince的版本也有关系吗,我只是想在EVC4+sp4+标准SDK  这样能跑就行了,我做实验是读取硬盘的数据(端口号为0x1f0,0x3f6),这种情况用inport,outport行吗,我看望上很多人说用嵌入汇编阿

引用 回复 顶部
游客
该用户匿名发帖









发表于 2008-8-20 11:59
C语言无所不能.........................

引用 回复 顶部
游客
该用户匿名发帖









发表于 2008-8-20 12:00
高手指点阿,这一点没通过其他事情都没法作阿

引用 回复 顶部
游客
该用户匿名发帖









发表于 2008-8-20 12:00
当然不用嵌入汇编了,直接用c就可以了,我发给你一本书,你可以在那里找找看应该有例子

引用 回复 顶部
游客
该用户匿名发帖









发表于 2008-8-20 12:00
hi, dfhggd你好,好啊,谢谢你,我的Email是 hwu@sst.com 非常感谢,我在线接受哦

引用 回复 顶部
游客
该用户匿名发帖









发表于 2008-8-20 12:00
这个不需要嵌入汇编的,完全理解错了。tech.techweb.com.cn G9d4H;L&_/E)u,Z(J7b

9`#`:{8S1G+U#e7t-?&z程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛既然是在eVC+SDK下,那么就是做应用程序,而不是驱动。3Q0T3F"\(W.t7W2{
TechWeb-技术社区#?9b8h$K6J9r!G:T,v5p3a.k
你只要以流驱动接口方式打开硬盘就行,然后以文件方式操作就ok,不涉及任何底层的接口之类的。

引用 回复 顶部
游客
该用户匿名发帖









发表于 2008-8-20 12:00
dfhqgd您好:
%N/u&?-{2A#x(m(dtech.techweb.com.cn什么书名可以告诉我吗??

引用 回复 顶部
游客
该用户匿名发帖









发表于 2008-8-20 12:00
也许我没说清楚,我是要通过端口通讯,也许用API的CreateFile可以操作,但是我不要这种方法,请指教

引用 回复 顶部
查看积分策略说明快速回复主题
选项 标题 Smilies
禁用 URL 识别
禁用 Smilies
禁用 Discuz!代码
使用匿名发帖
使用个人签名
接收新回复邮件通知
内容





当前时区 GMT+8, 现在时间是 2008-11-23 05:04
京ICP证060517号

本论坛支付平台由支付宝提供
携手打造安全诚信的交易社区 Powered by Discuz! 5.5.0 © 2001-2008 Comsenz Inc.
Processed in 0.030555 second(s), 7 queries

清除 Cookies - 联系我们 - TechWeb.com.cn - Archiver - WAP