jz2440A芯片简介:

3C2440A 是三星公司推出的16/32位精简指令集(RISC)微型处理器,它基于ARM v9系列的ARM920T核心,主要为手持设备和普通应用提供了低功耗的高性能的小型芯片微型控制器的解决方案。
S3C2440A 的突出特点是其处理器核心,是一个由Advanced RISC Machines(ARM)公司设计的16/32 位ARM920T 的RISC 处理器。ARM920T 实现了MMU,AMBA 总线和哈佛结构高速缓冲体系结构。这一结构具有独立的16KB 指令高速缓存和16KB 数据高速缓存。每个都是由具有8 字长的行(line)组成。
综合对芯片的功能描述,S3C2440A 集成了的以下片上功能:
        ● 1.2V 内核供电, 1.8V/2.5V/3.3V 储存器供电, 3.3V 外部I/O 供电,具备16KB 的指令缓存和16KB 的数据缓存和MMU的微处理器

● 外部存储控制器(SDRAM 控制和片选逻辑)

● LCD 控制器(最大支持4K 色STN 和256K 色TFT)提供1 通道LCD 专用DMA

● 4 通道DMA 并有外部请求引脚

● 3 通道UART(IrDA1.0, 64 字节发送FIFO 和64 字节接收FIFO)

● 2 通道SPI

● 1 通道IIC 总线接口(支持多主机)

● 1 通道IIS 总线音频编码器接口

● AC’97 编解码器接口

● 兼容SD 主接口协议1.0 版和MMC 卡协议2.11 兼容版

● 2 通道USB 主机/1 通道USB 设备(1.1 版)

● 4 通道PWM 定时器和1 通道内部定时器/看门狗定时器

● 8 通道10 位ADC 和触摸屏接口

● 具有日历功能的RTC

● 摄像头接口(最大支持4096×4096 像素输入;2048×2048 像素输入支持缩放)

● 130 个通用I/O 口和24 通道外部中断源

● 具有普通,慢速,空闲和掉电模式

● 具有PLL 片上时钟发生器

一、阅读电路原理图

jz2440共有3个LED灯

1、

由上图可知,三个LED灯分别被连接在芯片上GPF4/5/6三个管脚,故需要配置GPF4/5/6三个管脚。

二、阅读S3C2440A芯片手册

在手册上搜索GPF4/5/6可以找到:

需要将GPF4/5/6配置为输出引脚,即8~13配置为00,0~7配置为1

三、使用代码实现

1、汇编语言

/*
*点亮LED2:gpf5
*/.text
.global _start_start:
/*
*配置GPF5为输出引脚
*把0x100写到地址0x5600050
*/ldr r1, =0x56000050ldr r0, =0x100 /* mov r0, #ox100*/str r0, [r1]/*
*设置GPF输出高电平
*把0写到地址0x56000054
*/ldr r1, =0x56000054ldr r0, =0 /* mov r0, #0*/str r0, [r1]/*死循环*/
halt:b halt

2、c语言

start.S


.text
.global _start_start:/* 关闭看门狗 */ldr r0, =0x53000000ldr r1, =0str r1, [r0]/* 设置内存: sp 栈 *//* 分辨是nor/nand启动* 写0到0地址, 再读出来* 如果得到0, 表示0地址上的内容被修改了, 它对应ram, 这就是nand启动* 否则就是nor启动*/mov r1, #0ldr r0, [r1] /* 读出原来的值备份 */str r1, [r1] /* 0->[0] */ ldr r2, [r1] /* r2=[0] */cmp r1, r2   /* r1==r2? 如果相等表示是NAND启动 */ldr sp, =0x40000000+4096 /* 先假设是nor启动 */moveq sp, #4096  /* nand启动 */streq r0, [r1]   /* 恢复原来的值 */bl mainhalt:b halt

main.c


#include "s3c2440_soc.h"void delay(volatile int d)
{while (d--);
}int main(void)
{int val = 0;  /* val: 0b000, 0b111 */int tmp;/* 设置GPFCON让GPF4/5/6配置为输出引脚 */GPFCON &= ~((3<<8) | (3<<10) | (3<<12));GPFCON |=  ((1<<8) | (1<<10) | (1<<12));/* 循环点亮 */while (1){tmp = ~val;tmp &= 7;GPFDAT &= ~(7<<4);GPFDAT |= (tmp<<4);delay(100000);val++;if (val == 8)val =0;}return 0;
}

jz2440——点亮led相关推荐

  1. 第一个驱动程序(点亮LED灯)

    1.概述 一个软件系统分为:应用程序.库.操作系统.驱动程序. (1)应用程序使用库函数提供的open打开LED设备文件. (2)库根据open函数传入的参数执行"swi"指令,引 ...

  2. 和12岁小同志搞创客开发:手撕代码,点亮LED灯

    目录 1.Arduino编程架构 2.点亮LED灯 机缘巧合在网上认识一位12岁小同志,从零开始系统辅导其创客开发思维和技巧. 项目专栏:https://blog.csdn.net/m0_381069 ...

  3. zigbee学习之路(二)点亮LED

    一.前言 今天,我来教大家如何点亮led,这也是学习开发板最基础的步骤了. 二.原理分析 cc2530芯片跟虽然是51的内核,但是它跟51单片机还是有区别的,51单片机不需要对IO口进行配置,而cc2 ...

  4. STM32F 103C8T6开发板 点亮LED灯

    每组IO口含下面7个寄存器.7个寄存器可以控制一组GPIO的16个IO口. GPIOx_CRL:端口配置低寄存器 GPIOx_CRH:端口配置高寄存器 GPIOx_IDR:端口输入寄存器 GPIOx_ ...

  5. STC89C52单片机 点亮LED灯

    点亮LED灯 一.什么是LED LED全称为半导体发光二极管,采用半导体材料制成的,以直接将电能转化为光能,电号转换成光信号的发光器件:其特点是功耗低.高亮度.色彩艳丽.坑振动.寿命长(正常发光8-1 ...

  6. stm32核心板可以点亮灯吗_STM32库函数点亮LED

    很多码农写出的第一个程序是"Hello World!",因为这个程序简单容易上手,能给你自信心,让你更加坚定学习编程的信念:单片机也是如此,相信很多单片机老师教给你的第一个程序就是 ...

  7. 从零开始的51单片机——(1)点亮LED

    从零开始的51单片机--点亮LED 原理 对于开发板上的8个LED分别对应一个八位二进制数. 当对应位为1的时候LED灯灭,为0的时候灯亮 例如1111 1110则是第一个LED灯亮 在C语言中,我们 ...

  8. Raspberry PI 系列 —— 裸机点亮LED灯

    Raspberry PI 系列 -- 裸机点亮LED灯 背景 近期刚买了Raspberry PI B+,配置执行了官方提供的Raspbian系统,折腾了一周Linux系统,感觉没啥意思,于是就试着想了 ...

  9. 蓝桥杯小白系列之汇编点亮led灯

    蓝桥杯小白系列之汇编点亮led灯 1.源代码 2.逐条分析 (1)ORG 0000H (2)START: 伪指令,编译器可识别,单片机不可识别,可以随便起. (3)蜂鸣器设置 蓝桥板插电以后蜂鸣器常会 ...

最新文章

  1. python 30分钟_Python 30分钟入门指南
  2. 关卡设计快速入门_5. 编辑已放置的Actor
  3. MIT自然语言处理第四讲:标注
  4. 03-requests模块携带UA请求头,携带参数,携带cookie,持久化存储
  5. 87岁老奶奶用微软自带画图软件绘画 惊艳了世人
  6. 5G三兄弟NB-IoT排老几?NB-IoT介绍
  7. python中遇到循环import即circular import的问题原理剖析及解决方案
  8. 简述linux常见的安全措施,六个常用的Linux安全基本措施
  9. Python中多线程和多处理的初学者指南
  10. 随想录(回乡的若干小事)
  11. 【干货】微信私域运营实战指南.pdf(附下载链接)
  12. [SCOI2005][BZOJ 1084]最大子矩阵
  13. SeSe 2004-12-18
  14. JavaWeb复习题(含答案)
  15. 2018年【计算机视觉+机器学习+人工智能】领域重要会议汇总
  16. w7无法訪问计算机上硬盘分区,Win7/win10双系统无法打开磁盘分区提示拒绝访问怎么解决...
  17. 【H.264】码流解析 annexb vs avcc
  18. AVD Manager创建模拟器
  19. hql 字符串where语句_常用的HQL语句
  20. KINOVA公司JACO2、MICO2从安装到开发

热门文章

  1. localPosition和anchoredPosition、offsetMin和offsetMax、SizeDelta
  2. 调用百度h5活体检测,参数video_base64,视频解析错误的问题
  3. 英文文献作者的几种写法
  4. JDBC连接oracle11g——socket read timed out
  5. 【毕业设计day04】思路理清
  6. Android Wear开发浅析(一)
  7. 大公司高级Android工程师技能要求
  8. 微波射频学习笔记7--------阻抗匹配
  9. rtmp直播拉流安卓开发
  10. 小白扫盲:浅谈web应用在nat123下的vip服务