从本节起,开始使用ClassA20类库完成操作外设的功能,请先在https://github.com/tjCFeng/ClassA20下载ClassA20类库。
封装的目的就是简化操作,试想一下,如果想在Linux中直接设置GPIO寄存器需要做什么工作?基本上计算物理地址、获取映射地址、了解每个寄存器的作用、设置对应的位。。。。。。很是繁琐。而使用了封装的类库之后,只需要这样做:...
一、什么是GPIO? 首先应该理解什么是GPIO。GPIO,英文全称为General-Purpose IO ports,也就是通用IO口。在嵌入式系统中经常有数量众多,可是结构却比較简单的外部设备/电路,对这些设备/电路有的须要CPU为之提供控制手段,有的则须要被CPU用作输入信号。并且,很多这种设...
分类:
其他好文 时间:
2014-11-12 20:58:38
阅读次数:
296
一。运行环境 开发板:jz2440 系统: ubuntu12.04 编译器:arm-linux-gcc 关于介绍性 的东西这里不说,以及2440的地址映射图什么的 ,有空再补充。 先看代码:这里主要有三个head.S ,led.c ,Makefile,其中led的代码同流水灯一样,直接拷贝...
分类:
其他好文 时间:
2014-11-08 16:35:34
阅读次数:
140
DSP28335 GPIO模块分为三类IO口:PORTA(0-31),PORTB(32-63),PORTC(64-87)
对GPIO模块的设置主要通过三类寄存器来完成,分别是:控制寄存器、数据寄存器、中断寄存器。...
分类:
其他好文 时间:
2014-11-07 09:57:56
阅读次数:
188
前面介绍了点亮第一个LED的全过程,很多人可能很幸运的点亮了LED,然而也很可能不少人非常不幸没有把程序下载进去。初学者常会遇到程序无法下载的情况,很多人在尝试多次未果后比较受打击,因此放弃了学习,实在太可惜了。鉴于此,这里列举了单片机程序下载失败的各种出错原因、判断方法和解决方法,是前人所遇到的种种原因的总结。
STC单片机下载程序主要分为三部分:单片机最小系统、下载电路、计算机端。下载失...
分类:
其他好文 时间:
2014-11-06 22:02:47
阅读次数:
277
本篇我们将分析上一篇所写的程序代码。未来学习单片机的大部分精力,我们也将放在程序代码的编写上。但是不用担心,我会非常详细的介绍每个程序的编写思路和各种注意事项等。
之前我们写的程序如下:
#include
sbit LED = P1^0;
void main()
{
LED = 0;
while(1);
}
头文件
第一...
分类:
其他好文 时间:
2014-11-06 22:02:44
阅读次数:
246
前面介绍了很多概念知识,做了很多准备工作,从这一节开始,我们正式开始单片机的学习。我们将使用单片机完成一项非常简单的工作:点亮一个发光二极管(即LED:Light-Emitting Diode)。
LED简介
先简单介绍一下LED。LED是一种半导体器件,大家其实对LED并不陌生,各种电器的指示灯、手机键盘灯、LED液晶屏的背光、高亮LED手电筒等,都是通过LED发光的。LED有两种主...
分类:
其他好文 时间:
2014-11-06 20:02:38
阅读次数:
265
(1) 扫描频率和闪耀频率?模块:/****************************************module name:flash_modulefunction:flash a led at 10Hzby yf.x2014-11-4***************/module f...
分类:
其他好文 时间:
2014-11-06 09:18:27
阅读次数:
245
学习并行操作的思想。勘误001:Page 17,模块图下方,“扫描频配置定为100Hz”应为10Hz。勘误002:Page 17,最后一行“10ms”应为100ms;“2.5ms”应为25ms;(ps:这里用1000ms,每个led亮250ms效果比较明显)源码如下: 1 /************...
分类:
其他好文 时间:
2014-11-05 09:08:38
阅读次数:
254
Linux应用层想要操作kernel层的API,比方想操作相关GPIO或寄存器,能够通过写一个字符设备驱动来实现。1、先在rootfs中的 /dev/ 下生成一个字符设备。注意主设备号 和 从设备号。可用例如以下shell脚本生成:if [ ! -e audioIN ];then sudo ...
分类:
系统相关 时间:
2014-11-02 22:17:24
阅读次数:
261