PCI转并口 SJF 配置全过程

原文出处: http://blog.chinaunix.net/u2/70540/showart_722069.html

前几天高高兴兴地 从电子城买了友善之臂的QQ2440 ARM开发板,急急忙忙冲回寝室对此板进行功能测试。在往
PC机连JTAG 并口线的时候我彻底傻了眼!!!PC机上没有
并口,甚至连一个 串口都没有!!!于是赶紧上百度找谷歌,
令我失望的是几乎 没找的一个完整的解决方案。即使有也大
多是代价过于昂贵 的办法,相信没有并口的朋友也是很郁
闷,为什么配电脑 的时候…………
在此参考了一些网络资料整理出了这篇文章,希望对你有所帮助。我用的是PCI 转并口卡,其中还附带两个串口——正合 我意。不过我买的卡是被黑了,没办 法这边卖这种卡的太少 了(带并口+串口的),在淘宝几十块钱能搞定。
 
好了,现在切入正题。完整步骤如下:
 
1.安装GiveIo驱动(如果此驱动已安装可跳至下一步,PCI转并口的驱 动安装看安装说明, 在此略过)
 
A:下载GiveIo驱动程序
B:将GIVEIO.SYS拷贝到C:/WINDOWS/system32
/drivers目录下。
C:依次点击 控制面板->添加硬件->下一步->
是……->下一步->添加新的硬件设备->安装我手动 从…->
端口(COM/LPT)->从磁盘安装->浏览->保存有 文件
giveio.inf的目录->完成。安装成功后可以在设备管理
器->端口中看到一个名为giveio端口。
 
2.H-Jtag端口设置(如果已经按开发板用户手册配 置好的可以跳至下一步)
 
A:jtag settings
根据jtag的调试板的原理图对H-Jtag进行设置:
我的jtag原理图见附件,从图中可以看到以下信号的连接情况:
 
TMS->Y6->A6->4
TCK->Y8->A8->2
TDI->Y7->A7->3
TD0->A5-Y5->11
 
根据以上的连接情况就可以对H-Jtag进行设置了。点击H-Jtag菜单栏 上的settings->jtag settings->选择User define,进行如下设置:
TMS->Pin4 D2
TCK->Pin2 D0
TDI->Pin3 D1
TD0->Pin11 Busy
 
注意:
TMS->D2
TCK->D0
TDI->D1
后面修改SJF源码将会用到
 
B:Port settings
点击H-Jtag菜单上的settings->port settings 选择LPx。在LPx右边框填入0xCD00,对H-Jtag的设置完毕。
 
0xCD00的来历:CD00 这个值在后面修改SJF2440(如果你是2410的板子那么就是SJF2410了)的源代码也将用到。 安装完PCI转并口卡的驱动后 右击我的电脑->属性->硬件->设备管理器->端口(COM和LPT)->双击PCI ECP Parallel Port(LPT1)->资源。这样就可看到“输入/输出范围CD00-CD07”和“输入/输出范围CC00-CC07”。CD00就是从这读出 来的。
 
 
3.修改SJF2440的源代码(如果你用了PCI转并口并且H-Jtag相应的端口都配好后发现不能使用SJF2440或 SJF2410那么极有可能需要修改源代码)
SJF2440和SJF2410源代码见附件。下载完源代码后从VC++中打 开.dsp工程文件。
   
A:修改源代码中的ppt.h头文
#define LPT1 0x378 
#define LPT2 0x278 
#define LPT3 0x3bc 
将这三行改为
#define LPT1 0xcd00
#define LPT2 0xcd00
#define LPT3 0xcd00
其实对于我的PC机来说修改LPT1就够了。具体看各位装完PCI驱动后用了 哪个LPT了。
 
B:修改源代码中的jtag.h头文件
#define TCK_H   0x01
#define TDI_H   0x40            
#define TMS_H   0x02
将这三行修改为
#define TCK_H   0x01
#define TDI_H   0x02           
#define TMS_H   0x04
 
为什么这么修改详见附件中的《Jflash-s3c2410(linux版 本)原理分析》
 
在此我仅做下简要说明
在第2步是我有如下提示:
注意:
TMS->D2
TCK->D0
TDI->D1
在此处就要 派上用场了
  
                            TMS TDI TCK 
D7  D6  D5  D4  D3  D2  D1  D0
0     0     0     0     0     1     0    0 (TMS_H)
0     0     0     0     0     0     0    1 (TCK_H)
0     0     0     0     0     0     1    0 (TDI_H)
 
所 以有
#define TCK_H   0x01 即TCK_H=01H=0000 0001B
#define TDI_H   0x02 即TDI_H=02H=0000 0010B
#define TMS_H   0x04 即TDI_H=04H=0000 0100B
 
至此所有配置过程结束。此时点击VC++的“!”就可以在工程文件所在目录的Debug子目录内产生SJF2440.exe了。
 
结束语:此文中难免有些疏漏,如有错误的地方还请大家指出来。希望此文能消除你PC机没并口问题的所有烦恼。
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值