paradise721

    1.                                  个人感觉没啥意义。
    2. stm8到底有没有内部id资料没写啊 7/4597 stm32/stm8 2010-10-09
      那嘚请教版主 最新的哪个资料 我下载了手册都没有
      看我在2楼的回答:最新的数据手册中写了,数据手册就是Datasheet。你下载的是什么手册?第一页是什么? 下面是用Adobe Reader打开的STM8S103数据手册的第一页: STM8S103_Datasheet_1st_Page.gif (183.76 KB) 下载次数:9 2010-10-9 22:03
    3. 最新的STM8L选型手册手册哪有? 5/6083 stm32/stm8 2010-07-23
      我认为VFQFPN、WFQFPN或UFQFPN都是一回事,至少PCB的布线是一样的。 你看的手册好像是旧版本,我这个是来自最新的版本: STM8L101_Ordering_Info.GIF (20.19 KB) 下载次数:2 2010-7-23 13:49
    4. 编译的时候提示错误。 6/3689 嵌入式系统 2010-06-26
      我在XP下遇到跟楼主一样的错误提示..搞不清楚是什么原因..
    5. 能源设计 5/3378 嵌入式系统 2010-06-16
      最近在做一个太阳能的小东东...
    6. 以上文章相关链接:[url=http://blog.eeworld.net/yefanqiu/archive/2010/06/03/5645129.aspx][/url]
    7.                                   我在另一个地方又看到,说上半周电流是正向流动,不知道哪种说法对……
    8. 触摸屏驱动 修改注册表值是哪一项? 15/6529 嵌入式系统 2010-05-20
      就是这里啊,会变的啊。
    9. s3c2410 内核IIC驱动编写 11/6057 嵌入式系统 2010-05-18
      哦,驱动太长,我分几部分发。 linx core 驱动(上) #include #include #include #include #include #include #include #include #include #include #include static struct i2c_driver i2cdev_driver; /* * An i2c_dev represents an i2c_adapter ... an I2C or SMBus master, not a * slave (i2c_client) with which messages will be exchanged.  It's coupled * with a character special file which is accessed by user mode drivers. * * The list of i2c_dev structures is parallel to the i2c_adapter lists * maintained by the driver model, and is updated using notifications * delivered to the i2cdev_driver. */ struct i2c_dev {         struct list_head list;         struct i2c_adapter *adap;         struct device *dev; }; #define I2C_MINORS        256 static LIST_HEAD(i2c_dev_list); static DEFINE_SPINLOCK(i2c_dev_list_lock); static struct i2c_dev *i2c_dev_get_by_minor(unsigned index) {         struct i2c_dev *i2c_dev;         spin_lock(&i2c_dev_list_lock);         list_for_each_entry(i2c_dev, &i2c_dev_list, list) {                 if (i2c_dev->adap->nr == index)                         goto found;         }         i2c_dev = NULL; found:         spin_unlock(&i2c_dev_list_lock);         return i2c_dev; } static struct i2c_dev *get_free_i2c_dev(struct i2c_adapter *adap) {         struct i2c_dev *i2c_dev;         if (adap->nr >= I2C_MINORS) {                 printk(KERN_ERR "i2c-dev: Out of device minors (%d)\n",                        adap->nr);                 return ERR_PTR(-ENODEV);         }         i2c_dev = kzalloc(sizeof(*i2c_dev), GFP_KERNEL);         if (!i2c_dev)                 return ERR_PTR(-ENOMEM);         i2c_dev->adap = adap;         spin_lock(&i2c_dev_list_lock);         list_add_tail(&i2c_dev->list, &i2c_dev_list);         spin_unlock(&i2c_dev_list_lock);         return i2c_dev; } static void return_i2c_dev(struct i2c_dev *i2c_dev) {         spin_lock(&i2c_dev_list_lock);         list_del(&i2c_dev->list);         spin_unlock(&i2c_dev_list_lock);         kfree(i2c_dev); } static ssize_t show_adapter_name(struct device *dev,                                  struct device_attribute *attr, char *buf) {         struct i2c_dev *i2c_dev = i2c_dev_get_by_minor(MINOR(dev->devt));         if (!i2c_dev)                 return -ENODEV;         return sprintf(buf, "%s\n", i2c_dev->adap->name); } static DEVICE_ATTR(name, S_IRUGO, show_adapter_name, NULL); /* ------------------------------------------------------------------------- */ /* * After opening an instance of this character special file, a file * descriptor starts out associated only with an i2c_adapter (and bus). * * Using the I2C_RDWR ioctl(), you can then *immediately* issue i2c_msg * traffic to any devices on the bus used by that adapter.  That's because * the i2c_msg vectors embed all the addressing information they need, and * are submitted directly to an i2c_adapter.  However, SMBus-only adapters * don't support that interface. * * To use read()/write() system calls on that file descriptor, or to use * SMBus interfaces (and work with SMBus-only hosts!), you must first issue * an I2C_SLAVE (or I2C_SLAVE_FORCE) ioctl.  That configures an anonymous * (never registered) i2c_client so it holds the addressing information * needed by those system calls and by this SMBus interface. */ static ssize_t i2cdev_read (struct file *file, char __user *buf, size_t count,                             loff_t *offset) {         char *tmp;         int ret;         struct i2c_client *client = (struct i2c_client *)file->private_data;         if (count > 8192)                 count = 8192;         tmp = kmalloc(count,GFP_KERNEL);         if (tmp==NULL)                 return -ENOMEM;         pr_debug("i2c-dev: i2c-%d reading %zu bytes.\n",                 iminor(file->f_path.dentry->d_inode), count);         ret = i2c_master_recv(client,tmp,count);         if (ret >= 0)                 ret = copy_to_user(buf,tmp,count)?-EFAULT:ret;         kfree(tmp);         return ret; } static ssize_t i2cdev_write (struct file *file, const char __user *buf, size_t count,                              loff_t *offset) {         int ret;         char *tmp;         struct i2c_client *client = (struct i2c_client *)file->private_data;         if (count > 8192)                 count = 8192;         tmp = kmalloc(count,GFP_KERNEL);         if (tmp==NULL)                 return -ENOMEM;         if (copy_from_user(tmp,buf,count)) {                 kfree(tmp);                 return -EFAULT;         }         pr_debug("i2c-dev: i2c-%d writing %zu bytes.\n",                 iminor(file->f_path.dentry->d_inode), count);         ret = i2c_master_send(client,tmp,count);         kfree(tmp);         return ret; } static int i2cdev_check(struct device *dev, void *addrp) {         struct i2c_client *client = i2c_verify_client(dev);         if (!client || client->addr != *(unsigned int *)addrp)                 return 0;         return dev->driver ? -EBUSY : 0; } /* This address checking function differs from the one in i2c-core    in that it considers an address with a registered device, but no    driver bound to it, as NOT busy. */ static int i2cdev_check_addr(struct i2c_adapter *adapter, unsigned int addr) {         return device_for_each_child(&adapter->dev, &addr, i2cdev_check); } static noinline int i2cdev_ioctl_rdrw(struct i2c_client *client,                 unsigned long arg) {         struct i2c_rdwr_ioctl_data rdwr_arg;         struct i2c_msg *rdwr_pa;         u8 __user **data_ptrs;         int i, res;         if (copy_from_user(&rdwr_arg,                            (struct i2c_rdwr_ioctl_data __user *)arg,                            sizeof(rdwr_arg)))                 return -EFAULT;         /* Put an arbitrary limit on the number of messages that can          * be sent at once */         if (rdwr_arg.nmsgs > I2C_RDRW_IOCTL_MAX_MSGS)                 return -EINVAL;         rdwr_pa = (struct i2c_msg *)                 kmalloc(rdwr_arg.nmsgs * sizeof(struct i2c_msg),                 GFP_KERNEL);         if (!rdwr_pa)                 return -ENOMEM;         if (copy_from_user(rdwr_pa, rdwr_arg.msgs,                            rdwr_arg.nmsgs * sizeof(struct i2c_msg))) {                 kfree(rdwr_pa);                 return -EFAULT;         }         data_ptrs = kmalloc(rdwr_arg.nmsgs * sizeof(u8 __user *), GFP_KERNEL);         if (data_ptrs == NULL) {                 kfree(rdwr_pa);                 return -ENOMEM;         }         res = 0;         for (i = 0; i < rdwr_arg.nmsgs; i++) {                 /* Limit the size of the message to a sane amount;                  * and don't let length change either. */                 if ((rdwr_pa.len > 8192) ||                     (rdwr_pa.flags & I2C_M_RECV_LEN)) {                         res = -EINVAL;                         break;                 }                 data_ptrs = (u8 __user *)rdwr_pa.buf;                 rdwr_pa.buf = kmalloc(rdwr_pa.len, GFP_KERNEL);                 if (rdwr_pa.buf == NULL) {                         res = -ENOMEM;                         break;                 }                 if (copy_from_user(rdwr_pa.buf, data_ptrs,                                    rdwr_pa.len)) {                                 ++i; /* Needs to be kfreed too */                                 res = -EFAULT;                         break;                 }         }         if (res < 0) {                 int j;                 for (j = 0; j < i; ++j)                         kfree(rdwr_pa[j].buf);                 kfree(data_ptrs);                 kfree(rdwr_pa);                 return res;         }         res = i2c_transfer(client->adapter, rdwr_pa, rdwr_arg.nmsgs);         while (i-- > 0) {                 if (res >= 0 && (rdwr_pa.flags & I2C_M_RD)) {                         if (copy_to_user(data_ptrs, rdwr_pa.buf,                                          rdwr_pa.len))                                 res = -EFAULT;                 }                 kfree(rdwr_pa.buf);         }         kfree(data_ptrs);         kfree(rdwr_pa);         return res; }
    10. 怎样解锁呀
    11. 补充下,现在,我重新安装新的SDK,在模拟器上运行原来的应用程序就会报部署错误
    12. 关于基于SJA1000的can节点通信 7/5363 嵌入式系统 2010-03-14
      上次的发送还未处理完,说明总线忙,查查为什么。
    13. 关于程序入口问题 9/4060 嵌入式系统 2010-02-27
      顶一下,让所有的人都看到然后回答我的问题,谢谢
    14. wince驱动开发方法。 14/5359 嵌入式系统 2010-01-21
      通过命令行的方式,的确会比通过IDE中菜单的方式要快很多,但是快的代价是很繁琐…
    15. WINCE 分区如何隐藏 11/5653 嵌入式系统 2010-01-19
      解决了 路径的一个问题, 可以指定 分区的名字等, 现在按 韦伯大哥的说法: MountFlags=dword:11的时候隐藏, 我在这边试了下, 他在wince 里面 隐藏了,但是PC 上还是识别出来了..继续关注, 有进展
    16.                                  谢楼上的指点,俺继续查找,有结果再来汇报。。
    17. DM9000读写问题 11/4775 嵌入式系统 2009-12-14
      您好,不知道前面各位的问题解了没,你们说的问题小弟并不太懂,但我们目前是divacom在中国区域的总代理,从03年来一直专注于做DM9000及DIVACOM全线产品,通过我们可以找到原厂的工程师做技术支持,当然,是免费提供的,说不定我能帮得上大家的忙,以下是我的联系方式    QQ:1259987438 电话:027-87163610 (0)13554272382 王洪武
    18. 更改NK大小后的问题 14/4264 嵌入式系统 2009-12-14
      的却很奇怪,调试可以,烧到NANDFLASH中中断就不能用了!
    19. ATMega16驱动12864lcd-绘图-画点 8/3826 嵌入式系统 2009-11-29
      文件delay.h /* 欢迎喜欢单片机的朋友一起交流 QQ:343700980 加时注明:“单片机” */ #ifndef __delay_h #define __delay_h void delay_1ms(void); void delay_nus(unsigned char n); void delay_nms(unsigned int n); void s_ms(unsigned int ms); /******************************************************************* 微秒级精确延时(ICC) *******************************************************************/ void delay_nus(unsigned char tt) {         asm("_L2: subi R16,1");           asm(" nop")         asm(" brne _L2");         asm(" nop");         asm(" ret"); } /************************************************************************* 毫秒级精确延时(ICC) *************************************************************************/ #define xtal 4 //以MHz为单位,不同的系统时钟要修改。 void delay_1ms(void) { unsigned int i; for(i=0;i
    20. 请教SD卡启动NK.bin 14/4567 嵌入式系统 2009-10-12
      http://blog.eeworld.net/Veabol/archive/2009/05/07/4157647.aspx 部分内容可以参考

最近访客

< 1/1 >

统计信息

已有104人来访过

  • 芯积分:--
  • 好友:--
  • 主题:11
  • 回复:60

留言

你需要登录后才可以留言 登录 | 注册


现在还没有留言