ÓйØLINUX DMAÇý¶¯µÄÎÊÌâ
СµÜ×î½üÔÚѧϰдÇý¶¯,дÁ˸ö×î¼òµ¥µÄDMAÇý¶¯µ«ÊÇÓò»ÆðÀ´£¬²éÁ˺ܾö¼²»ÖªµÀÄÄÀïÓÐÎÊÌâ,Ìù³öÀ´´ó¼Ò¿´¿´¹þ.ÓÉÓÚÎÊÌâ±È½Ï³¤Ò²±È½Ï¸´ÔÓ£¬¸ø50·Ö.¸ñʽºÃÄÑŪ£¬´ó¼Ò½«¾ÍÏÂ,»òÕß¿ÉÒÔÁªÏµÎÒ·¢.CÎļþ¸øÄã~~
C/C++ code:
±à³Ì²½ÖèÈçÏÂ:£¨ÒÔÏÂÊdzõʼ»¯£¬Ò»Çнá¹û±íÏÖµÄÕý³££©
¡¡¡¡
result = register_chrdev(210,"mydma",&dmatest_fops);
¡¡¡¡
Csr_Addr = DMA_ADDR_BASE+0x24;
Csr_Addr = (unsigned long)ioremap(Csr_Addr,4);
Sy_Addr = (unsigned long)ioremap(DMA_ADDR_BASE+0x28,4);
Cn_CFG_Addr = (unsigned long)ioremap(DMA_ADDR_BASE+0x1E4,4);
Cn_LLP_Addr = (unsigned long)ioremap(DMA_ADDR_BASE+0x1F0,4);
Cn_Size_Addr = (unsigned long)ioremap(DMA_ADDR_BASE+0x1f4,4);
Cn_Csr_Addr = (unsigned long)ioremap(DMA_ADDR_BASE+0x1e0,4);
(*(volatile unsigned long *)Csr_Addr) = 0x0001; //ÉèÖõØÖ·¸ñʽΪС¶Ë£¬Í¬Ê±ENABLEDMA¿ØÖÆÆ÷
(*(volatile unsigned long *)Sy_Addr) = 0x0080; //ÉèÖÃͬ²½Ä£Ê½
(*(volatile unsigned long *)Cn_CFG_Addr) = 0x00000003; //ÉèÖÃÔÊÐíÖжÏ
(*(volatile unsigned long *)Cn_LLP_Addr) = 0x00000000; //ÉèÖÃLLPΪ0£¬Õâ¸öÎÒÒ²²»ÖªµÀΪʲô£¬²»¹ý±à³ÌÊÖ²áÉÏÕâôдµÄ
(*(volatile unsigned long *)Cn_Size_Addr) = 0x00000400; //ÉèÖô«Êä´óСΪ1K
(*(volatile unsigned long *)Cn_Csr_Addr) = 0x80fc1204; //ÉèÖÃȨÏÞ¡¢µ¥´Î´
Ïà¹ØÎÊ´ð£º
дÁ˸ö²âÊÔ³ÌÐòÈçÏÂ
struct hostent *hp;
char AlarmDevIP[20];
int x2;
hp = gethostbyname("www.google.com");
if (hp)
{
......
ÓÉÓÚÎҲŸոսӴ¥socket±à³Ì£¬×Ô¼ºÐ´ÁËÒ»¸ö¼òµ¥³ÌÐò£¬µ«¾ÍÊÇÔÚÔËÐеÄʱºò³öÏֶδíÎó£¬ÎÞ·¨½â¾ö£¬ÏÖÔÚÎÒ°ÑÔ´´úÂëÌù³öÀ´£¬Çë¸÷λ´óϺָÕýһϣ¡Ð»Ð»£¡
#include<stdio.h>
#include<stdlib.h>
#include& ......
ÔÚlinux»·¾³Ï£¬ÈçºÎÓÃCÓïÑÔÈ¡µÃϵͳµ±Ç°½ø³ÌµÄ×ÜÊý£¿
systemµ÷ÓÃÍⲿÃüÁîps -ef | wc -l µÄ¾ÍÃâ̸ÁË£¬Õâ¸öÎÒ»á
ÄÇ lzÏëÔÚÓû§¿Õ¼ä×ö»¹ÊÇÄÚºË̬×öÄØ£¿
Óû§¿Õ¼äÎÒµÄÏë·¨ÊÇͳ¼Æ/procĿ¼ÏÂÓм¸¸öÊý×ÖÎļþ¼Ð
µ±È» ......
ÎÒÔÚÐéÄâ»úÀï°²×°ÁËred hat£¬È»ºóÓÃleapFtp°ÑÎÒµÄjavawebÏîÄ¿´«µ½ÐéÄâ»úÏ£¬ÔÚlinuxÀïÎÒÓ¦¾°²×°ºÃjdkºÍtomcat£¬ÎÒÏëÇë½Ìһϸ÷룬ÔõôÔÚlinuxÀï²¼ÖÃÎÒµÄjavaweb¹¤³Ì£¬ÈÃÆäÔËÐÐÆðÀ´µÄ£¬ÇëÏêϸµÄºÍÎÒ˵һÏ£¬Ð»Ð»
² ......