- 博客(13)
- 资源 (2)
- 收藏
- 关注
原创 WinXP下用用户名和密码访问Ubuntu共享文件------Samba服务!
##########################下面代码里面的“dir”是指你自己共享文件夹的路径######################### 下面我们来共享群组可读写文件夹,假设你要共享的文件夹为: /home/ray/share首先创建这个文件夹 代码: #mkdir /dir/share #chmod 777 /di
2009-07-22 12:13:00 3561
转载 uC/OS-II如何使任务在就绪表中进入就绪态与退出就绪态
程序清单:使任务进入就绪态OSRdyGrp |= OSMapTbl[prio>>3]; (1)OSRdyTbl[prio>>3] |= OSMapTbl[prio&0x07];
2009-07-20 16:28:00 1271
原创 编译ARM-Linux-Gcc工具链!
昨天早晨就开始准备编译工具链了,这样就可以接下去学习第三章了,郁闷的是,我编译过程总是出错,我就在想是不是我输入错误呢,看出错提示,也不是这种类型的啊!就停在这里不动了。 今天下午,我着重比较了一下书中的步骤,我是按部就班的,所以应该不是步骤的错误,它使用的是ubuntu7,而我使用的是ubuntu9,隐隐感觉到是操作系统的原因,所以我查看了GCC的版本,是4.3的版本,感觉就是版本太高
2009-07-16 15:11:00 740
原创 ARM7的定时器配置!
ARM7的定时器是采用分频的方式来实现定时的,也就是说在配置定时器之前,一定要弄清楚Fpclk的频率是多少。 (ARM7的时钟概念,Fosc是晶振的频率,Fcclk是PLL输出频率(也就是处理器的时钟频率),Fcclk=M×Fosc,M是PLLCFG寄存器中的MSEL位的倍增器值。PLLCFG的MSEL[0~4].其中Fcclk最大不能超过60MHz)
2009-07-10 15:25:00 1492
转载 NXP ARM7 必须知道的例子!
寄存器和工作模式:7种工作模式:fiq/irq/abt/und/sys/usr/svc。通过"MSR cpsr_c,#0xdx"切换。上电时进入svc模式。svc和usr的区别是:svc可以通过"MSR cpsr_c,#0xdx"自由切换到其它任何模式,但是usr不可以。各模式下有自己的堆栈。要在程序启动后依次进入各个模式分别设置自己的堆栈,最后进入usr模式。好多个寄存器:r0 - r7 (a1
2009-07-10 09:22:00 6330 1
转载 嵌入式C 面试题
预处理器(Preprocessor) 1. 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题) #define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL 我在这想看到几件事情: 1). #define 语法的基本知识(例如:不能以分号结束,括号的使用,等等) 2). 懂得预处理器将为你计算常数表达式
2009-07-08 16:05:00 2984
转载 何时该用volatile?
一个定义为volatile的变量是说这变量可能会被意想不到地改变,这样,编译器就不会去假设这个变量的值了。精确地说就是,优化器在用到这个变量时必须每次都小心地重新读取这个变量的值,而不是使用保存在寄存器里的备份。下面是volatile变量的几个例子: 1). 并行设备的硬件寄存器(如:状态寄存器) 2). 一个中断服务子程序中会访问到的非自动变量(Non-a
2009-07-08 15:58:00 984
原创 关于向量中断和非向量中断的区别!
向量中断地址(即中断的入口)有16个(0--15),有硬件提供入口,而非向量的中断只有一个入口,而且要保存在VICDefVectAddr寄存器里面,是软件提供入口的。 注: 当采用V或者VL触发中断时,要用while循环防止ARM一直的中断。 while((EXTINT&0x02)!=0) {EXTINT = 0x02;
2009-07-08 15:31:00 1078
转载 ARM-thumb 过程调用标准!
根据“ARM-thumb 过程调用标准”:1,r0-r3 用作传入函数参数,传出函数返回值。在子程序调用之间,可以将 r0-r3 用于任何用途。被调用函数在返回之前不必恢复 r0-r3。---如果调用函数需要再次使用 r0-r3 的内容,则它必须保留这些内容。2.R4-R11 被用来存放函数的局部变量。如果被调用函数使用了这些寄存器,它在返回之前必须恢复这些寄存器的值。3, r12
2009-07-07 12:48:00 1115
原创 关于ARM的中断配置的一些体会!
今天做了一个中断的实验,感觉有点思路有点清晰了,看来学习就得理论加实践啊,呵呵! VIC的寄存器真是太多啦,刚开始看的时候根本无法记住啊,记住了也会忘记。但是我发现用流程图的方法记比较好啊,我总结啊。 1.要看你开什么中断了,若要用FIQ/IRQ中断,则还要在启动代码里面改一下CPSR寄存器的控制位 2.若是开的IRQ中断,则还要有向量和非向量IRQ之分。向量IRQ的话,要先选
2009-07-06 17:04:00 668
原创 对于LPC2210的存储器的重映射!
今天做了ARM7的重映射,书上说了芯片复位后,MEMMAP=0,意味着它将从boot block(是从2GB向下开始的一段8KB大小的(0x7FFFE000~0x800000000))重映射。 但是我通过调试,发现了我们不可能直接进入芯片复位的状态,而是根据BOOT[1:0]的电平来给memmap的寄存器赋值。复位后直进入下面的代码:Reset LDR PC,
2009-07-06 14:09:00 1018
转载 关于Volatile和const关键字!
C语言关键字volatile表明某个变量的值可能在外部被改变,因此对这些变量的存取不能缓存到寄存器,每次使用时需要重新存取。 该关键字在多线程环境下经常使用,因为在编写多线程的程序时,同一个变量可能被多个线程修改,而程序通过该变量同步各个线程。对于C编译器来说,它并不知道这个值会被修改,自然就把它cache在寄存器里面。 C编译器是没有线程概念的,这时候就需要用到volati
2009-07-06 09:50:00 761
原创 照着DATAsheet写程序的一点体会!
今天在实验室,照着74HC595的数据手册,写了一段代码,到底是没有经验的新手(以前都是拿别人的代码来改的),在写代码的时候出现了很大的问题,但是我感觉收获很多,所以现在总结下了。 首先,我现在体会到了Source Insight这个软件的优越性,写代码很方便的啊,推荐下吧。 我在21ic上下载了74HC595的DATASHEET,然后读了第一页的简介,再看看引脚图,功能表,波形图
2009-07-03 14:54:00 1651
uCGUI3.94源码
2009-09-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人