标题:
自动巡航小船制作 北斗导航+SI4432通讯+stm32主控
[打印本页]
作者:
1511032143
时间:
2017-7-3 21:50
标题:
自动巡航小船制作 北斗导航+SI4432通讯+stm32主控
这是一个以stm32为主控芯片制作的小船,通过51单片机制作遥控器并以si4432作为通讯模块进行通讯,可以进行设点自动巡航操作,作为一个刚入门的菜逼程序写的有点抠脚,大神们多多包涵。(遥控器原理图已丢失,附件中只有船的原理图以及船和遥控器的程序)
原理图:
0.png
(235.63 KB, 下载次数: 131)
下载附件
2017-7-4 01:22 上传
0.png
(41.86 KB, 下载次数: 113)
下载附件
2017-7-4 01:22 上传
北斗导航系统的stm32单片机源程序如下:
#include "led.h"
#include "delay.h"
#include "sys.h"
#include "pwm.h"
#include "usart.h"
#include "GY273.h"
#include "huo.h"
#include "nokia_5110.h"
#include "rf4432.h"
extern struct _pid pid;
extern struct autoturn hello;
int main(void)
{
int iii;
delay_init(); //延时函数初始化
LED_Init(); //初始化与LED连接的硬件接口
LCD_init();
delay_ms(500);
Init_HMC5883();
uart_init(9600);
uart_init2(9600);
TIM2_PWM_Init(10000,0);
PID_init();
RF4432_Init();
RF4432_SetRxMode();
order();/*向北斗发送AT指令*/
LCD_write_english_string(0,3,"wait");
hello.juli=3.5;
hello.num=3;
while(1)
{
if(iii==hello.Actual_du){iii=hello.Actual_du-1;}//无用语句
get_lc(&hello);//无线处理
TIM_SetCompare1(TIM2,(uint)(10000-(hello.su1)*10.0)); //A1左轮
TIM_SetCompare2(TIM2,(uint)(10000-(hello.su2)*10.0)); //A0右轮
……………………
…………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码
遥控器51单片机源程序如下:
#include <STC12C5A60S2.H>
#include <intrins.h>
#include <string.h>
#include "uart.h"
#include "spi.h"
#include "rf4432.h"
#include "tm1638.h"
#define uchar unsigned char
#define uint unsigned int
#define RF4432_TxBuf_Len 4
#define RF4432_RxBuf_Len 4 //定义RF4432数据包长度
#define IAP_ADDRESS 0x0000
typedef unsigned char BYTE;
typedef unsigned int WORD;
extern void Delay(unsigned int n);
extern void IapWriteByte(WORD addr, BYTE dat);
extern void IapEraseSector(WORD addr);
extern BYTE IapReadByte(WORD addr);
sbit deng=P1^4;
//sbit set1=P4^0;
//sbit set2=P0^1;
//sbit set3=P0^3;
//sbit set4=P0^5;
//sbit set5=P0^7;
//sbit set6=P2^1;
//sbit go=P4^2;
//sbit left=P2^3;
//sbit right=P2^7;
//sbit stop=P2^5;
//sbit ji1=P1^0;
void main(void)
{
unsigned char i; unsigned int h;
deng=0;
SPI_Init();
UART_Init();
RF4432_Init();
RF4432_SetRxMode(); //设置成接收模式
init_TM1638();
P1 = 0xfe;
Delay(10);
IapEraseSector(IAP_ADDRESS);
P1 = 0xfc;
Delay(10);
for (h=0; h<512; h++)
{
IapWriteByte(IAP_ADDRESS+h, 10);
}
P1 = 0xf8;
Delay(10);
/*for (h=0; h<512; h++)
{
if (IapReadByte(IAP_ADDRESS+h) != (BYTE)h)
goto Error;
} */
while(1)
{
/* i=Read_key(); //读按键值
if(i<8)//如果有数字被按下
{
//Write_DATA(i<<1,tab[i]);
Write_allLED(1<<i);
while(Read_key()==i); //等待按键释放
switch (i)
{
case 0 :RF4432_TxBuf[0]='P';RF4432_TxBuf[1]='F';break;
case 1 :RF4432_TxBuf[0]='P';RF4432_TxBuf[1]='L';break;
case 2 :RF4432_TxBuf[0]='P';RF4432_TxBuf[1]='R';break;
case 3 :RF4432_TxBuf[0]='P';RF4432_TxBuf[1]='P';break;
case 4 :RF4432_TxBuf[0]='S';RF4432_TxBuf[1]=0;break;
case 5 :RF4432_TxBuf[0]='S';RF4432_TxBuf[1]=1;break;
case 6 :RF4432_TxBuf[0]='S';RF4432_TxBuf[1]=2;break;
case 7 :RF4432_TxBuf[0]='R';RF4432_TxBuf[1]='R';break;
}
}
// if(RF4432_RxPacket())
// {
//
// RF4432_ReadBurestReg(FIFO_ACCESS,RF4432_RxBuf,RF4432_RxBuf_Len);
// RF4432_SetRxMode();
// send_str_len(RF4432_RxBuf,32);
// deng = ~deng;
// }
RF4432_TxPacket();
deng = ~deng; */
}
}
/* void main()
{
WORD h;
P1 = 0xfe;
Delay(10);
IapEraseSector(IAP_ADDRESS);
for (h=0; h<512; h++)
{
if (IapReadByte(IAP_ADDRESS+h) != 0xff)
goto Error;
}
P1 = 0xfc;
Delay(10);
for (h=0; h<512; h++)
{
……………………
…………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码
所有资料51hei提供下载:
无人船.rar
(525.5 KB, 下载次数: 324)
2017-7-4 01:26 上传
点击文件名下载附件
下载积分: 黑币 -5
作者:
admin
时间:
2017-7-4 01:28
好资料,51黑有你更精彩!!!
作者:
asdsadsadasd
时间:
2017-7-5 14:47
厉害了 我的哥
作者:
meilidianzhi
时间:
2017-8-7 19:47
楼主高手啊,赞一个
作者:
gdatgb
时间:
2017-8-9 17:11
楼主厉害了 都应用北斗导航了!!
作者:
echoma
时间:
2018-1-19 09:27
楼主好厉害~正好有船模比赛,受用了~
作者:
tieq1952
时间:
2018-1-20 11:48
北斗导航应用,可以玩一玩
作者:
有八块腹肌的鱼
时间:
2018-4-5 20:11
想知道楼主怎么解决精确度的问题,GPS误差肯定很大的,怎么处理的呀。如果有视频就好了。
作者:
有八块腹肌的鱼
时间:
2018-5-8 11:25
给力给力 就不知道定位 精度如何
作者:
eastwin
时间:
2018-5-16 16:07
下载看看,多学习一下
作者:
zhoubujin
时间:
2018-8-27 10:18
感谢共享 正好需要 谢谢
作者:
学员
时间:
2018-10-2 15:21
学习一下
作者:
ngrakj
时间:
2019-4-21 19:34
厉害了,谢谢
作者:
迁就
时间:
2019-5-15 18:58
谢谢分享
作者:
夕阳醉了I
时间:
2019-8-22 21:18
学习一下
作者:
3424773030
时间:
2019-8-29 19:44
好厉害
作者:
WQY123654
时间:
2020-2-2 20:25
感谢分享
作者:
yhgwork
时间:
2020-2-5 13:21
有没有做成实物啊
作者:
rm3721
时间:
2020-3-29 12:14
谢谢分享!先下载学习。
作者:
cr8526
时间:
2020-4-10 23:53
搞1个巡逻机器人也好啊
作者:
whwitp
时间:
2020-4-13 17:09
感谢楼主共享楼主厉害了 都应用北斗导航了!
作者:
liang_work
时间:
2020-6-23 11:15
谢谢分享!先下载学习。
作者:
rayin
时间:
2020-11-15 17:14
不错,值得学习。51hei有你更精彩!!
作者:
cccao1
时间:
2021-5-18 20:02
厉害, 都应用北斗导航了!!
作者:
川蜀浪子
时间:
2021-5-20 11:35
好资料,51黑有你更精彩!!!
作者:
我来了来了
时间:
2021-6-22 01:21
顶贴别沉了,没有做的吗?
作者:
sabo1655
时间:
2022-6-2 00:34
51hei有你更精彩
作者:
chenyucy72
时间:
2022-6-4 10:50
太强大了,虽然现在看不懂,先学习先
作者:
huaishang
时间:
2022-9-14 13:40
楼主高手啊,赞一个
作者:
lyhot
时间:
2022-10-28 12:13
好资料,51黑有你更精彩!!!
作者:
sdlyyy
时间:
2023-3-14 21:42
真正你的强大,能自动驾驶的车。
作者:
szmj
时间:
2023-3-18 14:50
都是大神
作者:
xxxx13
时间:
2024-4-10 09:11
还有北斗,好厉害呀
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1