厦门大学摄像头组-至善队-技术报告-2012第七届 - 图文(5)

2019-04-17 15:41

5.3无线调试模块设计

NRF24L01 是NORDIC 公司最近生产的一款无线通信通信芯片,采用FSK 调制,内部集成NORDIC 自己的Enhanced Short Burst 协议。可以实现点对 点或是1 对6 的无线通信。线通信速度可以达到2M(bps)。NORDIC 公司 提供通信模块的GERBER 文件,可以直接加工生产。嵌入式工程师或是单 片机爱好者只需要为单片机系统预留5 个GPIO,1 个中断输入引脚,就可以 很容易实现无线通信的功能,非常适合用来为MCU 系统构建无线通信功能。

同时,我也利用无线模块,设计出一个简易的遥控器。在平时调试过程中,遥控器对于保护车子起到了很重要的作用。以下是无线模块和遥控器图片:

21

第六章 模型车的主要技术参数

赛车基本参数 宽 高 车重 功耗 带载 电容总容量 传感器 CCD摄像头

光电编码器

1个

空载

大于4W 1700uF

1个

18.5cm 35cm 1200g

3W 28.5cm

除了车模原有的驱动电机、舵机之外伺服0 电机个数 赛道信息检测 精度(近/远) 频率

视野范围(近/远)

2/12.1mm 50Hz

5/130cm

结论

我们从认识、报名参加智能车,到自己动手编写程序、调整机械、焊接电路让车子跑起来,历时接近一年。这中间也花费了大量的精力、心思,也得到了学校、学院、老师和师兄们的支持,在此向他们表示感谢。

精彩激烈的赛区赛才刚刚落下帷幕,全国赛就已经吹响集结号。面对即将到来的大赛,也许我们的知识还不够丰富,考虑问题也不够全面,但是,我们小组也是经历过华南赛区赛的考验的,相信这一年来,我们的辛勤与付出,会让我们在比赛中收获到我们最美好的记忆。

22

参考文献

(1) 邵贝贝.单片机嵌入式应用的在线开发方法[M].北京.清华大学出版社.2004.

(2) 张军.AVR单片机应用系统开发典型实例.北京:中国电力出版社,2005. (3) 王晓明.电动机的单片机控制[M] .北京:北京航空航天大学出版社. 2002.

附录:程序源代码

void Speed_PID(int sv) {

EN2 = EN1; EN1 = EN0;

EN0 = sv - speed; //计算增量

dPWMN = (int)((Kp_DianJiN)*(float)(EN0 - EN1) + Ki_DianJiN*(float)(EN0) + Kd_DianJiN*(float)(EN0-2*EN1+EN2)); PWMN = dPWMN + SVN;

if(PWMN > 5000) //限幅 { PWMN = 5000; }

if(PWMN < 0) { PWMN = 0; }

FMotorPWM = 0; //反转 FTM1_C0V = PWMN; //正转 SVN = PWMN; }

23

#include \ /* common defines and macros */ #include \#include \#include \#include \#include \extern int speed;

extern int fmotorpwm;

//extern void itostr(int iNum,char str[]);

////////////////////////// dui de ///////////////////////////// //B口应该是 1001 1110 DDRB=0x9F

uchar TX_ADDRESS[TX_ADR_WIDTH]={0x34,0x43,0x10,0x10,0x01}; unsigned char TxBuf[TX_PLOAD_WIDTH]={9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9};

unsigned char Buf[RX_PLOAD_WIDTH]={0}; unsigned char Buf1[RX_PLOAD_WIDTH]={0};

//uchar BUFFER[32][122];

uchar Tx[32];

uchar Car[32]=\ zhiyuzhishan smartcar ! \extern uchar spd[32]; //uchar flag=1; char test[32]={0};

//char *p_test = &test{0]; char count=0; char buf[32]={0}; char Rx_stop=1;

uchar

a=0,config=0,en_aa=0,en_rxaddr=0,setup_aw=0,setup_retr=0,rf_ch=0,rf_setup=0,status=0,observe_tx=0; uchar

cd=0,rx_addr_p0[RX_ADR_WIDTH],tx_addr[TX_ADR_WIDTH],rx_pw_p0[5],fifo_status=0;

void Delay_us(unsigned int n) {

for(;n>0;n--); for(;n>0;n--); for(;n>0;n--); for(;n>0;n--);

24

for(;n>0;n--); }

void Delay_ms(unsigned int n) {

for(;n>0;n--) {

Delay_us(7980); } }

//最基本的读函数

uchar SPI_RW(uchar byte) {

uchar bit_ctr;

for(bit_ctr=0;bit_ctr<8;bit_ctr++) // output 8-bit {

if(byte & 0x80) // output 'byte', MSB to MOSI MOSI_OUT=0;/// else

MOSI_OUT=1;///

byte = (byte << 1); // shift next bit into MSB.. SCK_OUT = 1; // Set SCK high..

byte |= MISO_IN; // capture current MISO bit SCK_OUT = 0; // ..then set SCK low again }

return(byte); // return read byte }

//寄存器 读 函数

uchar SPI_Read(uchar reg) {

uchar reg_val;

CSN_OUT = 0; // CSN low, initialize SPI communication... SPI_RW(reg); // Select register to read from.. reg_val = SPI_RW(0); // ..then read registervalue

CSN_OUT = 1; // CSN high, terminate SPI communication return(reg_val); // return register value }

//寄存器 批量读 函数

uchar SPI_Read_Buf(uchar reg, uchar *pBuf, uchar bytes) {

uchar status,byte_ctr;

25


厦门大学摄像头组-至善队-技术报告-2012第七届 - 图文(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:针对训练4-呼吸作用与光合作用综合曲线题

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: