用485光强模块,输出到单片机上怎么没有数据

2019-07-21 03:41发布

现在正在学485通信,我将原子哥的485通信例程改了一下,将一个支持485通信的光强模块连接上去,光强模块是询问输出类型的。我将查询命令发出之后,没有接收到光强的数据呢,我将代码和传感器的资料都传上来了,请论坛里的人帮忙看一下。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
8条回答
一州
1楼-- · 2019-07-21 06:49
谢谢大家,我找出问题了,是因为我485模块引脚接触不好,造成没通上信,我重新焊接了一下就可以了。
245925587
2楼-- · 2019-07-21 08:05
 精彩回答 2  元偷偷看……
一州
3楼-- · 2019-07-21 13:39
245925587 发表于 2019-3-27 21:37
有无兴趣外包

我还是学生,学习一下板子的功能而已啦哈哈哈
传说缥缈
4楼-- · 2019-07-21 19:31
0xA5 0x09 0xAE
传感器手册里或者例程里有说指令中间要加空格吗?
一州
5楼-- · 2019-07-21 22:29
传说缥缈 发表于 2019-3-28 10:07
0xA5 0x09 0xAE
传感器手册里或者例程里有说指令中间要加空格吗?

我后面就建了一个数组,存了这三个数据,然后通过原子哥 的485_send函数将数组发出去,传感器好像接收不到


一州
6楼-- · 2019-07-22 01:09
#include "led.h"
#include "delay.h"
#include "key.h"
#include "sys.h"
#include "lcd.h"
#include "usart.h"         
#include "rs485.h"
u8 R_order_orl1[] = {0xA5,0x09,0xAE};
u8 R_order[200];                                        
int main(void)
{         
        u8 key;
        u8 i=0,t=0;
        u8 cnt=0;
        u8 rs485buf[200];  
        delay_init();                     //Ñóê±oˉêy3õê¼»ˉ          
        NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//éèÖÃÖD¶ÏóÅÏ輶·Ö×éÎa×é2£o2λÇàÕ¼óÅÏ輶£¬2λÏìó|óÅÏ輶
        uart_init(9600);                 //′®¿ú3õê¼»ˉÎa115200
        LED_Init();                                  //3õê¼»ˉóëLEDᬽóμÄó2¼t½ó¿ú
        //LCD_Init();                                   //3õê¼»ˉLCD        
        KEY_Init();                                //°′¼ü3õê¼»ˉ                          
        RS485_Init(9600);        //3õê¼»ˉRS485       
  cnt=sizeof(R_order_orl1);
         printf("%d",cnt);
        while(1)
        {       
                key=KEY_Scan(0);
                if(key==KEY0_PRES)//KEY0°′ÏÂ,·¢Ëíò»′Îêy¾Y
                {               
                                RS485_Send_Data(R_order_orl1,3);//·¢Ëí3¸ö×Ö½ú                                                                                                                           
                }                 
                RS485_Receive_Data(rs485buf,&key);
                if(key)//½óêÕμ½óDêy¾Y
                {
                        printf("33333");
                        if(key>20)key=20;//×î′óêÇ20¸öêy¾Y.
                        printf("%s",rs485buf);
                }
                t++;
                delay_ms(10);
                if(t==20)
                {
                        LED0=!LED0;//ìáê¾Ïμí3ÕyÔúÔËDD       
                        t=0;
                }                  
        }
}



一周热门 更多>