mini2440 裸机程序
b02330224
这个作者很懒,什么都没留下…
展开
-
mini2440 UART Print实验
本实验是使用UART 实现打印功能,考虑到以后程序需要使用该功能显示,所以进行本次实验。主要难点在于UART Print函数的编写,必须调用标准库函数#include ,下面是该函数具体解释:va_list完成可变参数的操作具体实现如下n 由于无法列出转载 2011-09-26 13:15:03 · 691 阅读 · 0 评论 -
mini2440外部irq中断实验
上图为中断控制流程图,SUBSRCPND为子中断状态寄存器,当中断发生时相应位被置一,清除中断标志位需要向该寄存器写1,因为它是只读存储器,只要向里面写就可以清除相应的位,而不是真的写进去了。SUBMASK为子中断屏蔽寄存器,向相应位写1代表屏蔽该中断,SRCPND为一类中断的状转载 2011-09-26 13:38:45 · 686 阅读 · 0 评论 -
ARM 9:S3C2440 FCLK, HCLK, PCLK时钟的关系
ADS1.2中关于时钟的C代码ChangeMPllValue((mpll_val>>12)&0xff, (mpll_val>>4)&0x3f, mpll_val&3);ChangeClockDivider(key, 12); 1)FLCK、HCLK和P转载 2011-09-27 11:32:59 · 632 阅读 · 0 评论 -
关于3C2440 FCLK, HCLK, PCLK的关系
ADS1.2中关于时钟的C代码ChangeMPllValue((mpll_val>>12)&0xff, (mpll_val>>4)&0x3f, mpll_val&3);ChangeClockDivider(key, 12); 1)FLCK、HCLK和PCLK的关系转载 2011-09-27 11:33:40 · 674 阅读 · 0 评论 -
流水灯+led显示0-15
#define GLOBAL_CLK 1#include #include #include "def.h"#include "option.h"#include "2440addr.h"#include "2440lib.h"#include "2转载 2011-09-27 13:20:18 · 1112 阅读 · 0 评论 -
国嵌实验:Uart_poll
/*************************************************Function name: 这是基础实验的一个模版Parameter : 无Description : 做基础实验,直接调用该模板即可Return原创 2011-09-27 14:21:40 · 868 阅读 · 0 评论 -
国嵌实验:触摸屏
#define GLOBAL_CLK1#include #include #include "def.h"#include "option.h"#include "2440addr.h"#include "2440lib.h"#include "2原创 2011-09-27 15:28:48 · 873 阅读 · 0 评论 -
ARM中计算MPLL的方法
1. U32 mpll_val=0; mpll_val = (92 算得mpll_val的二进制:0101 1100 0000 0001 0001 注意:(922. ChangeMPllValue((mpll_val>>12)&转载 2011-09-26 10:32:46 · 956 阅读 · 0 评论 -
ARM 9:大端(Big-endian)和小端(Little-endian)区别
端模式(Endian)的这个词出自Jonathan Swift书写的《格列佛游记》。这本书根据将鸡蛋敲开的方法不同将所有的人分为两类,从圆头开始将鸡蛋敲开的人被归为Big Endian,从尖头开始将鸡蛋敲开的人被归为Littile Endian。小人国的内战就源于吃鸡蛋时是究竟从转载 2011-09-27 11:35:25 · 3045 阅读 · 0 评论 -
arm板做的ad转换(用串口 发送至超级终端显示)
/*************************************************Function name: 这是基础实验的一个模版Parameter : 无Description : 做基础实验,直接调用该模板即可Return转载 2011-09-27 13:14:42 · 821 阅读 · 0 评论 -
Uart_Printf()函数分析
ARM与PC机通信,常通过Uart_Printf()这个函数在上位机里输出信息。下面来详细分析这个函数功能。原形://-----------------------------------------------------------------void U转载 2011-09-27 13:19:37 · 836 阅读 · 0 评论 -
国嵌实验:key_poll,采用查询的方式一旦按键再松开,LED亮灭一次
/*************************************************Function name: 这是基础实验的一个模版Parameter : 无Description : 做基础实验,直接调用该模板即可Return原创 2011-09-25 20:33:47 · 903 阅读 · 0 评论 -
ARM9中计算MPLL的方法
测试程序400M的算法: i = 2 ; //don't use 100M! switch ( i ) { case 0: //200 key = 12; mpll_val = (92 break; case 1: //300 key转载 2011-09-27 11:39:26 · 957 阅读 · 0 评论 -
mini2440 ADC_poll实验
/*************************************************Function name: 这是基础实验的一个模版Parameter : 无Description : 做基础实验,直接调用该模板即可Return原创 2011-09-27 13:01:50 · 545 阅读 · 0 评论 -
2440 中断分析(转载)
原文地址http://blog.sina.com.cn/s/blog_530f95e90100e65i.html最近在学习ARM的S3C2440开发板的程序,现在在学习系统启动程序,2440init.s中的,中断处理,请看一下为网上朋友的讲解:这个 2440test里转载 2011-09-27 13:23:24 · 439 阅读 · 0 评论 -
arm处理器中断设置
中断初始化1.设置引脚为中断模式(如设置按键1对应的eint8,应设置GPGCON[1:0]=102.设置中断触发方式(如eint8禁止滤波,应设置EXTINT1[3:0]=0000)3.清除相应的中断标志位(往rEINTPEND相应位写1,即rEINTPEND |=转载 2011-09-27 13:23:53 · 954 阅读 · 0 评论 -
mini2440 led流水灯实验
mini2440开发板共四个led灯,分别接在GPB5、6、7、8管脚,首先需要配置并初始化GPB端口,需要设置5、6、7、8的GPBCON控制寄存器为输出方式,让后一次点亮第一个灯(向数据寄存器GPBDAT相应位写0,设置为低电平),延时,全灭,点亮第二个灯.....,实现流水转载 2011-09-26 13:32:34 · 1548 阅读 · 0 评论 -
mini2440 lcd显示汉字
经过一个周的反复学习调试,今晚终于把mini2440 lcd液晶屏裸机驱动调试成功了,最难设置的主要是它配套的统宝3.5寸液晶屏频率及参数的设置,主要需要配置几个寄存器。LCDCON1-5用来配置时钟频率,水平竖直宽度,前肩后肩以及脉宽的设置。VBPD:确定帧同步信号和帧转载 2011-09-26 13:24:21 · 1724 阅读 · 0 评论 -
mini2440 实时时钟实验
本实验主要是设置实时时钟和显示实时时钟,用到的寄存器主要有rRTCCON寄存器写1为打开读写使能,写0为关闭读写使能,为了保护数据不被错误是使用,每次读写必须先写1再写0。还有rBCDYEAR,rBCDMON,rBCDDATE,rBCDDAY,rBCDHOUR,rBCDMIN,转载 2011-09-26 13:17:34 · 648 阅读 · 0 评论 -
mini2440 RTC实时时钟中断和报警功能实验
本实验主要使用实时时钟的报警功能和时钟节拍功能,由于涉及到中断必须先进行mmu即内存重定向,但是这对于UART的接收返回地址有影响,具体怎么修改没有找到解决方案,所以本实验无法输入数据设置报警时间,只能在原来的基础上增加十秒来验证报警功能,另外进入显示时间选项后无法退出,需要增加转载 2011-09-26 13:18:17 · 1171 阅读 · 0 评论 -
mini2440 蜂鸣器
蜂鸣器" title="mini2440 蜂鸣器" style="margin-top:0px; margin-right:0px; margin-bottom:0px; margin-left:0px; padding-top:0px; padding-right:0px;转载 2011-09-26 13:36:08 · 878 阅读 · 0 评论 -
mini2440 定时器中断实验
Timer定时器主要配置一下寄存器1、TCFG0和TCFG1:分别设为119和0x03 这俩个寄存器用于设置“Control Logic”的时钟,计算公式如下:Timer input clock Frequency = PCLK / {prescaler value+1}转载 2011-09-26 13:39:34 · 1024 阅读 · 0 评论 -
mini2440 时钟频率的配置
S3C2440的频率设置通过设置三个寄存器就可以完成,LOCKTIME取默认值0x00ffffff,CLKDIVN配置FCLK:HCLK:PCLK三者的比例,详细参考数据手册,对于MPLLCON寄存器,[19:12]为MDIV,[9:4]为PDIV,[1:0]为SDIV。有如下计转载 2011-09-26 13:40:15 · 903 阅读 · 0 评论 -
mini2440 UART查询和中断方式
1、初始化:a、把使用到的引脚GPH2、GPH3定义为TXD0、RXD0:GPHCON |= 0xa0GPHUP |= 0xf0(禁止上拉)b.ULCON0 ( UART channel 0 line control register ):设为0x转载 2011-09-26 13:41:20 · 1073 阅读 · 0 评论 -
mini2440 看门狗实验
WDT(看门狗定时器), 看门狗定时器的主要作用是在程序因为干扰而跑飞后,能够使系统复位,不至于使系统永远的死下去。 看门狗的工作原理为:如果程序正常执行,就必须隔一段时间进行喂狗操作,如果达到设定时间没有进行喂狗则看门狗程序会认为程序跑飞或者死掉,会自动进行系统复转载 2011-09-26 13:42:19 · 759 阅读 · 0 评论 -
UART的编程
S3C2440A 的通用异步收发器 (UART )配有 3 个独立异步串行 I/O (SIO )端口 ,每个都可以是基于中断或基于 DMA 模式的操作。换句话说 ,UART 可以通过产生中断或 DMA 请求来进行 CPU 和 UART 之间的数据传输。UART转载 2011-09-26 13:46:54 · 1303 阅读 · 0 评论 -
mini2440 ad转换实验
为驱动液晶屏做准备,我们需要先研究下ad转换功能。本实验通过调整滑动变阻器改变输出电压,通过ad实现模数转换,实验比较简单,主要配置ad寄存器,具体实现注释中详细给出。实验代码如下:#define GLOBAL_CLK 1#转载 2011-09-26 13:19:56 · 1253 阅读 · 1 评论 -
mini2440 lcd显示汉字
本实验在驱动前一个实验的基础上实现了汉字和字母的显示。主要在于汉字写入函数Draw_Text16()和ASCII写入函数Draw_ASCII()的编写,这两个函数主要用到一个两重循环给每个点赋值相应的颜色,汉字占用16*16个像素比ASCII的8*16复杂一点,需要在第二层循环再转载 2011-09-26 13:24:53 · 1629 阅读 · 4 评论 -
mini2440 触摸屏实验
本实验为mini2440触摸屏裸机驱动实验,通过点击触摸屏获得该点的坐标,然后通过UART显示在电脑上,主要配置ADCCON控制寄存器,利用中断模式读取X,Y坐标,并显示出来,代码后注释已经详细给出,具体实验代码如下:#define GLOBAL_CLK 1#in转载 2011-09-26 13:25:22 · 775 阅读 · 0 评论 -
mini2440 PWM驱动蜂鸣器
PWM(Pulse Width Modulation)——脉宽调制,它是利用微控制器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用于测量、通信、功率控制与变换等许多领域。本实验通过定时器TIMER0的pwm功能驱动GPB0管口的蜂鸣器。需要设置GPB0的GP转载 2011-09-26 13:41:49 · 1039 阅读 · 0 评论 -
PWM定时器
S3C2440A 有 5 个 16 位定时器。其中定时器 0、1、2 和 3 具有脉宽调制 (PWM )功能。定时器 4 是一个无输出引脚的内部定时器。定时器 0 和 1 共用一个 8 位预分频器 ,定时器 2、3 和 4 共用另外的 8 位预分频器。每个定时器都转载 2011-09-26 13:05:31 · 729 阅读 · 0 评论 -
mini2440 UART实现串口接收后转换为整型数据
本实验通过UART接受数据,判断数据类型,转换为整型数据,打印出输入数据的整型值。本实验为以后裸机实验输入部分打下基础,具体实现以注释形式给出,实验代码如下:#define GLOBAL_CLK 1#include #inc转载 2011-09-26 13:15:38 · 1040 阅读 · 0 评论 -
mini2440 IIC-AT24C08a读写实验
本实验为IIC总线通信协议,以友善之臂mini2440为实验平台,对其开发板上的AT24c08a指定位置写入字符串“hello”,并指定位置读出该位置的内容。 初始工作,首先需要配置GPE14、15管脚分别为IICSLC、IICSDA,并禁止上拉功能。然后设置IIC转载 2011-09-26 13:18:54 · 1272 阅读 · 0 评论 -
国嵌实验:key_interrupt(按键中断),采用中断方式当KEY1 按下时,LED亮灭一次
#define GLOBAL_CLK1#include #include #include "def.h"#include "option.h"#include "2440addr.h"#include "2440lib.h"#include "244原创 2011-09-25 22:26:46 · 5443 阅读 · 0 评论