Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

linuxÄÚºËÇý¶¯DIY £¨Ì¤Ì¤ÊµÊµÑ§ÄÚºËÖ®2£©

ÉÏÎÄÖÐÌáµ½ÁËkconfigÎļþÐ޸ģ¬
ÔÚÀïÃæ¼ÓÈëÁË
config EmbedSky_HELLO
    tristate "TQ2440/SKY2440 Hello Driver"
    depends on ARCH_S3C2440
    help
      EmbedSky TQ2440/SKY2440 Hello.
Õ⼸ÐдúÂ룬±íʾҪ±àÒëEmbedSky_HELLOÕâ¸öÇý¶¯½øÈ¥£¬ÎÒÃÇ»¹Òª×÷µÄ¹¤×÷ÊÇ
ÐÞ¸Äͬĸ¼ÏµÄmakefileÎļþ
ÔÚmakefileÀï¼ÓÈëÁËÕâÒ»ÐУ¬
obj-$(CONFIG_EmbedSky_HELLO) += EmbedSky_hello.o
È»ºóÔÚÄں˱àÒëÑ¡ÏîÀïÑ¡¶¨£¬ºóÖ±½Ó±àÒëÄںˣ¬»òÊÇʹÓÃÃüÁî#make SUBDIR=drivers/char/ modules,È»ºó±àÒë³öÇý¶¯Ä£¿é¡£
ÎÒÃÇÀ´¿´¿´Çý¶¯Ä£¿é
 *************************************
NAME:EmbedSky_hello.c
COPYRIGHT:www.embedsky.net
*************************************/
#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/fs.h>
#include <linux/init.h>
#include <linux/miscdevice.h>
#include <linux/delay.h>
#include <asm/irq.h>
#include <asm/arch/regs-gpio.h>
#include <asm/hardware.h>
MODULE_LICENSE("GPL");
static int __init EmbedSky_hello_init(void)       //insmodÇý¶¯µÄʱºò£¬ÏµÍ³»á×Ô¶¯µ÷Óõĺ¯Êý¡£
{
      printk("<1>\n      Hello,EmbedSky!\n");
      printk("<1>\nThis is first driver program.\n\n");
      return 0;
}
static void __exit EmbedSky_hello_exit(void)
{
      printk("<1>\n     Exit!\n");
      printk("<1>\nGoodbye EmbedSky!\n\n");
}
module_init(EmbedSky_hello_init);
module_exit(EmbedSky_hello_exit);
ºÜ¼ò¶ÌµÄÒ»¶Î´úÂ룬µ«ÊÇËÆºõÖ»ÄÜÔÚÄÚºËÀï´òÓ¡³ö¼¸ÐÐ×Ö£¬Ã»ÓиúÓ²¼þ½»»¥¡£
GPIOµÄÇý¶¯Ã÷ÌìÔÙ¿´¡£


Ïà¹ØÎĵµ£º

Linux\UnixÐÔÄܲâÊÔ

×î½üÔÚ×öÔÆ¼ÆË㣬½Ó´¥µ½Ò»Ð©ÐéÄ⻯µÄ¼¼Êõ£¬ËùÒÔÏë²âÊÔÒ»ÏÂÐéÄâ»úµÄÐÔÄܵ½µ×ÈçºÎ£¬ÕâÀï¸ø³öÒ»¸ö·½·¨£¬ÀûÓÃUnixBenchÀ´Îª·þÎñÆ÷×öÐÔÄܲâÊÔ¡£ 1: wget http://byte-unixbench.googlecode.com/files/unixbench-5.1.2.tar.gz
2: tar -xzvf unixbench-5.1.2.tar.gz
3: cd unixbench-5.1.2.tar.gz
4: ......

Linux ѧϰ²½Öè

1.ÊÖÍ·ÓÐÒ»±¾ºÃµÄÈëÃŽ̲Ä
  ÂòÄÇЩһ¿ªÊ¼¾Í´Óϵͳ»ù±¾»ú¹¹»ù±¾ÃüÁʼ½²½âµÄÊé¼®£¬Ò»¿ªÊ¼ÄãҪѡ¶¨Ò»±¾ÈëÃŽ̲Ä,µ«ÊDz»ÄÜÖ»¿´Ò»±¾,ÒòΪÓÐЩÊéÉϽ²µÄ,¿ÉÄÜÊÇÁíÍâµÄÊéÉÏûÓеÄ.Òò´Ë,ÖØµãѡһ±¾½Ì²Ä¿´Íê.È»ºóÔÙ¿´Á½Èý±¾ÈëÃŽ̲Ää¯ÀÀÒ»ÏÂ.×÷Ϊ¶ÔµÚÒ»±¾ÊéµÄ֪ʶµÄÀ©³äºÍ¹®¹Ì¡£
 
2.¿´Íêϵͳ×Ô´øµÄÎĵµ
  ¾ø´ ......

Linux³£ÓÃÃüÁîÏê½â

LinuxÖ®ËùÒÔÊܵ½¹ã´ó¼ÆËã»ú°®ºÃÕßµÄϲ°®£¬Ö÷ÒªÔ­ÒòÓÐÁ½¸ö£¬Ê×ÏÈËüÊÇ×ÔÓÉÈí¼þ£¬Óû§²»ÓÃÖ§¸¶·ÑÓþͿÉÒÔʹÓÃËü£¬²¢¿É¸ù¾Ý×Ô¼ºµÄÐèÒª¶ÔËü½øÐÐÐ޸ġ£ÁíÍ⣬Ëü¾ßÓÐUnixµÄÈ«²¿¹¦ÄÜ£¬ÈκÎʹÓÃUnixϵͳ»òÏëҪѧϰUnixϵͳµÄÈ˶¼¿ÉÒÔ´ÓÖлñÒæ¡£
¡¡¡¡ÈÃÎÒÃÇÒ»Æð´Óÿһ¸öÃüÁʼ£¬×ßÏòLinux¸ßÊÖ֮·°É¡£
¡¡¡¡1.Linux½øÈëÓëÍ˳öϵͳ ......

£Ûת£ÝLinuxÃæÊÔÌâ

from£º http://blog.chinaunix.net/u3/101356/showart.php?id=2120288
Ò»£®Ìî¿ÕÌ⣺
1. ÔÚLinux
ϵͳ
ÖУ¬ÒÔ
Îļþ
·½Ê½·ÃÎÊÉ豸 ¡£
2. LinuxÄÚºËÒýµ¼Ê±£¬´ÓÎļþ/etc/fstab
ÖжÁȡҪ¼ÓÔØµÄÎļþϵͳ
¡£
3. LinuxÎļþϵͳÖÐÿ¸öÎļþÓÃi½Úµã
À´±êʶ¡£
4. È«²¿´ÅÅÌ¿éÓÉËĸö²¿·Ö×é³É£¬·Ö±ðΪÒýµ¼¿é ¡¢×¨ÓÃ¿é ¡¢ i½Úµã ......

linux framebuffer ѧϰ±Ê¼Ç¶þ£¨³ÌÐòÓÃÀý£©

1 ³ÌÐòÁ÷³Ìͼ¡£
2  sampleÀý×Ó
HI_S32 TDE_DrawGraphicSample()
{
    HI_U32 u32Size;
    HI_S32 s32Fd;
    HI_U32 u32Times;
    HI_U8* pu8Screen;
    HI_U32 u32PhyAddr;
    HI_S32 s32Ret = -1;
  ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ