查看: 1766|回复: 19
|
关于PIC18 和 MRF24 之间的问题
[复制链接]
|
|
![](static/image/common/ico_lz.png)
楼主 |
发表于 23-7-2013 04:28 PM
|
显示全部楼层
a
- while(1)
- {
- Chip_Select = 0; //cs=0
- SPI1_Write (0x02);//mode write
- SPI1_Write (0x00);//low address
- SPI1_Write (0x10);//high address
- SPI1_Write (0xA5);//date
- Chip_Select = 1 ;//cs = 1
- delay_ms(5);//等待缓冲
- Chip_Select = 0;
- SPI1_write (0x03);//mode read
- SPI1_Write (0x00);
- SPI1_Write (0x10);
- Valeur_s = SPI1_Read(buffer);//read data
- Chip_Select = 1;
- multiplexage (Valeur_s);//显示数值
- }
复制代码 大家好像都不是用这种方式写的。。。 本帖最后由 WU93 于 23-7-2013 09:34 AM 编辑
|
|
|
|
|
|
|
|
发表于 23-7-2013 06:22 PM
|
显示全部楼层
|
|
|
|
|
|
|
![](static/image/common/ico_lz.png)
楼主 |
发表于 23-7-2013 08:02 PM
|
显示全部楼层
这是前置的。。。- void main()
- {
- SPI1_Init();
- SPI_Set_Active(&SPI1_Read, &SPI1_Write);//active fontion read and write
- Valeur_S = 0;
- SSP1STAT = 0b11000000; // Datasheet P.259
- // x------- SMP Capture du bit présent à l'entrée 0 = au milieu, 1 = en fin
- // -x------ CKE Donner le sens de transition de SCK sur la sortie SDO du maître au début d'un cycle
- // 0 = repos vers actif, 1 = actif vers repos
- // --xxxxx- Nul pour le module SPI
- // -------x BF Donner l'état du Buffer de réception
- SSP1CON1 = 0b00100001; // Datasheet P.260-261
- // x------- WCOL Write COLlision detect bit ( Slave )
- // -x------ SSPOV SSP receive Overflow indicator bit (1 = perte de l’octet reçu) (Slave)
- // --x----- SSPEN (EN = Enable)SSP ENable (1 = module SSP en service )
- // ---x---- CKP ClocK Polarity select bit 0= niveau bas , 1= niveau haut
- // ----xxxx SSPxM Synchronous Serial Port Mode Select bits
- // (Maître)vitesse d’horloge / (Slave)validation de l’entrée SS
- INTCON = 0b11010000;// Datasheet P.116 Graphique P.113
- TRISC = 0b00010000;
- ANSELC = 0b00100000;
复制代码 但是一直试都不行,。。 |
|
|
|
|
|
|
|
发表于 24-7-2013 12:11 PM
|
显示全部楼层
WU93 发表于 23-7-2013 08:02 PM ![](static/image/common/back.gif)
这是前置的。。。但是一直试都不行,。。
ha .....你去爬贴, hin86的贴。 里面有很详细的解释。
|
|
|
|
|
|
|
|
发表于 24-7-2013 12:12 PM
|
显示全部楼层
^Hins86^ 发表于 23-7-2013 06:22 PM ![](static/image/common/back.gif)
@fritlizt 有类似 Miwi 的project 需要,需要你的指导
哈哈
来, 交给你, 看我当年的教导有没有白费。哈哈哈
|
|
|
|
|
|
|
|
![](static/image/common/ico_lz.png)
楼主 |
发表于 24-7-2013 12:55 PM
|
显示全部楼层
|
|
|
|
|
|
|
![](static/image/common/ico_lz.png)
楼主 |
发表于 24-7-2013 02:42 PM
|
显示全部楼层
hins86大大的帖子我看了。。但是关于SPI前置大家都只是简短的- 27. // Set the SPI module
- 28. #if defined(HARDWARE_SPI)
- 29. SSPSTAT = 0xC0;
- 30. SSPCON1 = 0x20;
- 31. #endif
复制代码 就好了,我也有根据datasheet写这个,但是还有用不了。。 |
|
|
|
|
|
|
|
发表于 24-7-2013 10:29 PM
|
显示全部楼层
我的project 好像没有写到SPI 的东西,好像都是用miwi template code 里define 的东西。你的project ,我的想法是你传一个数值去给pic,然后pic 直接output给mrf24,然后mrf24直接传送你的数值给接受的mrf24,然后再传给pic,pic 就根据收到的数值,根据 你预先设定的output 给7 segment led. pic default 的format 好像是hexadecimal,所以建议你的数值是hexadecima的。 |
|
|
|
|
|
|
|
发表于 24-7-2013 10:38 PM
|
显示全部楼层
这是我的concept,比较low level 的programming concept
不知道能不能work....嘿嘿
|
|
|
|
|
|
|
|
发表于 24-7-2013 10:42 PM
|
显示全部楼层
还有一点是我用的是c18 programming language ,好像跟你的mikroC 有一点不同,可能是一些define 的term 不同。
我不知道对不对,如果给错info,请版主来改正 |
|
|
|
|
|
|
|
![](static/image/common/ico_lz.png)
楼主 |
发表于 25-7-2013 02:09 PM
|
显示全部楼层
谢谢 hins86前辈的建议
其实我最开始的concept就是先一点一点的解决问题。。。先弄简单PIC 和 MRF之间的SPI互动,在弄难度高的miwi协议栈。。。。
问题:PIC 和 MRF之间不能互相传输么。。只能利用miwi进行一个PIC+MRF 负责传输,另一个MRF+PIC负责接收么。。
MRF中应该有自动返还数值的应答机制吧。。。
如果我先进行miwi的programming,我可以参照前辈的那个帖子里关于miwi的设定么 |
|
|
|
|
|
|
|
发表于 25-7-2013 02:57 PM
|
显示全部楼层
WU93 发表于 25-7-2013 02:09 PM ![](static/image/common/back.gif)
谢谢 hins86前辈的建议
其实我最开始的concept就是先一点一点的解决问题。。。先弄简单PIC 和 MRF之间的SP ...
我以前用的是microchip提供的 stack
然后修改在我的controller里面run.
你可以试试看。
用c18是因为microchip stack是给c18的。 为了方便, 有几shortcut 我就几shortcut....
|
|
|
|
|
|
|
|
![](static/image/common/ico_lz.png)
楼主 |
发表于 25-7-2013 03:31 PM
|
显示全部楼层
谢谢大大的建议
可关于SPI的呢。。我现在要做些什么呢。。关于PIC 和 MRF之间的SPI互动。。我想先把它完成。。
还有关于那个stack...我是2个pic都要写上这些define么。。。还是只要第一个啊(感觉这个问题有点傻)。![](static/image/smiley/onion/question.gif)
关于SPI的那一段code能给我一些指导吗。。我感觉我就是按照datasheet里面写的。。为什么还是不行呢。- SSPSTAT = 0xC0;
- SSPCON1 = 0x20;
复制代码 这个前置我也是按照一样的啊 本帖最后由 WU93 于 25-7-2013 08:32 AM 编辑
|
|
|
|
|
|
|
|
发表于 25-7-2013 06:44 PM
|
显示全部楼层
WU93 发表于 25-7-2013 03:31 PM ![](static/image/common/back.gif)
谢谢大大的建议
可关于SPI的呢。。我现在要做些什么呢。。关于PIC 和 MRF之间的SPI互动。。我想先把它完 ...
就像我跟你讲的 , 那个stack, example基本上给完source code,连spi 都帮你设定好了。PIC 和 MRF之间的SPI互动基本上都已经完成。
你需要的是, 根据你自己的design,来modify那个source code.
比如说 example 用pic18f4620, spi1, 你用18f4622, spi2。 那你就直接换spi1-> spi2.
一些controller相关的configuration,即可。
|
|
|
|
|
|
|
|
![](static/image/common/ico_lz.png)
楼主 |
发表于 26-7-2013 01:14 PM
|
显示全部楼层
请问下这个hardware profile.c在哪里可以找到。。在系统文件里面么。。我什么都没找到啊![](static/image/smiley/onion/onion (25).gif)
还有将那些configure要写在pic上还是另外的文件呢。。。
还有我明天就开始放假了...谢谢大大这几天善意的帮忙。。。大概一个月后才能回来哈 本帖最后由 WU93 于 26-7-2013 06:55 AM 编辑
|
|
|
|
|
|
|
|
发表于 26-7-2013 02:59 PM
|
显示全部楼层
用MicroC + MiWi 会有困难吧。。 除非, MicroC 有提供MiWi stack。。。 |
|
|
|
|
|
|
|
发表于 29-7-2013 10:37 PM
|
显示全部楼层
WU93 发表于 26-7-2013 01:14 PM ![](static/image/common/back.gif)
请问下这个hardware profile.c在哪里可以找到。。在系统文件里面么。。我什么都没找到啊
还有将那 ...
放假不用做project? ![](static/image/smiley/default/sweat.gif)
|
|
|
|
|
|
|
|
![](static/image/common/ico_lz.png)
楼主 |
发表于 29-8-2013 03:38 PM
|
显示全部楼层
请问下这个hardware profile.c在哪里可以找到。。在系统文件里面么。。我什么都没找到啊
放假回来了。。。。 |
|
|
|
|
|
|
|
发表于 1-10-2013 09:55 PM
|
显示全部楼层
WU93 发表于 29-8-2013 03:38 PM ![](static/image/common/back.gif)
请问下这个hardware profile.c在哪里可以找到。。在系统文件里面么。。我什么都没找到啊
放假回来了。。 ...
在microchip miwi stack 里面.
你search *.c. 一定会看到。
做到怎么样了。。。。。最新的stack code看起来比较简洁。
|
|
|
|
|
|
|
| |
本周最热论坛帖子
|