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£¬²»ÊÇÇý¶¯µÄÐÎʽ£¬Ö»ÊǶ¨ÒåÁ˲Ù×÷¼
Ïà¹ØÎÊ´ð£º
ÒòΪ°²×°cvsÒªÓõ½xinetd·þÎñ£¬·¢ÏÖ»úÆ÷ÉÏûÓС£¡£¾Í´ÓÍøÉÏÏÂÔØÁ˸ö×°ÉÏ£¬
SQL code:
[root@localhost ~]# rpm -qa xinetd
[root@localhost ~]# rpm -qa telnet
telnet-0.17-38.el5
[root@localhost ~]#
¸ ......
ÎÒÓùýubuntu8.10°æ±¾£¬´ÓverycdÏÂÔصġ£
ÏÂÔغó£¬ÊÇ°ëÓ¢ÎÄ¡£ÇÒÎÒ¶ÔlinuxϵͳµÄ²Ù×÷Àí½â²»ÉÒò´Ë×°ÖÐÎÄÊäÈë·¨¶¼¸ãÁ˺þá£
È»ºó°´ÕÕÍøÉϵĽ̸̳üÐÂÖÐÎĽçÃ棬µ«ÊǸüÐÂÁË1ÍíÉϺóÌáʾÖжϡ¡Àס£
......
ÎÒ°²×°red hat enterprise linux 5.1 µÄʱºò¡£Ã»ÓÐÉèÖÃrootÃÜÂë¡£
Ö»ÓÐÉèÖÃÒ»¸öÆÕͨÕʺš£
²»¿ÉÄÜ°É ¿Ï¶¨Óиö»ÃæÊÇÈÃÄãÊäÈërootÓû§ÃûÃÜÂë
Äã¿Ï¶¨´í¹ýÁË
ûÃÜÂëÄܽøÈ¥£¿
Óõ¥Óû§Ä£Ê½½ø ......
¸Õ²Å·¢ÏÖÓÐ×îеÄlinux kernel·¢²¼ÁË£¬ÎÒÒ²ÊǸölinux°®ºÃÕߣ¬Ö»²»¹ýÊǸöÐÂÊÖ£¬Ê²Ã´¶¼²»¶®£¬ÎÒÏëÎÊһϣ¬Èç¹ûÎÒÓÐkernelµÄ»°£¬ÎÒÄܱàÒë³É×Ô¼ºµÄϵͳÂð£¿ÊDz»ÊÇÓÃkernelÔÙÅäÉϸö×ÀÃæ»·¾³¾Í¿ÉÒÔ×ö³É×Ô¼ºµÄ²Ù×÷ϵͳÄØ£¿Î ......
ÏÖÔÚÎÒÓÐÁ½Ì¨»ú Ò»¸öÔÚ¼Ò Ò»¸öÔÚѧУ ÔÚѧУµÄÄÇ̨»ú×Ó²»ÄÜÉÏÍø ÎҰѼÒÀïµÄÄÇ̨»ú×Ó¸üе½×îÐÂÁË È»ºó°Ñ /var/cache/apt/archives ϵÄËùÓÐDeb°ü¸´ÖƵ½Ñ§Ð£ÄÇ̨ûÁªÍøµÄ»ú×ÓÉÏÁË&nbs ......