zpf19910506

    1. 固件库为什么没有用位带操作呢? 4/3844 stm32/stm8 2013-03-29
      #define SET_BIT(REG, BIT)     ((REG) |= (BIT)) #define CLEAR_BIT(REG, BIT)   ((REG) &= ~(BIT)) #define READ_BIT(REG, BIT)    ((REG) & (BIT)) #define CLEAR_REG(REG)        ((REG) = (0x0)) #define WRITE_REG(REG, VAL)   ((REG) = (VAL)) #define READ_REG(REG)         ((REG)) #define MODIFY_REG(REG, CLEARMASK, SETMASK)  WRITE_REG((REG), (((READ_REG(REG)) & (~(CLEARMASK))) | (SETMASK))) 上面的好像是位操作?但是我们用过,楼主有空测试一下!测试好了告诉我怎么用。先谢啦。
    2. 我已经找到原因了,虽然你说的不对,但还是很谢谢你!原因是我在write_data函数中把send_length定义成了静态变量。它的值只能被初始化一次,当第一次发送完成后,它的值就永远为0了。 #define _UART_C #include "includes.h" static void write_data(void); static INT8U send_length = 0;     //这里把要发送的数据的长度定义为静态变量,                                   //用它来判断是否发送完,它的值在send_data函数中被赋值                                   //每次发送完一个字节,后在write_data中减一 /****************************************          串口初始化  9600bps  8bit  1stop ****************************************/ void Init_UART(void) {    TMOD=0x20;    TH1=0xfd;    TL1=0xfd;    PCON=0x00;    SCON=0x50;    TR1=1;    ET1=0;    ES=1; } //串口发送十六进制数据 //num:要发送的数据的个数   *str:数据数组的首地址 //应用层调用此函数把要发送的数据写入发送缓冲器中。 void UART_SendData(unsigned char num,unsigned char *str) {         INT8U i;     for(i=0;i
    3. 12864多级菜单设计 290/74261 51单片机 2013-03-29
      不错不错!有助于开阔思维!
    4. 我把楼主的资料下载下来了,测试了一下。跑一个任务没什么问题,但是跑两个任务,就出错了。我看了一下,楼主的OS_CONFIG.H配置不对,但是我改了一下,还是不对,请楼主赐教。正在学习UCOS,很多地方还是不懂,附上源码!!!
    5. 非常推荐!
    6. 分享30套单片机毕业设计给大家 3137/285503 信息发布 2013-03-26
      看看有没有什么好东西

最近访客

< 1/1 >

统计信息

已有91人来访过

  • 芯积分:--
  • 好友:--
  • 主题:1
  • 回复:6

留言

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


现在还没有留言