|
接线io自行下载免费程序,发送用的stm32f103c8t6小系统板,便于观测,接收用的战舰v3板子,上面有lcd, 所以接收部分有lcd,如果用没有lcd的板子测试,请自行把lcd。c及相关函数删掉即可,否则程序会卡死,模块我之前入手,一直没有时间调试,前天晚上有时间,就心血来潮开始研究,第一晚搞了几个小时后可以发送数据了,但是接收端有问题,第二天白天去面试,晚上继续,搞到了12点半,接收端也搞好了,其实说难不难,说简单,没搞到之前那真是难啊,反反复复,太折磨人,我使用的原子哥是例程,直接分开两份一份发送,一份接收,在此基础上修改,先说说发送的问题,我是发送的字符串,程序也是简单明了的就能看懂,循环发送出去,一开始我也不确定发没发出去, 但是我看格式应该没问题,于是就调接收部分,一开始我在想如何把接收到的字符串进行对比确认是我要的,然后给个命令去执行别的任务,就跟蓝牙那种,串口发来相应的数据,接收到了相应的命令就去执行想要执行的,开始我就麻爪了,不知道怎么搞,自己鼓捣半天也不好使,后来百度,查到一个函数,strcmp,是专门用来对比字符串的,详细自行百度,反正在string。h中,头文件需要调用,还要在接收端定义发送端相应的数据的组,比如就是发送“asdfg”,接收有一个str_buf【5】,还要定义一个a【5】={“asdfg”};while中比较就是strcmp(strcmp,a),这时候会提示错误,于是这样改strcmp((const char*)strcmp,(const char*)a);就可以,如果相同返回0,不同会有两种,一个返回1一个返回-1,所以加个if(strcmp((const char*)strcmp,(const char*)a)==0)判断返回是否得0,即对比接收数据是否想要的,下面就可以放你想要的命令了,裸着写的,可能有的地方不清楚,也可能有的地方会出错,,希望能帮助上新上手的朋友,欢迎互相讨论。 |
评分
-
查看全部评分
|