mini2440使用J-LINK 直接下载到NOR-FLASH
摘要:J-Flash ARM的配置。 一般说来file-->open project里面会找到一些*.jflash的配置文件,加载他们就行了,但是没找到适合S3C2440的。所以自己建了一个MINI2440.jflash,手动进行配置:j-link设置1. 打开J-Flash ARM,并进入菜单:Options-->Project settings2.主要设置CPU选项和Flash选项CPU :Core --> ARM9, Little endianUse target RAM(faster)-->Addr:40000000 4KB(不选很慢;从Nor flash启动时内部B
阅读全文
中断服务程序经常出现的错误
摘要:1、ISR不能有返回值2、ISR不能有参数3、不要在ISR中做浮点运算。4、printf一般有重入和性能问题,一般不要在ISR中使用。更多嵌入式linux及编程学习交流的文章,请访问我的个人网站”恩享网” :http://www.enxiang.icoc.cc,期待与您共同进步。
阅读全文
#define的优点/volatile的好处
摘要:#define的优点1、方便程序的修改,提高效率。2、提高程序运行的效率:函数的调用需要保留现场,花费时间,而#define宏定义是在预处理阶段就将宏展开,执行时不需要转换,所以执行效率高。volatile的好处:volatile表示的含义是变量的值可能在运行过程中被意想不到的改变,通过此声明,每次用到这个变量时都会重新去读取这个变量的值而不是使用保存在寄存器里面的备份。用在以下场合: 状态寄存器、一个中断服务子程序会访问到的非自动变量、多线程应用中被几个任务共享的变量。更多嵌入式linux及编程学习交流的文章,请访问我的个人网站”恩享网” :http://www.enxiang.icoc.c
阅读全文
大小端判断及相互转化
摘要://小端转化为大端,。。大端转化为小端也是一样的。#include int main(){ int i = 0x11223344; char * a = (char *)&i; char s; int j; printf("Little Endian:\n"); for (j = 0; j int main(){ int i=0x12345678; if(*(char *)&i=0x12) //低字节做与运算 printf("big endian");\ else if(*(char *)&i==0x78) printf(&quo
阅读全文
U--BOOT移植----s3c24x0_CLOCK_POWER和icache_enable、dcache_enable函数
摘要:移植U--BOOT的过程中需要修改board_init()函数以设置系统时钟,在board_init源代码中出现了s3c24x0_CLOCK_POWER定义指针,那么什么是s3c24x0_CLOCK_POWER呢?s3c24x0_CLOCK_POWER其实是一个结构体,被定义在s3c24x0.h中,大概在120的位置有其定义,其源代码为:typedef struct { S3C24X0_REG32 LOCKTIME; S3C24X0_REG32 MPLLCON; S3C24X0_REG32 UPLLCON; S3C24X0_REG32 CLKCON; ...
阅读全文
关于S3C2440的学习总结(一)--内存分配和启动方式
摘要:ARM是功能更加强大的单片机,在学习裸机程序设计的过程中,发现ARM比一般的单片机集成了更多的外设,包含更多的GPIO,有更多的寄存器,通过寄存器的设置和启用来控制相关引脚,从而控制相关设备。这导致ARM的编程和一般单片机的编程有所不同,ARM9一般是32位。而现在单片机一般为8位和16位,编程时在单片机上对于某个位一般直接赋值,而对于ARM则习惯使用位操作,一方面容易实现操作,另一方面不影响寄存器其他位的值。 S3C2440为32位的CPU,故从理论计算其应该有4GB的寻址范围,但实际上只有1GB被使用来连接外设,另一部分作为CPU的内部存储器地址,其余未被使用。其中1GB的寻址范围又分..
阅读全文
关于存储器(SRAM、DRAM、SDRAM的区别)
摘要:SRAM、DRAM、SDRAM的区别存储器可分为易失性存储器和非易失性存储器,易失性存储器一般有:SRAM、DRAM、SDRAM等,而非易失性存储器有:ROM(只读存储器)、PROM(可编程式只读存储器)、EPROM(电可改写只读存储器)、EEPROM(电可擦除编程式只读存储器)、FLASH Memory(闪存)等。若数据需要长期保存,则必须存储在非易失性的存储器里面。易失性存储器在掉点之后数据无法保存,将会丢失,而非易失性存储器在掉电之后仍然可以保存资料。SRAM:中文名为静态随机访问存储器,不需要进行刷新操作,只要不掉电数据就不会丢失。“随机访...
阅读全文