论坛首发:NRF24L01的AVR驱动,已经测试通过【恢复】
谢谢大家~第一次发帖子!在这里真的能学习很多东西啊!我是一名大学生,下一步很想申请OURAVR的大学计划!阿莫给点面子啊!我是河北理工大学轻工学院的,一名大二的学生!
论坛里面根本没有AVR的24l01驱动,我贴上来,自己改的啊,对于我来说很是漫长!
NRF24L01AVR驱动!测试通过!ourdev_494792.rar(文件大小:37K) (原文件名:24L01.rar)
电路图上来了!一个图片和一个PROTELL文件!谢谢大家的支持!
在这里我解决了好多问题!
http://cache.amobbs.com/bbs_upload782111/files_11/ourdev_496734.jpg
24L01部分电路图! (原文件名:24l01.jpg)
24L01部分电路图!PROTELL文件!ourdev_496735.rar(文件大小:28K) (原文件名:24L01--PROTELL.rar)
ourdev_497614.rar(文件大小:43K) (原文件名:24L01.rar) 呵呵,恭喜你,支持你,好好学啊!
搞电子,需要认真,勤奋!加油。 帮你顶一把吧,哈哈 楼主:
void TX_Mode(void)
{
CE_0;
SPI_Write_Buf((WRITE_REG + TX_ADDR), TX_ADDRESS, TX_ADR_WIDTH); // Writes TX_Address to nRF24L01
SPI_Write_Buf((WRITE_REG + RX_ADDR_P0), TX_ADDRESS, TX_ADR_WIDTH); // RX_Addr0 same as TX_Adr for Auto.Ack
SPI_Write_Buf(WR_TX_PLOAD, tx_buf, TX_PLOAD_WIDTH); // Writes data to TX payload
SPI_RW_Reg(WRITE_REG + CONFIG, 0x0e); // Set PWR_UP bit, enable CRC(2 bytes) & Prim:TX. MAX_RT & TX_DS enabled..
delay(1); //////这里的延时是1ms吧,为什么要这1ms的时间
CE_1;
}
你的SPI速度是设置的多快?1秒钟发1K个字节会不会丢数据? 看了下makefile,里面用到了2401.h,压缩包中没有? 大家好!忘记把2404.H的文件放进去了!现在更新了!大家去下载把,电路图我马上就上来! 2401.h文件!在实验室的电脑上!帖子已经不能编辑!我下午给大家发上来!电路图我马上画出来! 楼主:
void TX_Mode(void)
{
CE_0;
SPI_Write_Buf((WRITE_REG + TX_ADDR), TX_ADDRESS, TX_ADR_WIDTH); // Writes TX_Address to nRF24L01
SPI_Write_Buf((WRITE_REG + RX_ADDR_P0), TX_ADDRESS, TX_ADR_WIDTH); // RX_Addr0 same as TX_Adr for Auto.Ack
SPI_Write_Buf(WR_TX_PLOAD, tx_buf, TX_PLOAD_WIDTH); // Writes data to TX payload
SPI_RW_Reg(WRITE_REG + CONFIG, 0x0e); // Set PWR_UP bit, enable CRC(2 bytes) & Prim:TX. MAX_RT & TX_DS enabled..
delay(1); //////这里的延时是1ms吧,为什么要这1ms的时间
CE_1;
}
你的SPI速度是设置的多快?1秒钟发1K个字节会不会丢数据?
你好!这个延时其实没有作用!在调整程序的时候总是以为初始化信息没有写进去!就写了个延时!去掉也无所谓的!
实际中没有丢失过数据! 期待楼主的原理图 电路图上来了!一个图片和一个PROTELL文件!谢谢大家的支持!
在这里我解决了好多问题!
http://cache.amobbs.com/bbs_upload782111/files_11/ourdev_496734.jpg
24L01部分电路图! (原文件名:24l01.jpg)
24L01部分电路图!PROTELL文件!ourdev_496735.rar(文件大小:28K) (原文件名:24L01--PROTELL.rar) 阿莫大哥,你整理一下吧,我又重新上传了!请把电路图和新上传的源程序整理到顶楼,我现在不能编辑了!以便大家分享!
完整的程序,带有头文件!谢谢大家的支持!ourdev_497614.rar(文件大小:43K) (原文件名:24L01.rar) 楼主,你的SPI速度是多少呢?是6M吗? MARK 500K的频率 记号。 记号。 MARK! 我的模块已到手,什么时间玩一下。 记号 记号 谢谢! 谢谢分享 楼主有测试过音频和视频传输吗?听人说这个传输速度可以达到1MBPS的速率啊 因为avr单片机的供电电压为2.7V~5.5V,而NRF24L01供电电压为1.9~3.6V,这两者可以用同一电源供电。 谢谢分享 除了117的那个引脚不对,其他的看起来不错. to 3楼:
那个延时最好加在CE至高后,因为在配置为发送状态后,ce由低至高,需要保持高至少10us,确保发送数据 参考一下也试试! 楼主的代码基本上没有任何价值,比你所谓辛苦搞代码要好的多的坛子里有好几个,不过只做一个测试也就这样就可以了,要工作稳定不受到干扰至少要有一个FAP的协议吧,不然同频段的干扰是避免不了的. 这个片子可以做音频的传输,这里有一个VOIP的代码就是用ATMEGA88加AD/DA搞的,不过不能传视频,带宽远远不够. 记号 记号 记号下 论坛里面根本没有AVR的24l01驱动,
--------------------------------------------------
LZ,不是没有,只是你没有搜索到,我就曾经在回复别人的帖子中发过 AVR , SONIX 以及 TenX 的汇编驱动。不过LZ这种奉献精神值得大家学习。
给个连接: http://www.ouravr.com/bbs/bbs_content.jsp?bbs_sn=958129&bbs_page_no=2&search_mode=4&search_text=windy__xp&bbs_id=9999
我给的程序都是不完整的程序,是实际项目中的部分代码,直接编译,肯定编译不了,只是与大家交流一下控制的方法。
本贴被 windy__xp 编辑过,最后修改时间:2009-01-15,20:24:01. 记号 垃圾 mark~~~ 很好 谢谢楼主,很好很简洁的代码!
另:请35楼具体说明一下原因 mark xiexie 分享! mark 谢谢分享 MARK mark thanks 非常感谢 学习! 留个记号~~ 我也留个记号! 谢谢分享,学习一下 mark一下 mark mark 这个必须 谢谢 模块用3.3V供电,可以和5V的单片机连接么? 回复【楼主位】jiahangsonic
-----------------------------------------------------------------------
hao 楼上,如果我记得没错,NRF2401是用3.3v供电,但它的数据引脚可以承受5v电压的。
还有楼主,2401的驱动论坛上肯定有,我年前找了几个,并且做了一个发射器和两个接收器。网上的驱动大部分都是基于51单片机,SPI都是用的软件模拟的。不过既然AVR有硬件SPI,又何必用软件模拟呢?当然了,楼主的程序写的不错,我这里把我当时的程序也发上来吧(这个程序的原版应该也是从这个论坛下载的,所以我改后没好意思贴到论坛上)。程序里有一个nrf2401的c文件是一个老外写的,个人感觉写的非常全了,把2401的功能全写了出来,只要你耐心把那个文件读懂,可以方便的移植和编写各种应用了。
最后我看了一眼图纸,原来楼主就是做智能车的那个佳杭啊!幸会啊!
接收机程序ourdev_537052.rar(文件大小:59K) (原文件名:remote_rec.rar)
发送机程序ourdev_537053.rar(文件大小:63K) (原文件名:remote_tra.rar) 还在学习啊!有点难度!! 回复【57楼】anning
-----------------------------------------------------------------------
24l01是3.3V供电,那么它的I/O口输出也是3.3V的,那么使用5V电源的单片机能把这样的电平正确地读入吗?如果不能的话怎样最简单地做电平转换呢?期望着大侠的指导 NRF24L01无线数传模块(13RMB为人民服务)
http://item.taobao.com/auction/item_detail.htm?item_num_id=5029339086 mark 楼主,你是刘佳宇的弟子吧! 回复【58楼】liuruoshui
-----------------------------------------------------------------------
AVR单片机I/O口(除去其中的两个脚)读取数值为高时的最低值为0.6Vcc,如是5V电源,则最低值为3V是单片机就能识别为高电平。 打个记号先 顶下 mark RF24L01 mark 呵呵,楼主学校离我的学校很近。。同是07级的。。没准见过。。./emotion/em052.gif mark mark NRF24L01与AVR连接不需要串接一个2K电阻吗 35楼……说原因…… 可以的,我也是大二开始学AVR的,我现在大三了。。。 谢谢LZ啦。。。 记下24l01无线 mark~ nrf24l01的驱动几乎是固定的,不管用什么芯片,略微修改下就可以的 收下!!!! 很不错,打算拿应用到项目中NRF24l01 mark 学习中 无线的啊,mark mark 回复【楼主位】jiahangsonic
-----------------------------------------------------------------------
支持一下,留着以后用 mark mark 过两天要用,留着吧 MARK,谢谢了 做个记号!mark! 有点难啊....编了好久,看了好多。....用GCC AVR .....还没结果... 留个记号! 好好 学习!!
看的太累了! mark!! 谢谢 mark good mark、、、 哦,这个正好需要用到,谢谢了,标记下,哈哈! 做个记号 刚刚开始使用51玩这个模块,关注一下。
页:
[1]
2