cdqd

    1. STM32会淘汰掉单片机吗? 160/36794 stm32/stm8 2010-11-30
                                       这就好比说,unix市场份额越来越小,但不仅没有淘汰,还丛linux获得了新生。寿命比Windows还长。而且不见得会淘汰。
    2. 请教I2C超时处理 32/19943 stm32/stm8 2010-07-14
                                        哇哇哇。。。 第一:关于延迟,是我看错了,恕我眼拙哈 LZ说的是对的,在你这个应用里就是2.5ms。 反正“i2c_10clk_us*one_us_unit”就是要延迟10个I2C时钟脉冲这么长的时间,需要给以72MHz频率free running的systick的reload值。 "i2c_10clk_us*one_us_unit*100"么就是1000个I2C时钟脉冲的时间啦。 我这里的"*100"都是随便写的,"*120","*200"都可以。因为我没有LZ具体应用中什么16ms间隔之类的要求。如果有具体的应用要求,适当修改这个超时的值。
    3. STM8S103F2Timer2不进入中断 15/11124 stm32/stm8 2010-06-23
                                        楼上仔细看stm8s.h里面 TIM2_TypeDef 的定义 typedef struct TIM2_struct 00679 { 00680   vu8 CR1;   /*!< control register 1 */ 00681 #if defined STM8S103        //1-问题在此处 00682         vu8 RESERVED1; /*!< Reserved register */ 00683         vu8 RESERVED2; /*!< Reserved register */ 00684 #endif 00685   vu8 IER;   /*!< interrupt enable register */ 00686   vu8 SR1;   /*!< status register 1 */ 00687   vu8 SR2;   /*!< status register 2 */ ...   ... 上面是我复制下来的定义的一部分,看看//1处注释,如果不预定义STM8S103的话,那两个保留的8位寄存器定义就打不开,导致调用库函数打开中断的时候,虽然操作的寄存器名义上是IER,但因为前面两个8位寄存器没打开,所以库函数实际操作的值被写入了偏移2个8位寄存器之后的那个寄存器了。 但我要说的是我还是没明白IAR为什么要这么做?而且IAR官方没有发布针对各种器件的标准例程,所以初用STM8+IAREWSTM8的人如果恰巧碰到这个问题的话说不定会憋多久才能搞出来,虽然IAR还是没有毛病的,但碰到这个问题的人感觉太奇怪了不容易解决所以可能会产生误解,这块儿的问题还是值得初用的人注意的。
    4. 关于驱动开发的就业前景,待遇 29/10576 嵌入式系统 2010-06-18
      自己就做过一段时间驱动,门槛高,但就业好
    5. 求助:电路直流5V电源 测到纳秒级瞬变 5/4152 嵌入式系统 2010-06-06
      我就有一点奇怪,电源不时有滤波电路的吗,怎么会产生ns级的大幅跳变呢?测得对吗?
    6.                                  
      额外加的两个是简化的串口?
      应该说是有三个具有较多扩展功能的标准串口,和两个具有较少扩展功能的标准串口,是增强的而不是简化的。 所有5个串口都具有标准串口的功能,同时具有或多或少的扩展功能,比如支持同步通信,支持IrDA,支持LIN,支持ISO7816,这些额外功能都是其它MCU的串口模块所不具备的。
    7. 请教关于ARM的两个问题 5/3912 ARM技术 2010-05-10
      bank指一个内存区域!
    8. 6410 camera! 急 10/4250 嵌入式系统 2010-05-01
      不懂,友情帮顶了!
    9. Wince6 修改HIVE 注册表出错了 22/9598 WindowsCE 2010-04-27
      引用 11 楼 sunrain_hjb 的回复: 确认一下IF IMGHIVEREG中的IMGHIVEREG是否被定义了先。
      这个应该问题不大吧, 我有部分定义了,有部分没有定义
    10. 红外识别 8/3912 嵌入式系统 2010-04-09
        哦,,谢谢!!但是探测接受到的光强不是和环境温度有很大关系嘛??是不是要考虑,如果考虑的话是不是还要建立一个表,对应不同的温度,设定不同的参量。
    11. 用verilog吧
    12. 如何在通话时,实现静音? 5/3597 嵌入式系统 2010-02-22
      引用 4 楼 91program 的回复: 看你所用的模块的AT命令,应该有静音的AT命令
      TAPI是不是有对应的API?
    13. 引用 2 楼 jgj58 的回复: can通讯都是有标准的,不同的波特率最大通讯距离都是确定的。 你说的长与短具体是多少? 所谓的不能收发具体怎么不能收发,问的太笼统。 不同的can设备板,可以收发,当然长距离会导致大量的错误帧。这是什么意思?只要设备有can接口就可以通讯的。
      跟着大犇学习,呵呵…
    14. EVC中CStatic的问题(SetbitmapCStatic * pSat =... 7/4427 嵌入式系统 2010-01-23
      to 楼上: 没有执行delete;上面是专门测试功能的,就没考虑内存泄露。 就在资源里加了一个Static,导入一个bmp图像,加了一个button;上述代码放在了对button的响应里。 VC的开发过程完全一样
    15. 请高手前来帮忙-难题! 4/2991 嵌入式系统 2009-12-12
      您好,不知道前面各位的问题解了没,你们说的问题小弟并不太懂,但我们目前是divacom在中国区域的总代理,从03年来一直专注于做DM9000及DIVACOM全线产品,对于研发来说,首先是产品质量有保证(为当年全新原装最新版本),然后通过我们可以找到原厂的工程师做技术支持,当然,是免费提供的,说不定我能帮得上大家的忙,以下是我的联系方式    QQ:1259987438 电话:027-8765163610 (0)13554272382 王洪武
    16. 谁会用msp430调pcf8574啊?跪求 2/3503 嵌入式系统 2009-12-10
      我的源程序如下 #include "msp430x22x4.h" unsigned int RxByteCtr; /********************************************************* *        数据定义 *********************************************************/ unsigned char read_Buf,         //读缓冲区               write_Buf, //写缓冲区               ctrl_Buf,  //用于存放控制指令等的中间缓冲区               addr_Buf1,  //高地址缓冲               addr_Buf2,               ack_Flag;  //应答标识 /************************************************ *        延迟 ************************************************/ void iic_Delay(void) {    _NOP();    _NOP();    _NOP();    } /********************************************************* *        启动IIC *********************************************************/ void start_IIC(void) {      //P3DIR &= 11111001;//P4OUT &= 0x3f;        //设置P4OUT      P3DIR |= BIT1+BIT2;//P4DIR &= 0x7f;        //SDA = 1      P3OUT |=BIT1;           iic_Delay();      iic_Delay();      //P3DIR |= BIT2;      P3OUT |=BIT2;//P4DIR &= 0xbf;        //SCL = 1      iic_Delay();iic_Delay();      P3OUT &= ~BIT1;//P4DIR |= 0x80;        //SDA = 0      iic_Delay();iic_Delay();      P3OUT &= ~BIT2;//P4DIR |= 0x40;        //SCL = 0      iic_Delay();iic_Delay(); } /******************************************************* *        停止IIC *******************************************************/ void stop_IIC(void) {      P3DIR |= BIT1+BIT2;      P3OUT &=~BIT1; //P4DIR |= 0x80;        //SDA = 0      iic_Delay();iic_Delay();      P3OUT |=BIT2;//P4DIR &= 0xbf;        //SCL = 1      iic_Delay();iic_Delay();      P3OUT |=BIT1;//P4DIR &= 0x7f;        //SDA = 1      iic_Delay();iic_Delay();      P3OUT &=~BIT1;//P4DIR |= 0x80;        //SDA = 0      iic_Delay();iic_Delay();      P3OUT &= ~BIT2;//P4DIR |= 0x40;        //SCL = 0       } /******************************************************* *        发送 0 *******************************************************/ void send_Zero(void) {      P3DIR |= BIT1+BIT2;      P3OUT&= ~BIT1;//P4DIR |= 0x80;        //SDA = 0      iic_Delay();iic_Delay();      P3OUT|= BIT2;//P4DIR &= 0xbf;        //SCL = 1      iic_Delay();iic_Delay();      P3OUT &=~BIT2;//P4DIR |= 0x40;        //SCL = 0      iic_Delay();iic_Delay();       } /******************************************************* *        发送 1 *******************************************************/ void send_One(void) {         P3DIR |= BIT1+BIT2;      P3OUT|= BIT1;//P4DIR &= 0x7f;        //SDA = 1      iic_Delay();      iic_Delay();      P3OUT|= BIT2;//P4DIR &= 0xbf;        //SCL = 1      iic_Delay();      iic_Delay();      P3OUT&= ~BIT2;//P4DIR |= 0x40;        //SCL = 0      iic_Delay();      iic_Delay();      P3OUT&= ~BIT1;//P4DIR |= 0x80;        //SDA = 0      iic_Delay();iic_Delay();        } /******************************************************* *        发送一个字节数据 *******************************************************/ void send_Char(void) {      unsigned char cnt,tmp=0x80;      for(cnt=0;cnt 0)              {                   send_One();             // 发送1              }else              {                   send_Zero();        // 发送0              }              tmp /= 2;                // tmp右移一位      }        } /******************************************************* *        读一个byte数据 *******************************************************/ void read_Char(void) {      unsigned char cnt,tmp=0x80;      read_Buf = 0x00;            for(cnt=0;cnt 0x00)              {               // 收到 1                  read_Buf |= tmp;              }                      P3OUT&=~BIT2;//P4DIR |= 0x40;  //SCL = 0              iic_Delay();              tmp = tmp/2;                   }       } /************************************************* *        应答信号 *************************************************/ void iic_ACK(void) {           ack_Flag = 0x00;      P3DIR |= BIT1+BIT2;      P3OUT|=BIT1;//P4DIR   &= 0x7f;        //SDA = 1      iic_Delay();      iic_Delay();      P3OUT|= BIT2;//P4DIR   &= 0xbf;        //SCL = 1      iic_Delay();iic_Delay();      P3DIR &= ~BIT1;      if ((P3IN & BIT1) == BIT1 )//if ((P4IN & 0x80) == 0x80 )      {              ack_Flag = 0x01;      }            P3OUT&=~BIT2;//P4DIR   |=  0x40;        //SCL = 0      iic_Delay();iic_Delay();        } /*********************************************** *  iic_NACK ************************************************/ void iic_NACK(void) {      P3DIR |= BIT1+BIT2;      P3OUT |=BIT1;//P4DIR   &= 0x7f;        //SDA = 1      iic_Delay();      P3OUT |= BIT2;//P4DIR   &= 0xbf;        //SCL = 1      iic_Delay();      P3OUT &=~BIT2;//P4DIR   |= 0x40;        //SCL = 0           iic_Delay();      P3OUT &=~BIT1;//P4DIR   |= 0x80;        //SDA = 0      iic_Delay(); } /************************************************* *   iic_SENDACK *************************************************/ void iic_SENDACK(void)  //send the answer bit {         P3DIR   |= 10;//SDA=0;         iic_Delay();         P3DIR   &= 11111011;//SCL=1;         iic_Delay();//NOP();         P3DIR   |= 100;//SCL=0;              iic_Delay();         P3DIR   &=11111101;//SDA=1;         iic_Delay();    } /*************************************************** *  iic_Write ***************************************************/ void iic_Write() {         do         {iic_Delay();iic_Delay();iic_Delay();iic_Delay();        iic_Delay();iic_Delay();iic_Delay();iic_Delay();        iic_Delay();iic_Delay();                 start_IIC();//I2cStartBit();                 ctrl_Buf=0X70;//addr_Buf1;                 send_Char();//I2cWriteByte(slaw);                 iic_ACK();//I2cTestAck();                         }         while(ack_Flag==1);//while(F0==1);         ctrl_Buf=0X06;//write_Buf;         send_Char();//I2cWriteByte(Buffer[Index]);         iic_ACK();//I2cTestAck();         stop_IIC(); } /*************************************************** *  iic_Read ***************************************************/ void iic_Read() {         //unsigned char OneByte;                 //unsigned char i;          do         {                 start_IIC();//I2cStartBit();                 ctrl_Buf=0X4f;//addr_Buf2;                 send_Char();//I2cWriteByte(slaw);                 iic_ACK();//I2cTestAck();         }         while(ack_Flag==1);//while(F0==1);         read_Char();         iic_NACK();         stop_IIC(); } void main() { WDTCTL=WDTPW+WDTHOLD; //关看门狗      BCSCTL1 =CALBC1_1MHZ; //设定DCO 为1MHZ      DCOCTL =CALBC1_1MHZ;                 //start_IIC();//I2cStartBit();                 //ctrl_Buf=0X00;//addr_Buf2;                 //send_Char();//I2cWriteByte(slaw);                 //iic_ACK();//I2cTestAck();      while(1)      {        iic_Write();             } }
    17. 急!!唤醒后无法自动进入休眠! 4/3110 嵌入式系统 2009-11-30
      引用 3 楼 hitszj604 的回复: 多谢两位达人,给分了。 问题解决,是因为usb连接到电脑上不能让系统自动进入休眠
      哦,恭喜lz了,不过我还是一头雾水,哈哈
    18. 我想山寨M8,大家一起来出出主意!嘿嘿。 170/45475 嵌入式系统 2009-10-30
      字库芯片。确实有这种东西啊。我们公司的智能终端上有用过。它就是一块FLASH,里面存储着显示汉字的相应数据,要显示什么字,就将相应的汉子内码发过去,程序扫描到FLASH的相应地址去取得显示该汉字的数据信息。我也说不清楚,反正是有这种芯片。 ------------------------------------------------------------------------------------- 现阶段连菜鸟都算不上,其实我就是顶贴的。
    19. 君正CPU的问题 9/3405 嵌入式系统 2009-10-30
      听说人家上网本都做呢。。。那就无所不能了
    20. NAND FLASH的spare区格式是什么啊? 15/4585 嵌入式系统 2009-10-22
      NAND Flash因为可能存在坏块,所以一定会有spare区了。page分为main和spare区。main是用来保存数据的。spare区一般用来标记坏块,和保存对main区数据的ECC校验码。 至于spare 区的格式,这个由自己设定,没有标准格式的。正如楼主的 LSN0 LSN1 LSN2 RESERVED RESERVED BI ECC0 ECC1 ECC2 S-ECC0 S-ECC1 RESERVED RESERVED RESERVED RESERVED RESERVED 也是一种。 至于说地址跟sector的数目关系。我觉得是因为存在有坏块,所以地址中间会有断开,不连续、数值很大而且不能直接访问,不方便管理。而用sector的概念就比较好处理。统计下来整个flash有多少好的sector,每次写了多少sector,还剩下多少sector,一目了然。

最近访客

< 1/1 >

统计信息

已有111人来访过

  • 芯积分:--
  • 好友:--
  • 主题:16
  • 回复:54

留言

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


现在还没有留言