gbibzsw 发表于 2017-11-20 17:14:33

感谢您的分享

米晓乐德 发表于 2017-11-20 21:11:44

666666666666666

hehe5769 发表于 2017-11-24 13:22:05

666666666666666666666666666666

nsz2005 发表于 2017-11-28 22:18:47

okokokokok

若然 发表于 2017-11-30 17:02:05

想要学做一个!

acp 发表于 2017-11-30 19:55:08

支持 机智 。。。。。。。:P    :handshake

猫的张先森 发表于 2017-12-5 16:32:30

马克,帖子写的很不错,对于新手很友好

点点星 发表于 2017-12-6 12:38:21

谢谢分享~马:lol:lol:lol:lol

铁甲小宝 发表于 2017-12-8 13:21:06

666666666666

依蛋蛋卡 发表于 2017-12-8 16:26:19

支持这类入门教程

阿杜风云 发表于 2017-12-8 19:38:50

学习了。。。

风雨流年 发表于 2017-12-9 23:56:41

大神,我一直在你这里找关于中断发送的代码,官方生成的product.c文件里用的是中断发送,移植过来有问题,我看你用的轮询发送就没什么问题,不知道为什么啊

bigfanofloT 发表于 2017-12-10 19:00:54

风雨流年 发表于 2017-12-9 23:56
大神,我一直在你这里找关于中断发送的代码,官方生成的product.c文件里用的是中断发送,移植过来有问题, ...

把你的代码发上来看看呗

小叶三千 发表于 2017-12-12 13:53:48

支持一下

yidingling 发表于 2017-12-13 09:11:22

aaaaaaaaaaa

moleboy 发表于 2017-12-14 20:11:24

谢谢分享!!!!!!

小点雨 发表于 2017-12-19 16:15:15

学习学习,谢谢分享

周哈哈 发表于 2017-12-19 19:56:05

MCU工程弄好后,编译并下载,这里不再赘述
喜欢DIY的纯新手 ,这个怎么弄????

brave 发表于 2017-12-26 10:51:00

好资料,赞

风雨流年 发表于 2017-12-27 22:39:13

bigfanofloT 发表于 2017-12-10 19:00
把你的代码发上来看看呗

int32_t uartWrite(uint8_t *buf, uint32_t len)
{
                uint8_t crc = {0x55};
    uint32_t i = 0;
                  uint8_t aa=0x55;
    if(NULL == buf)
    {
      return -1;
    }

    for(i=0; i<len; i++)
    {
   // HAL_UART_Transmit_IT(&huart2, (uint8_t *)&buf, 1);
                HAL_UART_Transmit(&huart2, (uint8_t *)&buf, 1,50);
        //        while (huart2.State != HAL_UART_STATE_READY);//Loop until the end of transmission

      if(i >=2 && buf == 0xFF)
      {
                //        HAL_UART_Transmit_IT(&huart2, (uint8_t *)&crc, 1);
                        HAL_UART_Transmit(&huart2, (uint8_t *)&buf, 1,50);                       
                //        while (huart2.State != HAL_UART_STATE_READY);//Loop until the end of transmission
      }
    }

#ifdef PROTOCOL_DEBUG
    GIZWITS_LOG("MCU2WiFi[%4d:%4d]: ", gizGetTimerCount(), len);
    for(i=0; i<len; i++)
    {
      GIZWITS_LOG("%02x ", buf);

      if(i >=2 && buf == 0xFF)
      {
            GIZWITS_LOG("%02x ", 0x55);
      }
    }
    GIZWITS_LOG("\n");
#endif
               
                return len;
}
程序注掉的地方是中断发送的,这么写,程序运行有问题,按照你的换成轮询的就好了,而且咱们用CubeMx生成的hal_uart.h文件中的结构体UART_HandleTypeDef中是这样的
typedef struct
{
USART_TypeDef               *Instance;      /*!< UART registers base address      */

UART_InitTypeDef            Init;             /*!< UART communication parameters      */

uint8_t                     *pTxBuffPtr;      /*!< Pointer to UART Tx transfer Buffer */

uint16_t                      TxXferSize;       /*!< UART Tx Transfer size            */

uint16_t                      TxXferCount;      /*!< UART Tx Transfer Counter         */

uint8_t                     *pRxBuffPtr;      /*!< Pointer to UART Rx transfer Buffer */

uint16_t                      RxXferSize;       /*!< UART Rx Transfer size            */

uint16_t                      RxXferCount;      /*!< UART Rx Transfer Counter         */

DMA_HandleTypeDef             *hdmatx;          /*!< UART Tx DMA Handle parameters      */

DMA_HandleTypeDef             *hdmarx;          /*!< UART Rx DMA Handle parameters      */

HAL_LockTypeDef               Lock;             /*!< Locking object                     */

__IO HAL_UART_StateTypeDef    State;            /*!< UART communication state         */

__IO uint32_t               ErrorCode;      /*!< UART Error code                  */
}UART_HandleTypeDef;
而官网生成的代码是这样的,我忘了是官网生成的还是你的一个教程里面的,是这样的typedef struct
{
USART_TypeDef               *Instance;      /*!< UART registers base address      */

UART_InitTypeDef            Init;             /*!< UART communication parameters      */

uint8_t                     *pTxBuffPtr;      /*!< Pointer to UART Tx transfer Buffer */

uint16_t                      TxXferSize;       /*!< UART Tx Transfer size            */

__IO uint16_t               TxXferCount;      /*!< UART Tx Transfer Counter         */

uint8_t                     *pRxBuffPtr;      /*!< Pointer to UART Rx transfer Buffer */

uint16_t                      RxXferSize;       /*!< UART Rx Transfer size            */

__IO uint16_t               RxXferCount;      /*!< UART Rx Transfer Counter         */

DMA_HandleTypeDef             *hdmatx;          /*!< UART Tx DMA Handle parameters      */

DMA_HandleTypeDef             *hdmarx;          /*!< UART Rx DMA Handle parameters      */

HAL_LockTypeDef               Lock;             /*!< Locking object                     */

__IO HAL_UART_StateTypeDef    gState;         /*!< UART state information related to global Handle management
                                                       and also related to Tx operations.
                                                       This parameter can be a value of @ref HAL_UART_StateTypeDef */

__IO HAL_UART_StateTypeDef    RxState;          /*!< UART state information related to Rx operations.
                                                       This parameter can be a value of @ref HAL_UART_StateTypeDef */

__IO uint32_t               ErrorCode;      /*!< UART Error code                  */
}UART_HandleTypeDef;
后面那部分不一样,不知道是不是这个原因导致的
页: 5 6 7 8 9 10 11 12 13 14 [15] 16 17 18 19 20 21 22 23 24
查看完整版本: 3分钟教你创建手机APP远程温度监控应用,图形化编程!