用32的串口發送指令給GY-MCU90615 模塊,然后通過串口回傳溫度,GY-MCU90615 模塊的主要用法如下,檢查了很多遍,但本應該回傳的幀的頭格式數據都收不到,下面時我的主函數,求大神幫我看看,卡了好長時間了
)I@7~5U6Y(16]~T7OS~IG38.png (58.29 KB, 下載次數: 61)
下載附件
2018-12-13 21:58 上傳
9)3}7V$%@$_]QC{RH2Z_B3K.png (37.35 KB, 下載次數: 74)
下載附件
2018-12-13 21:58 上傳
- #include "led.h"
- #include "delay.h"
- #include "sys.h"
- #include "usart.h"
- #include "lcd.h"
- u8* rebuff[9];
- void USART1_IRQHandler(void)
- {
- int i;
- if(USART_GetITStatus(USART1,USART_IT_RXNE))//如果收到數據
- for(i=0;i<9;i++)
- *rebuff[i]=USART_ReceiveData( USART1);//讀數據
- // USART_FLAG_RXNE=0;//清除標志位
- }
- void send_commend(unsigned char com)//發送字節命令
- {
- if(USART_GetFlagStatus( USART1, USART_FLAG_RXNE)==0)
- {
- USART_SendData(USART1, com);
- }
- }
- int main(void)
- {
- u8 times=0;
- delay_init(); //延時函數初始化
- NVIC_Configuration();// 設置中斷優先級分組
- uart_init(9600); //串口初始化為9600
- LED_Init(); //初始化與LED連接的硬件接口
- LCD_Init();USART_SendData
- POINT_COLOR=RED;
- (USART1, 0xA5);
- USART_SendData(USART1, 0xAE);
- USART_SendData(USART1, 0x53);//配置波特率為9600;
- while(1)
- {
- times++;
- USART_SendData(USART1, 0xA5);
- USART_SendData(USART1, 0x45);
- USART_SendData(USART1, 0xEA);
- LCD_ShowString(30,40,200,24,24,rebuff[0]);
- if(times%30==0)LED0=!LED0;//閃爍LED,提示系統正在運行.
- delay_ms(10);
- }
- }
- //USART 3õê¼»ˉéèÖÃ
- USART_InitStructure.USART_BaudRate = bound;//
- USART_InitStructure.USART_WordLength = USART_WordLength_8b;
- USART_InitStructure.USART_StopBits = USART_StopBits_1;//
- USART_InitStructure.USART_Parity = USART_Parity_No;//
- USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None;//
- USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx; //
- USART_Init(USART1, &USART_InitStructure); //
- USART_ITConfig(USART1, USART_IT_RXNE , ENABLE);//開啟中斷
- USART_Cmd(USART1, ENABLE);
復制代碼
|