在多核系统中,会存在多个CPU核竞争同一资源的情形,这就必须有一些机制来保证在竞争中不会出现错误,即同步互斥机制。这里主要针对同步互斥原语之一的自旋锁进行一点分析和记录。上图为一个多核系统的中断部分,很显然中断部分会存在许多竞争相关问题。自旋锁(Spinlock) 自旋锁是用来在多处理器环境...
分类:
其他好文 时间:
2014-10-18 16:47:22
阅读次数:
650
两个定时器的使用方式相同,现在就总结一下定时器的使用步骤:
1、装初值
2、确定工作方式,相关的寄存器是TMOD
3、开中断允许ET0或者ET1,,和EA
4、启动定时器
5、写中断服务程序
void 函数名() interrupt 1(如果选择定时器1,代号就是3)
{
//重新装初值
}...
分类:
其他好文 时间:
2014-10-18 15:36:32
阅读次数:
111
写外部中断程序的步步骤:
1、设置外部中断的触发方式,分为低电平触发和下降沿触发
2、设置外部中断的中断源允许
3、开启CPU的总允许位
4、设置优先级,这个可以省略
5、写中断服务程序,就是你想实现的功能,注意不需要声明,也不需要调用,也没有返回值...
分类:
其他好文 时间:
2014-10-18 12:40:33
阅读次数:
290
1 引言 随着USB2.0版本号的公布,USB越来越流行,已经成为一种标准接口。如今,USB支持三种传输速率:低速(1.5Mb/s)、全速(12Mb/s)和快速(480Mb/s),四种传输类型:块传输、同步传输、中断传输和控制传输。USB应用灵活方便,能满足多种外设的须要。随着个人便携式电子产品的增...
分类:
其他好文 时间:
2014-10-18 12:33:15
阅读次数:
208
最近在做一个关于串口的项目,于是把之前的串口程序又拿了出来,重新优化了一下!1、头文件《uart.h》如下: 1 /* 2 **************************************************************************************.....
分类:
其他好文 时间:
2014-10-18 04:17:40
阅读次数:
295
1,使用nios给出的驱动函数的顺序一般为1,清中断2,写控制寄存器,3,写参数寄存器4,中断注册,5,开始工作。因为开始工作控制位在控制寄存器中,所以会想到到最后一块写,省事,但是在dma试验中发现copy后的数据开头几个都是0,而且copy不完全。将写控制寄存器和开始工作分开则问题消失。2,中断...
分类:
移动开发 时间:
2014-10-17 18:28:00
阅读次数:
291
参考:
http://www.embedu.org/Column/Column240.htm
http://www.cnblogs.com/Anker/p/3269106.html
用户空间与内核空间
有了用户空间和内核空间,整个linux内部结构可以分为三部分,从最底层到最上层依次是:硬件-->内核空间-->用户空间。如下图所示:...
分类:
系统相关 时间:
2014-10-17 10:18:06
阅读次数:
351
转:http://zyc-to.blog.163.com/blog/static/17152400201110221114526/从0.94版本开始,ASIHTTPRequest可以恢复中断的下载12345678910111213141516171819- (IBAction)resumeInter...
分类:
Web程序 时间:
2014-10-16 21:06:33
阅读次数:
163
niosii中使用时间戳是很有用的,可以查看代码的执行时间是多少,在使用timestamp的过程中遇到一些问题现在做一下记录。1.硬件部分构建软核没什么,就加一个timer就行了,加完之后自动获得基地址和中断向量等级。生成软核,编译。2,软件部分需要注意,首先要设置timestamp的timer,我...
分类:
其他好文 时间:
2014-10-16 17:31:32
阅读次数:
249