linuxÏÂÒ»¸öÇý¶¯Ôõôµ÷ÓÃÁíÒ»¸öÇý¶¯
Ò»¸öADC
µç³Ø¼ì²âÒªÓÃ
°´¼üÒªÓÃ
ÏÖ½«ADC×ö³ÉÒ»¸ö×Ö·ûÇý¶¯
ÁíÍâµç³Ø¼ì²â×ö³É×Ö·ûÇý¶¯£¬
°´¼ü×ö³ÉinputÇý¶¯
adc Çý¶¯½ÓÊÜÒ»¸öͨµÀºÅ²ÎÊý
µç³Ø¼ì²â£¬°´¼üµÄÇý¶¯Ôõôµ÷ÓÃÕâ¸öADCÇý¶¯°¡£¬Âé·³´óÁË
¸÷λţÈËÓÐʲôºÃµÄ·½·¨£¬»òÕßÁíÍâµÄ·½·¨
ÏÈллÁË
¶¼ÊÇÇý¶¯£¬¶¼ÔÚÄÚºË̬£¬ ¿ÉÒÔµ±×öº¯ÊýÖ±½Óµ÷ÓþÍÊÇÁË¡£
static ssize_t adc_read(struct file *file, char *buf, size_t count, loff_t *ppos)
{
int data=0;
unsigned int tmp;
//start ADC
tmp = readl(adc_base + ADCCON) | 0x01; //start AD convert
writel( tmp, adc_base + ADCCON);
do{
tmp = readl(adc_base + ADCCON);
}while(tmp & ENABLE_START_EN); //check if Enable_start is low
do{
tmp = readl(adc_base + ADCCON);
}while(!(tmp&ECFLG_END));
data = D_PDATA_MASK12(readl(adc_base + ADCDAT0));
DPRINTK("ADC Value=0x%x\n",data);
if(copy_to_user(buf, &data, sizeof(data)))
return -EFAULT;
return (sizeof(int));
}
×öΪ×Ö·ûÇý¶¯£¬adc¶¨ÒåµÄreadÈçÉÏ£¬Õâ¸öº¯ÊýÈçºÎÔÚ±ðµÄÇý¶¯Ê¹ÓÃ
»¹ÊÇÁíÍⶨÒå½Ó¿Ú£¬²»×öÃæÏòÎļþϵͳµÄ½Ó¿Ú£¿
ÄãÁíÍâдһ¸öº¯Êý°¢£¬ ʵÏÖÀàËƵŦÄܾÍÐÐÁË¡£
°ï¶¥¡«
Èç¹ûÈ¥µôÁËÃæÏòÎļþϵͳµÄº¯Êý£¬Á¬fopsÒ²²»¶¨Ò壬Õ⻹ÊÇÒ»¸öÇý¶¯Âð£¬
¿´ÁËÏÂ2410µÄgpio.c£¬²»ÊÇÇý¶¯µÄÐÎʽ£¬Ö»ÊǶ¨ÒåÁ˲Ù×÷¼
Ïà¹ØÎÊ´ð£º
ʹÓÃStruts2ÉÏ´«Îļþ£¬ÔÚlinuxϱ¨´í
2009-09-29 14:56:20,801 [org.apache.struts2.interceptor.FileUploadInterceptor]-[ERROR] Processing of multipart/form-data request failed. c:/temp/upload__1dcd07ee_12 ......
ÎÒ°²×°Ò»Ì¨redhat linux5+oracle 10gµÄ·þÎñÆ÷£¬±Ê¼Ç±¾£¨XPϵͳ£©°²×°ÁËoracle 10g¿Í»§¶Ë,½á¹ûÀÏÊdzö12560µÄ´íÎó£¬Çë¸ßÊÖÖ¸µãÒ»¶þ£¬
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dpor ......
ÓÐÈËÈÏΪ£¬linux °²È«ÐԸߣ¬Ö»ÊÇÒòΪÓõÄÈËÉÙ£¬ËùÒÔÄÇЩºÚ¿Í²»Ô¸ÒâÈ¥¹¥»÷£¬ËùÒÔ²¡¶¾Ö®ÀàµÄ¾ÍÉÙ£¬ÊDz»ÊÇÕâÑù£¿¶øÇÒlinuxÊÇ¿ªÔ´µÄ£¬¹¥»÷ÆðÀ´ ±È½ÏÈÝÒ×ËùÒÔ ÀÁµÄÈ¥¹¥»÷
ÕâÖÖ˵·¨¶Ôô
linux Ôõô¾Í°²È«¸ß ......
¸Õ²Å·¢ÏÖÓÐ×îеÄlinux kernel·¢²¼ÁË£¬ÎÒÒ²ÊǸölinux°®ºÃÕߣ¬Ö»²»¹ýÊǸöÐÂÊÖ£¬Ê²Ã´¶¼²»¶®£¬ÎÒÏëÎÊһϣ¬Èç¹ûÎÒÓÐkernelµÄ»°£¬ÎÒÄܱàÒë³É×Ô¼ºµÄϵͳÂð£¿ÊDz»ÊÇÓÃkernelÔÙÅäÉϸö×ÀÃæ»·¾³¾Í¿ÉÒÔ×ö³É×Ô¼ºµÄ²Ù×÷ϵͳÄØ£¿Î ......