BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / embedded-system / #5041同步于 2009/6/8
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Embedded_System机器人发帖

中断方式操作SD卡,目标板死机...

wufeissdfz
2009/6/8镜像同步6 回复
硬件环境 GX-ARM9 -2410BP,通过操作S3C2410内的SD卡主机控制器寄存器发送命令操作SD卡 软件环境 VxWorks操作系统,使用intConnect()和intEnable()完成了ISR的挂接和开启,两个函数均返回OK,读取INTMSK的值确认了SDI的中断已经开启。 预想的操作 发送CMD0后使用中断方式检验命令操作完成,即触发ISR后,ISR先验证SDICSTA的cmdSent对应位,之后释放信号量确认操作完成。发送CMD0 的任务获得信号量后继续SD卡的初始化... 遇到的问题 开启SDIIMSK的cmdSent位的屏蔽后,发送CMD0后目标板就死机了,表现为target server和target agent的连接断开 请教原因...
订阅后,新回复会通过你的通知中心匿名送达。
6 条回复
hobby机器人#1 · 2009/6/8
中断处理函数调试过吗? 是不是中断处理函数中挂掉了或者中断处理函数被反复调用,使得连接断开。 如果可能是这样的原因,可以在中断处理函数中做点灯什么的
wufeissdfz机器人#2 · 2009/6/8
【 在 hobby 的大作中提到: 】 : 中断处理函数调试过吗? : 是不是中断处理函数中挂掉了或者中断处理函数被反复调用,使得连接断开。 : 如果可能是这样的原因,可以在中断处理函数中做点灯什么的 我没把故障说清楚,按照预想发送CMD0后应触发了中断,执行ISR。 但ISR中的logMsg()并没有想超级终端输出信息,程序执行到设置寄存器发送CMD0后目标机就死了... 我发现不开启SDIIMSK中对cmdSent的屏蔽,发送CMD0目标机不会死(没触发中断目标机就不死)乖乖的semTake()在那儿 我的ISR中就logMsg(),复位中断源,释放信号量这3个语句为什么会死呢? 话说惭愧,我不会在中断中点灯...
hobby机器人#3 · 2009/6/9
vxworks里面中断和点灯怎么搞不懂,但是Linux里面搞过,原理应当大同小异吧。 Linux中 1、中断打印使用printk,并需要合理设置消息等级(总共5级),高等级的消息会打印出来,低等级的会被过滤(当然也可以通过修改一个什么设置改变过滤的标准)。这个如果你需要我再查 2、点灯的话,一般的就是往某个IO端口输出一个有效电平。就我能想到的,IO端口的控制方式有两种,一种是微原里那种外部端口(忘记叫什么名字了),另一种是寄存器的GPIO管脚引出的。我做过的是后者,只要按照CPU手册向相应寄存器中设置值即可。
wufeissdfz机器人#4 · 2009/6/9
【 在 hobby 的大作中提到: 】 : vxworks里面中断和点灯怎么搞不懂,但是Linux里面搞过,原理应当大同小异吧。 : Linux中 : 1、中断打印使用printk,并需要合理设置消息等级(总共5级),高等级的消息会打印出来,低等级的会被过滤(当然也可以通过修改一个什么设置改变过滤的标准)。这个如果你需要我再查 : ................... 多谢回复 1logMsg()是向VxWorks下的一个任务tLogTask发消息,格式化输出由这个任务负责,不经过I/O系统不会导致阻塞,所以中断中的消息输出VxWorks一般都用它,不会出错(用系统时钟中断测试过了) 2操作SD卡也是走的看手册设置寄存器的路,我再看看手册 主要还是想咨询为什么进入ISR会出错... (系统时钟的ISR为啥很健康呢...)
hobby机器人#5 · 2009/6/9
【 在 wufeissdfz 的大作中提到: 】 : 多谢回复 : 1logMsg()是向VxWorks下的一个任务tLogTask发消息,格式化输出由这个任务负责,不经过I/O系统不会导致阻塞,所以中断中的消息输出VxWorks一般都用它,不会出错(用系统时钟中断测试过了) : 2操作SD卡也是走的看手册设置寄存器的路,我再看看手册 : ................... 哦 中断怎么会挂就不知道,没弄过SD卡的说 不过要想知道死在哪儿了,在没打印的情况下,倒是只能点灯了
yujun065682机器人#6 · 2009/6/10
CMD0好像是切换到SPI模式,好像2410的host不支持SPI模式,楼主发了CMD0后,卡切换至SPI模式,reponse将从数据线上回复,而你host不支持SPI,所以host死了,不知道我说的对不对,楼主参考。