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

¹ØÓÚ s3c2416 hspi spi linux Çý¶¯


        ×î½üÔÚ×ösamsung
s3c2416
ÔÚlinuxϵÄspiÇý¶¯³ÌÐò£¬²âÊÔÁËÏÂsamsung·¢²¼µÄspiµÄÄÚºËÔ´´úÂ룬ÎÞÂÛÊDzÉÓÃdma»òÕß·Çdmaģʽ¶¼ÎÞ·¨¹¤×÷¡£ÔĶÁ¸ÃÇý¶¯´úÂ룬·¢ÏÖ
ÕâÂëÓ¦¸ÃÊÇÒ»¸öδÍê³ÉµÄ°æ±¾£¬´æÔںܶàµÄbug¡£ÓÚÊÇÔÚÕâ¸ö°æ±¾µÄ»ù´¡ÉϽøÐÐÐ޸ģ¬ÖØÐ´Ò»¸ö¿ÉÓõġ¢Ö§³Öȫ˫¹¤µÄͨѶµÄÇý¶¯¡£Ä¿Ç°²âÊÔ»ù±¾Äܹ»Õý³£¹¤×÷£¬
Ö§³Ö°ëË«¹¤¡¢È«Ë«¹¤¡¢spiÓ²¼þÖжÏģʽºÍdmaģʽ¡£
        ¶Ôhspi-s3c2443.[ch]Ô´Îļþ¸ù¾ÝÊý¾Ý·¢ËͺͽÓÊÕµÄÁ÷³Ì½øÐзÖÎö£¬ÔÚδ²ÉÓÃdmaģʽÏ£¬º¯Êýµ÷ÓõÄÁ÷³Ì£ºs3c_spi_xfer
-> s3c_spi_doxfer -> s3c_spi_message_start ->
down_interruptible(&spi->sem)£¬µ½ÕâÀӲ¼þ»á²úÉúspiÖжϣ¬½øÈëµ½ÖжϷþÎñ³ÌÐò
s3c_spi_irq ÖУ¬ÖжϺ¯Êýµ÷Óà spi_s3c_irq_nextbyte
½øÐÐÊý¾Ý·¢ËÍ£¬¸ù¾Ýspi->stateµÄÖµ×öÏàÓ¦µÄ²Ù×÷£¬Êý¾Ý·¢ËÍ»ò½ÓÊÕÍê³Éºó£¬µ÷Óà s3c_spi_stop
¹Ø±Õspi£¬²¢up(&spi->sem)£¬³ÌÐòÁ÷³Ì»Øµ½ÁËs3c_spi_doxferº¯ÊýµÄ
down_interruptible(&spi->sem)£¬º¯Êý·µ»ØÍ˳ö£¬Ò»¸öspiµÄÊý¾ÝÊÕ·¢Á÷³ÌÍê³É¡£
        ÔÚÕâ¸ö·¢ËͽÓÊÕÁ÷³ÌÖУ¬ÖжϷþÎñ³ÌÐò´æÔںܶ಻×ãµÄµØ·½¡£
        ÏÈ¿´spi·¢ËÍ£¬·¢ËÍ×îÖÕµ÷ÓõÄÊÇ£º
        while(!(tx_msgend(spi)))
                s3c_spi_write_fifo(spi);
        ÕâÁ½ÐдúÂëµÄ¹¦ÄÜÊÇÅжÏд»º³åÀïÊÇ·ñ»¹ÓÐÊý¾Ý£¬Óеϰ¾ÍдÈëµ½spi·¢ËͼĴæÆ÷(S3C_SPI_TX_DATA)ÖС£ÎÒÃÇÖªµÀspiµÄÓ²¼þÄܹ»»º³å64
¸ö×Ö½ÚµÄÊý¾Ý£¬Èç¹ûÎÒÃÇÒ»´Î·¢Ë͵ÄÊý¾Ý³¤¶ÈСÓÚ64¸ö×Ö½Ú£¬²¢ÇÒÏÂÒ»´Î·¢ËÍÊý¾Ýʱ»º³åÖеÄÊý¾Ý·¢ËÍÍê³É£¬ÄÇôÕâ¶Î´úÂë±íÃæÉÏÓ¦¸ÃÊÇûʲôÎÊÌâ¡£Èç¹ûÎÒÃÇ·¢
Ë͵ÄÊý¾Ý³¤¶È´óÓÚ64¸ö×Ö½Ú£¬ÄÇôÕâ¶Î´úÂëÖÁÉÙÔì³ÉµÄºó¹ûÊDzúÉúÒ»¸öSPI transmit over run error¡£
         ÔÚ¿´spi½ÓÊÕ£¬½ÓÊÕµ÷ÓõĴúÂëÊÇ£º
        while(!(rx_msgend(spi))){
                spi->msg->rbuf[spi->msg_rd_pt


Ïà¹ØÎĵµ£º

Linux¶¨Ê±Æ÷——setitimer()

setitimer()ÊDZȽϾ«×¼µÄ¶¨Ê±Æ÷£¬ÊÇLinuxµÄAPI
ÒÔÏ´úÂëÊǸöµ¹¼ÆÊ±Àý×Ó£º
#include <signal.h>
#include <sys/time.h>
static int time_count=30;
static void sigalrm_handler(int sig)
{
time_count--;
printf("timer signal.. %d\n", time_count);
}
struct itimerval v; ......

Linux×ÀÃæÈçºÎ²ÅÄÜ×ß³öÀ§¾³£¿


 
 
    ÔÚÌÖÂÛÕâ¸öÎÊÌâ֮ǰ£¬ÎÒÃÇÏÈÀ´¿´¿´Linux×ÀÃæÓöµ½ÁËʲôÀ§ÄÑ¡£
    Ä¿Ç°£¬LinuxÔÚ×ÀÃæÉϵÄÊг¡Õ¼ÓÐÂʾÝÓйط½Ãæ¹À¼ÆÔÚ1%×óÓÒ£¬Õâ¸ö±ÈÀýÉõÖÁ»¹²»ÈçAppleµÄMac OS X£¬È˼ҵÄÊг¡Õ¼ÓÐÂÊÒ²ÓÐ4%ÒÔÉÏ¡£¸ü±ðÌáMS Windows°Ù·ÖÖ®¾ÅÊ®ÒÔÉϵÄÊг¡Õ¼ÓÐÂÊ£¬¿ÉÒÔ˵Linux×ÀÃæËÆºõ¿ÉÒÔ ......

ubuntuϰ²×°linux fetion

ubuntu ϱàÒë linux fetion Ó¦ÓóÌÐòdemo
×¢£ºÕâÀï¸ø³ö½çÃæÄ£¿éµÄÔ´´úÂ룬¶ølibfetion¿â(32λ)ÔòÊÇÒÔ¾²Ì¬¿âµÄÐÎʽ·Å½øÈ¥ÁË¡£
1£º½¨Á¢±àÒë»·¾³£º
ÔÚÖÕ¶ËÖ´ÐÐÒÔÏÂÃüÁ
sudo apt-get install automake
sudo apt-get install libc-dev
sudo apt-get install g++
sudo apt-get install libcurl4-openssl-dev
sudo ......

vim script ·ÖÏí£¨Ð´c/c ³ÌÐò´úÂ룩


×Ô¼ºÊ¹ÓÃvim±à¼­´úÂëÒ²ÊÇÓÐÒ»¶Îʱ¼äÀ´£¬Ä¿Ç°ÔĶÁ¡¢Ð޸ġ¢Ð´´úÂë»ù±¾¶¼Àë²»¿ªËûÁË¡£±¾ÈËʹÓùýµÄ±à¼­Æ÷ºÜÉÙ£¬ÒÔǰһ°ã¶¼ÊÇʹÓóÌÐò¿ª·¢IDE×Ô´øµÄ±à¼­Æ÷Щ´úÂ룬û¾õµÃʲô·½±ã¡£¿ªÊ¼Ê¹ÓÃvimµÄ¸Õ¸Õ½Ó´¥linux³ÌÐò¿ª·¢µÄʱºò£¬ÄÇʱ¿´µ½ÆäËûÈËÒ»°ã¶¼ÊÇÔÚwindowsÏÂʹÓÃSource Insight ±à¼­´úÂ룬ȻºóÔÚÐéÄâ»úlinuxÏÂmake¡£ÎұȽ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ