Tiny6410之按键裸机驱动】的更多相关文章

操作步骤: 第一步:查看开发板电路原理图 找到LED 和按键的管脚所对应的寄存器 LED:(见Tiny6410之LED裸机驱动) nLED_1 - GPK4 nLED_2 - GPK5 nLED_3 - GPK6 nLED_4 - GPK7 Buttons: K1   GPN0 K2   GPN1 K3   GPN2 K4   GPN3 由原理图可知LED对应的寄存器为GPK寄存器,buttons 对应的寄存器为GPL,由二极管的特性可知当LED_n为低电平时LED灯亮第二步:查看数据手册找到G…
UART简介: UART(Universal Asynchronous Receiver and Transmitter)通用异步收发器(异步串行通信口),是一种通用的数据通信协议,它包括了RS232.RS499.RS423.RS422和RS485等接口标准规范和总线标准规范,即UART是异步串行通信口的总称.而RS232.RS499.RS423.RS422和RS485等,是对应各种异步串行通信口的接口标准和总线标准,它规定了通信口的电气特性.传输速率.连接特性和接口的机械特性等内容,这些东东都…
操作步骤: 第一步:查看开发板电路原理图 找到LED 的管脚所对应的寄存器 nLED_1 - GPK4 nLED_2 - GPK5 nLED_3 - GPK6 nLED_4 - GPK7 由原理图可知LED对应的寄存器为GPK寄存器,由二极管的特性可知当LED_n为低电平时LED灯亮第二步:查看数据手册找到GPK寄存器的地址及每位表示的意义 Register  Address GPKCON0   0x7F008800 GPKCON1   0x7F008804 GPKDAT    0x7F0088…
什么是cache:    基于程序访问的局限性,在主存和CPU通用寄存器之间设置了一类高速的.容量较小的存储器,把正在执行的指令地址附件的一部分指令或数据从主存调入这类存储器,供CPU 在一段时间内使用,这对提高程序的运行速度有很大的作用.这类介于主存和CPU 之间的高速小容量存储器称作高速cache.主要为了解决主存和CPU之间速度不匹配的问题.    比较常见的cache 包括icache 和dcache.icache 的使用比较简单,系统刚上电时,icache中的内容是无效的,并且icac…
在上述的驱动系列博客中,我们已经了解了关于阻塞和非阻塞.异步通知.轮询.内存和I/O口访问.并发控制等知识,按键设备驱动相对来说是比较简单的,本章内容可以加深我们对字符设备驱动架构.阻塞与非阻塞.中断定时器等相关知识的理解.在嵌入式的系统中,按键的硬件原理简单,就是通过一个上拉电阻将处理器的外部中断引脚拉高,电阻的另一端接按钮并接地就可以实现. 1.按键的确认流程如下 2 按键驱动中的有关数据结构 2.1 按键设备结构体以及定时器 #define MAX KEY BUF 16 // 键缓冲区大小…
原文http://blog.chinaunix.net/uid-14114479-id-3125685.html ARM驱动蜂鸣器的方式有两种:一种是PWM输出口直接驱动,另一种是利用IO定时翻转电平产生驱动波形对蜂鸣器进行驱动.PWM输出口直接驱动是利用PWM输出口本身可以输出一定的方波来进行驱动.在ARM中可以用几个特殊功能寄存器对占空比和周期进行设置.通过设置这些寄存器产生符合蜂鸣器要求的方波后,这个时候利用这个方波就可以对蜂鸣器进行驱动了.使用PWM时,通过TCMPn可以决定脉宽,TCN…
一.NAND FLASH的特点 S3C6410的NAND FLASH控制器有如下特点 1.自导入模式:复位后,引导代码被送入到8KB的STEPPINGSTONE中,引导代码移动完毕,引导代码将在STEPPINGSTONE中执行.导入期间,NAND FLASH控制器不支持ECC矫正. 2.NAND FLSH 控制器I/F:支持512字节和2KB页 3.软件模式:用户可以直接访问nand flash 控制器,该特性可以用于读/檫/编程nand flash 存储器. 1)写命令寄存器=NAND FLA…
NIOS II 相关资料以及基础入门 <NiosII的奇幻漂流> <Nios II那些事儿> 本文所有的硬件基础以及工程参考来自魏坤示波仪,重新实现驱动并重构工程. 基于NIOS II的示波器实现 Version 0.1 按键驱动&显示屏驱动&界面实现 Part 0.1.0 硬件准备 由于屏幕会挡住烧录口,这里飞线以供调试. Part 0.1.1 创建Quartus工程 软核部分:利用SOPC Builder建立kernel,软核具体配置如下 由于显示芯片利用的IL…
① request_irq函数用于注册中断 int request_irq(unsigned int irq, void(*handler)(int, void*, struct pt_reg*), unsigned long flags, const char* devname, void* dev_id); (1)irq:中断号 (2)handler:中断处理函数 (3)flags:与中断管理有关的各种选项 (4)devname :设备名 (5)dev_id:共享中断是使用,区分不同中断 (…
对于任何一个硬件模块的设计,首先第一步都是要先了解硬件本身后,再开始程序的软件设计.而由于DM9000的芯片文档内容很多,要驱动好网卡,需要很长时间,特别对于新手比较困难,所以可以参考linux内核代码中的网卡驱动程序,将其移植到裸机程序当中.下面将就ok6410,介绍DM9000裸机程序驱动的详细过程,并且完成arp协议的程序设计. 1.       DM9000硬件接口 打开ok6410的底板原理图可以看到DM9000和ok6410的硬件接口,通过DM9000的文档大概浏览可知一些比较重要的…